Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : dossier partage [ Archives / Fichier / Disque ] (Titi035)

jeudi 23 mars 2006 à 16:44:55 | dossier partage

Titi035

Salut,

Est-ce qu'il y a une solution simple pour créer un répertoire partagé en Csharp?

Pour le moment, je fais ceci, et mon dossier est bien créé, mais je ne trouve d'options pour le metre en partage..

string sDirectory = "C:\\Test";

if (!Directory.Exists(sDirectory ))

{
Directory.CreateDirectory(sDirectory );
}


Titi035. 

jeudi 23 mars 2006 à 23:51:00 | Re : dossier partage

TheSaib

Administrateur CodeS-SourceS
Réponse acceptée !


[DllImport("Netapi32.dll")]

private static extern uint NetShareAdd(

[MarshalAs(UnmanagedType.LPWStr)] string strServer,

Int32 dwLevel,

ref SHARE_INFO_502 buf,

out uint parm_err

);

[DllImport("netapi32.dll", SetLastError=true)]

static extern uint NetShareDel(

[MarshalAs(UnmanagedType.LPWStr)] string strServer,

[MarshalAs(UnmanagedType.LPWStr)] string strNetName,

Int32 reserved //must be 0

);

[DllImport("Netapi32.dll", CharSet=CharSet.Unicode)]

private static extern int NetShareEnum(

StringBuilder ServerName,

int level,

ref IntPtr bufPtr,

uint prefmaxlen,

ref int entriesread,

ref int totalentries,

ref int resume_handle

);

[DllImport("Netapi32.dll", SetLastError=true)]

static extern int NetApiBufferFree(IntPtr Buffer);

private enum NetError : uint

{

NERR_Success = 0,

NERR_BASE = 2100,

NERR_UnknownDevDir = (NERR_BASE + 16),

NERR_DuplicateShare = (NERR_BASE + 18),

NERR_BufTooSmall = (NERR_BASE + 23),

}

private enum SHARE_TYPE : uint

{

STYPE_DISKTREE = 0,

STYPE_PRINTQ = 1,

STYPE_DEVICE = 2,

STYPE_IPC = 3,

STYPE_SPECIAL = 0x80000000,

}

[StructLayout(LayoutKind.Sequential)]

private struct SHARE_INFO_502

{

[MarshalAs(UnmanagedType.LPWStr)] public string shi502_netname;

public SHARE_TYPE shi502_type;

[MarshalAs(UnmanagedType.LPWStr)] public string shi502_remark;

public Int32 shi502_permissions;

public Int32 shi502_max_uses;

public Int32 shi502_current_uses;

[MarshalAs(UnmanagedType.LPWStr)] public string shi502_path;

[MarshalAs(UnmanagedType.LPWStr)] public string shi502_passwd;

public Int32 shi502_reserved;

public IntPtr shi502_security_descriptor;

}




public
static bool ShareFolder(string path, string name, string description)

{

SHARE_INFO_502 info = new SHARE_INFO_502();

info.shi502_netname = name; //nom de partage

info.shi502_type = SHARE_TYPE.STYPE_DISKTREE; //Disque dur

info.shi502_remark = description; //description du partage

info.shi502_permissions = 0; //pas de permissions spécifiques

info.shi502_max_uses = -1; //utilisateurs illimités

info.shi502_current_uses = 0;

info.shi502_path = path; //chemin du partage

info.shi502_passwd = null; //Pas de pwd

info.shi502_reserved = 0; //reserved sys

info.shi502_security_descriptor = IntPtr.Zero;

uint error = 0;

uint result = NetShareAdd(System.Net.Dns.GetHostName(), 502, ref info, out error);

if (result == (uint)NetError.NERR_Success)

return true;

return false;

}



::|The S@ib|::
MVP C#.NET

jeudi 23 mars 2006 à 23:52:47 | Re : dossier partage

coq

Administrateur CodeS-SourceS
Salut,

Simple je ne pense pas, à mon avis tu vas devoir passer par la méthode NetShareAdd de l'API Win32.



/*
coq
MVP Visual C#
*/

jeudi 23 mars 2006 à 23:53:22 | Re : dossier partage

coq

Administrateur CodeS-SourceS
Ca, c'est fait...



/*
coq
MVP Visual C#
*/

vendredi 24 mars 2006 à 17:58:09 | Re : dossier partage

Titi035

Salut,

Merci les gars.. c'est pas très simple tout ça...

Titi035



Cette discussion est classé dans : dossier, partage, directory, sdirectory


Répondre à ce message

Sujets en rapport avec ce message

Pb avec mon programme - help... [ par adrien78 ] Voici les sources de mon programme il bug :// project created on 09/11/2002 at 10:51// By Adrien HADJ SALAH// http://www.informatick.com// Pour me rem trouvé le dossier mes documents [ par afra59 ] est ce que qq1 sait comment allez cherché le chemin du dossier mes documents ? All fichier [ par JCpp ] Je cherche une source qui enregistre tout les fichiers du disque dure dans un fichier.J'en ai réalisé un, mai il prend trop trop ligne. Avec Directory REcherche d'un dossier [ par caj ] Bonjour tout le monde,Je suis à la recherche d'une methode en c# pour pouvoir trouver le chemin d'accés pour un repertoire en particulier (recherche s Fichiers en partage [ par SebSharp ] Salut à tous, J'aimerais savoir s'il y a moyen de partagé une classe( un simple fichier .cs) dans plusieurs projets sans que celle-ci soit recopié dan Lister des fichiers et dossier dans une listbox avec visual c#!! [ par meihua ] Voilà en fait je voudrais savoir comment on fait pour lister des fichiers et des sous repertoires dans une listbox de plus, ces fichiers et sous reper pb verif répertoires [ par jdaviaud ] Là je fais face à un pb dont je comprends pas la logique :Je récupère le nom du répertoire d'où s'execute mon prog :RepActuel = Directory.GetCurrentDi Listing conditionnel de fichier dans un dossier [ par Ziad270 ] Salut,Je cherche une méthode efficace pour lister des fichiers répondant à deux critères sur un dossier (Critère 1 : Extention - Ext, Critère 2: Creat Accéder à un partage administratif en C# [ par azgar ] Salut, Je souhaite accéder à un partage administartif d'un ordinateur sur le réso.Mais je ne trouve rien pour lui spécifier le mot de pass ... et en g affichage d'images dans une ListView [ par louve_alpha ] Bonjour,Je suis entrain de développer une petite application en dotnet dont le principe général est de choisir un album photo dans un explorer, de l'a


Nos sponsors

Sondage...

CalendriCode

Novembre 2008
LMMJVSD
     12
3456789
10111213141516
17181920212223
24252627282930

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, 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
Temps d'éxécution de la page : 0,172 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.