Page 1 sur 1

[..] Vérifier si repertoire partagé

Posté : mar. 09 juin 2009 09:08
par jcaspar
Bonjour à tous !

Je voudrais vérifier si un répertoire est partagé pourriez vous svp
m'expliquer comment faire ? :roll:

merci d'avance pour vos idées :mrgreen:

Jean Marc

Re: [..] idée de base

Posté : mar. 09 juin 2009 09:29
par jcaspar
:!: Voilà une première idée ...que j'ai trouvée
il me manque juste la valeur de retour si le partage existe ? dans la doc je ne vois pas


Merci d'avance pour vos suggestions ... :lol: :lol:

Code : Tout sélectionner

$sShareName="backup$"
If   _Net_Share_ShareCheck (@ComputerName, $sShareName)=-1 Then
    msgbox(4092,"Partage inexistant",10)
    EndIf
 

Re: [..] Vérifier si repertoire partagé

Posté : mar. 09 juin 2009 10:01
par ani
faut juste rajouter en dessous du msgbox un else (Sinon)

Code : Tout sélectionner

if.....then
<condition>
else
<condition>
endif

Exemple de Code reprit de l'aide d'au3

Code : Tout sélectionner

; Vérifie si le partage existe
If _Net_Share_ShareCheck (@ComputerName, $sShareName) = -1 Then
    ; Creation d'un partage (ajout)
    _Net_Share_ShareAdd (@ComputerName, $sShareName, 0, "C:\", "AutoIt Share")
    If @error Then MsgBox (4096, "Information", "Share add error : " & @error)
    MemoWrite ("Partage ajouté")
Else
    MemoWrite ("Partage existant")
EndIf
Explication
If _Net_Share_ShareCheck (@ComputerName, $sShareName) = -1 Then
Si le partage ($sShareName) à comme valeur -1 (cette valeur -1 signifie que le partage n'existe pas) alors

_Net_Share_ShareAdd (@ComputerName, $sShareName, 0, "C:\", "AutoIt Share")
On ajoute un répertoire en partage
If @error Then MsgBox (4096, "Information", "Share add error : " & @error)
Si y a une erreur alors on affiche un message :)
MemoWrite ("Partage ajouté")
SI y a pas d'erreur on ecrit partage ajouté

Else < :arrow: Sinon
MemoWrite ("Partage existant") :arrow: on écrit partage existant ;)
EndIf < :arrow: Fin de condition


Niveau de la doc je ne suis pas encore arrivé dans cette partie :(

Re: [..] Vérifier si repertoire partagé

Posté : mar. 09 juin 2009 10:05
par TaPuZ
Salut.
Je n'ai pas la réponse, ni le temps de tester, mais si j'étais à ta place, je rajouterais une ligne dans le code pour afficher la valeur de retour à l'écran.
Et je testerais sur deux dossiers. Un que je sais partagé, et un autre que je sais non partagé. Ça pourrait donner une idée, non?

Re: [..] Vérifier si repertoire partagé

Posté : mar. 09 juin 2009 23:14
par jcaspar
B 8) onsoir et merci de vos réponses

Le code fonctionne mais normalement la valeur de retour -1 devrait indiquer
un dossier non partagé or c'est l'inverse .... :idea:

Code : Tout sélectionner

#Include <NetShare.au3>
 global $nom_partage="Backup$"

$sShareName="backup$"
If not  _Net_Share_ShareCheck (@ComputerName, $nom_partage)=-1 Then
  MsgBox(4096, "Dossier non partagé", $nom_partage, 10)
  
  Else
      Msgbox(4096,"Dossier partagé","Backup$ est bien partagé",10)
    EndIf

 

Re: [..] Vérifier si repertoire partagé

Posté : mar. 09 juin 2009 23:47
par Tlem
Hummmm, je crois bien qu'il va falloir faire un tutoriel sur la logique ...

Bon, si vous faite :

Code : Tout sélectionner

#Include <NetShare.au3>
MsgBox(4096, "Partagé ?", _Net_Share_ShareCheck (@ComputerName, "backup$"))
vous obtenez une valeur.
Chez moi c'est -1 car le partage backup$ n'existe pas.

Jetez un oeil sur ces exemples, il vous en dirons sûrement plus qu'une longue explication (je l'espère) :

Code : Tout sélectionner

#Include <NetShare.au3>
IF _Net_Share_ShareCheck (@ComputerName, "backup$") = -1 Then MsgBox(4096, "Partagé ?", "Partage innexistant")
; qui revient à faire dans mon cas :
If -1 = -1 Then MsgBox(4096, "Partagé ?", "Partage innexistant")
; Ou encore :
; Si MaValeurX = MaValeurY alors affiche le message.

; Autres exemples (lancez le script pour voir les résultats) :
MsgBox(4096, "", "Not -1 = " & Not -1)
MsgBox(4096, "", "Not 1 = " & Not 1)
MsgBox(4096, "", "Not 0 = " & Not 0)
MsgBox(4096, "", "Not toto = " & Not "toto")