begin process at 2010 02 10 03:39:44
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C#

 > 

Archives

 > 

Fichier / Disque

 > 

Comment monter et demonter un volume(lecteur )


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Comment monter et demonter un volume(lecteur )

jeudi 4 mai 2006 à 00:26:14 | Comment monter et demonter un volume(lecteur )

petermadio



Salut à tous!
Il s'agit de créer un volume(disque) virtuel , de le démonter c'est à dire de le déconnecter à tout moment pour une utilisation sécuisée.Mais j'ai une idée pour la création mais jusque là comment le démonter .
Quelqu'un a-t-il une idée de comment monter et demonter.Même pour la création je suis partent.Toute code est  acceptable
Merci !

jeudi 4 mai 2006 à 11:03:08 | Re : Comment monter et demonter un volume(lecteur )

sebseb42

je ne puis hélas pas t'aider, mais je suis aussi vraiment tres interessé par la question... enfin surtout par les réponses :)

dimanche 14 mai 2006 à 16:38:24 | Re : Comment monter et demonter un volume(lecteur )

coq

Administrateur CodeS-SourceS
Salut,

La classe WMI Win32_Volume possède entre autres les méthodes Mount et Dismount.

Sinon directement côté API il y a la section Volume Management.


/*
coq
MVP Visual C#
*/
mercredi 17 mai 2006 à 18:24:57 | Re : Comment monter et demonter un volume(lecteur )

petermadio



Salut ,
Merci coq.J'ai essayé avec ce que tu m'as montré une application mais ça ne fonctionne pas.Je suis totalement perdu,comme je suis aussi une débutant, serait-il possible que tu me donnes un exemple qui marche .
Merci !


Voici le code que j'ai testé:

using System;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using System.Text;
using System.IO;
using System.ComponentModel;
using System.Management;


namespace Exo16
{
 class MainClass
 {
  [DllImport("kernel32", CharSet=CharSet.Auto, BestFitMapping=false, SetLastError=true)]

    private static extern bool GetVolumeNameForVolumeMountPoint(String volumeName, StringBuilder uniqueVolumeName, int uniqueNameBufferCapacity); 

    // unique volume name must be "\\?\Volume{GUID}\"

    [DllImport("kernel32", CharSet=CharSet.Auto, BestFitMapping=false, SetLastError=true)]

    private static extern bool SetVolumeMountPoint(String mountPoint, String uniqueVolumeName); 

    [DllImport("kernel32", CharSet=CharSet.Auto, BestFitMapping=false, SetLastError=true)]

    private static extern bool DeleteVolumeMountPoint(String mountPoint);
    private static void Usage()

    {        Console.WriteLine();

        Console.WriteLine("mount <volume name> <mount point>");

        Console.WriteLine("mount -u <mount point>");

    }

    private static void Mount(string volumeName, string mountPoint)

    {

        Console.WriteLine("Mounting volume {0} at {1}", volumeName, mountPoint);

        bool r;
       

        StringBuilder sb = new StringBuilder(1024);

        r = GetVolumeNameForVolumeMountPoint(volumeName, sb, sb.Capacity);

        if (!r)

            throw new Win32Exception(Marshal.GetLastWin32Error());

 

        String uniqueName = sb.ToString();

        r = SetVolumeMountPoint(mountPoint, uniqueName);

        if (!r)

            throw new Win32Exception(Marshal.GetLastWin32Error());

    }

 

    private static void Unmount(string mountPoint)

    {

        Console.WriteLine("Unmounting the volume at {0}", mountPoint);

 

        bool r = DeleteVolumeMountPoint(mountPoint);

        if (!r)

            throw new Win32Exception(Marshal.GetLastWin32Error());

    }

 

    private static void Main(string[] args)

    {
        Console.WriteLine("Managed Unix-style mount program");
        if (args.Length != 2) {
            Usage();
            return;
        }
        bool unmount = false;
        String volumeName = null;        String mountPoint = args[1];    

        if (args[0].Equals("-u") || args[0].Equals("/u"))

            unmount = true;

        else {
            volumeName = args[0];
            if (volumeName[volumeName.Length - 1] != Path.DirectorySeparatorChar)                volumeName += Path.DirectorySeparatorChar;

        }

        if (mountPoint[mountPoint.Length - 1] != Path.DirectorySeparatorChar)

            mountPoint += Path.DirectorySeparatorChar; 

        if (unmount)
            Unmount(mountPoint);
        else
            Mount(volumeName, mountPoint);
   } 
 }
}



Cette discussion est classée dans : lecteur, volume, monter, demonter, démonter


Répondre à ce message

Sujets en rapport avec ce message

Monter un lecteur réseau [ par Bikarfioul ] Salut !Je cherche a monter un lecteur réseau afin de récupérer le contenu d'un fichier texte.Je trouve actuellement sur les différents Post ceci : Sys Lecteur Reseau et Service [ par Equinox84 ] Bonjour,J'ai un gros problème au niveau de mon service. J'ai une méthode qui me permet de créer un lecteur réseau mais ca ne marche pas depuis mon ser monter une datagridview [ par djbabou ] Salut tout le monde !!! Ma question peut paraître extremement simple mais je tiens à la poser!J'aimerais savoir comment est-ce-qu'on peut monter une programme lecteur Video ne pas quitter [ par vtvdung ] Salut,Je veux écrire une fonction pour lire un fichier AVI grâce au DirectXVideo myVideo=new Video("C:\\test.avi");...myVideo.Owner=panel1;myVideo.Pla Connaitre volume sonore arrivant dans les enceintes [ par manytwo ] Bonjour,Je voudrais savoir comment connaitre le volume sonore arrivant dans les enceintes?Le volume de l' objet audio ne change pas, mais le son est p connexion port série avec C# [ par kabola ] Je conçois une application en C# qui doit communiquer avec un lecteur RFID via port série (en fait c'est un port USB avec un driver qui me donne accès Lecteur video plein ecran priorité haute [ par benoitns ] Bonjour,Je suis en train de developper une appli full screen avec un composant directx.audiovideoplayback.Je voudrai que mon application soit maitre s Comment modifier le volume de systeme ? [ par radar1 ] Salut les amisJe demande si qlq connait comment modifier le volume de systeme et non pas le volume wav ou autrecad l' API systeme utiliséMerci d'avanc Process mettre un lecteur media en pleine ecran [ par gabs77 ] Bonjour,J'utilise Process pour lancer un exécutable multimédia dans mon application.dont voici le code en dessous :Process p = <font volume micro [ par magyver ] salut les amis .je suis debutant en c#.et je ne sait pas comment je peux faire pour  augmenter et deminuer le volume du micro a l'aide d'un trakbar et


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,468 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales