IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBScript Discussion :

créer une cle dans la base de registre


Sujet :

VBScript

  1. #21
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 073
    Points
    12 073
    Billets dans le blog
    8
    Par défaut re
    bon ben voila c'est ca en enlevant et remettent le "/s" j'avais pas remis l'espace qui vient après

    on est presque bon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    Dim WshShell, adobread,CleRegistre ,fichierREG, NewFichier
    'On Error Resume Next
     Const Key = "HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths\"
     Set WshShell= CreateObject("WScript.Shell")
     CleRegistre = WshShell.RegRead(Key & "AcroRd32.exe\")
     adobread = Replace(CleRegistre , "AcroRd32.exe", "")
    fichierREG=WshShell.SpecialFolders("Desktop" ) &"\cle.reg" 'chemin du fichier reg 
    Set fso =CreateObject("Scripting.FileSystemObject")
    Set NewFichier = fso.CreateTextFile(FichierREG,TRUE)
    ' code du fichier reg 
    cle = "Windows Registry Editor Version 5.00" & vbcrlf
    cle =cle &"[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\pdftotext32.exe]" & vbcrlf
    cle =cle &"@=""" & replace(adobread,"\","\\") & "pdftotext32.exe"""
     ' ecriture dans le fichier 
    NewFichier.Write(cle) 
    NewFichier.close
    WScript.Sleep 500
    WshShell.Run "Regedit.exe /s " & fichierREG, 0, True 'inscription 
    fso.DeleteFile (fichierREG )
     
    Set fso = Nothing
    y a t-il un moyen de faire une chose du genre

    msgbox (le path du fichier lui même)
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  2. #22
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    Juillet 2009
    Messages
    2 415
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2 415
    Points : 5 806
    Points
    5 806
    Par défaut
    Si tu parles du fichier cle.reg ce sera du genre MsgBox fso.GetFile(fichierREG).Path bien sûr à mettre juste avant la suppression de celui-ci
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA) et Ne jamais typer variables et/ou fonctions en VBS.
    Vous pouvez consulter mes contributions
    Ne pas oublier de consulter les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

  3. #23
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 073
    Points
    12 073
    Billets dans le blog
    8
    Par défaut RE
    non je parle du VBS lui même qui est en train de s'exécuter

    une sorte de constante genre self path

    j'ai lu il y a un moment déjà un truc du genre mais je ne le trouve plus

    j'explique pourquoi

    ce vbs sera injecter dans le disque dur quelque part par l'installateur et comme créer un fichier reg dans la racine c est impossible visiblement chez moi en tout cas le chemin sera aléatoire selon le client
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  4. #24
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    Juillet 2009
    Messages
    2 415
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2 415
    Points : 5 806
    Points
    5 806
    Par défaut
    Oui, à partir de Seven, on a du mal à créer un fichier à la racine du lecteur C. Il faut donc le créer ailleurs par exemple dans le dossier temp de l'utilisateur.

    Ce ne serait pas MsgBox Wscript.ScriptFullName que tu cherches ?
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA) et Ne jamais typer variables et/ou fonctions en VBS.
    Vous pouvez consulter mes contributions
    Ne pas oublier de consulter les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

  5. #25
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 073
    Points
    12 073
    Billets dans le blog
    8
    Par défaut re
    re nikel l'autodidacte !!
    merci

    un dernier petit detail j'ai un message d'erreur sur le move du fichier en fin de script pourtant les cehemins sont bons

    erreur c'est permission refusé je ne vois pas pourquoi je le fait a la main et le dossier d'adobe accepte

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    Dim WshShell, adobread,CleRegistre ,fichierREG, NewFichier
    'On Error Resume Next
     Const Key = "HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths\"
     Set WshShell= CreateObject("WScript.Shell")
     CleRegistre = WshShell.RegRead(Key & "AcroRd32.exe\")
     adobread = Replace(CleRegistre , "AcroRd32.exe", "")
    fichierREG=WshShell.SpecialFolders("Desktop" ) &"\cle.reg" 'chemin du fichier reg 
    Set fso =CreateObject("Scripting.FileSystemObject")
    Set NewFichier = fso.CreateTextFile(FichierREG,TRUE)
    ' code du fichier reg 
    cle = "Windows Registry Editor Version 5.00" & vbcrlf
    cle =cle &"[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\pdftotext32.exe]" & vbcrlf
    cle =cle &"@=""" & replace(adobread,"\","\\") & "pdftotext32.exe"""
     ' ecriture dans le fichier 
    NewFichier.Write(cle) 
    NewFichier.close
    WScript.Sleep 500
    WshShell.Run "Regedit.exe /s " & fichierREG, 0, True 'inscription 
    fso.DeleteFile (fichierREG )
    chemin=replace(Wscript.ScriptFullName,"regexe.vbs","pdftotext32.exe")
    chemin2=adobread & "pdftotext32.exe"
    msgbox chemin& vbcrlf &  chemin2
     'fso.MoveFile chemin,adobread & "pdftotext32.exe"
     
    Set fso = Nothing
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  6. #26
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    Juillet 2009
    Messages
    2 415
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2 415
    Points : 5 806
    Points
    5 806
    Par défaut
    J'ai modifié un petit peu le script en espérant que cela marche.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    Option Explicit 
     
    Dim fso, cle, chemin, chemin2
    Dim WshShell, adobread,CleRegistre ,fichierREG, NewFichier
    Const Key = "HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths\"
     
         Set WshShell= CreateObject("WScript.Shell")
         CleRegistre = WshShell.RegRead(Key & "AcroRd32.exe\")
         adobread = Replace(CleRegistre , "AcroRd32.exe", "pdftotext32.exe")
         fichierREG=WshShell.SpecialFolders("Desktop") &"\cle.reg" 'chemin du fichier reg 
         Set fso =CreateObject("Scripting.FileSystemObject")
         Set NewFichier = fso.CreateTextFile(FichierREG,TRUE)
        ' code du fichier reg 
         cle = "Windows Registry Editor Version 5.00" & vbcrlf
         cle =cle &"[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\pdftotext32.exe]" & vbcrlf
         cle =cle &"@=""" & replace(adobread,"\","\\") '& "pdftotext32.exe"""
         ' ecriture dans le fichier 
         NewFichier.Write(cle) 
         NewFichier.close
         WScript.Sleep 500
         WshShell.Run "Regedit.exe /s " & fichierREG, 0, True 'inscription 
         fso.DeleteFile (fichierREG )
         chemin=replace(Wscript.ScriptFullName,Wscript.ScriptName,"pdftotext32.exe")
         chemin2=adobread '& "pdftotext32.exe"
         msgbox chemin & vbcrlf &  chemin2
         fso.MoveFile chemin, adobread '& "pdftotext32.exe"
        ' Ouvre le dossier cible en sélectionnant le fichier si copié
         WshShell.Run "Explorer.exe /select," & adobread 
         Set fso = Nothing
    Si tu as toujours le message "Accès refusé", il faudrait passer par l'utilitaire CACLS si XP ou ICACLS si Vista ou plus pour modifier les droits d'accès au répertoire d'adobe.
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA) et Ne jamais typer variables et/ou fonctions en VBS.
    Vous pouvez consulter mes contributions
    Ne pas oublier de consulter les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

  7. #27
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 073
    Points
    12 073
    Billets dans le blog
    8
    Par défaut re
    re
    et non toujours refusé
    Nom : Capture.JPG
Affichages : 234
Taille : 27,0 Ko

    ca rend fou ca !!!
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  8. #28
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    Juillet 2009
    Messages
    2 415
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2 415
    Points : 5 806
    Points
    5 806
    Par défaut
    Et si tu utilises fso.CopyFile chemin, adobread, True puis tu supprimes le fichier source ?

    La suppression ne doit être faite que si le fichier a bien été copié. Par exemple :

    If fso.FileExists(adobread) Then fso.DeleteFile chemin, True.
    Si toutes ces tentatives n'aboutissent pas, il faut ajouter dans le script une fonction(ou procedure Sub) qui modifie les ACLs comme mentionné dans mon dernier post.
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA) et Ne jamais typer variables et/ou fonctions en VBS.
    Vous pouvez consulter mes contributions
    Ne pas oublier de consulter les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

  9. #29
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 073
    Points
    12 073
    Billets dans le blog
    8
    Par défaut re
    re
    j"'avais essayé deja copyfile mais c'est pareil
    apres metons nous bien d'accords copy ou move c'est bien chemin complet source,chemin complet destination: ca inclu donc le nom de l'exe dans les chemins non?

    adit et en plus ca s'empire le reg n'est meme plus supprimé maintenant le fso deconne a plein tube
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  10. #30
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    Juillet 2009
    Messages
    2 415
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2 415
    Points : 5 806
    Points
    5 806
    Par défaut
    Dans ces 2 premiers cas Object est un objet File ou Folder :
    Object.Move Destination : La destination peut contenir le nom du fichier(ou dossier) à déplacer, un nouveau nom peut être donné au fichier(dossier) de destination.
    Object.Copy Destination, OverWrite : Même remarque que pour Move, OverWrite étant évaluée à True ou False

    Dans ce qui suit, Object est un objet FileSystemObject :
    Object.MoveFile Source, Destination : Source doit contenir le nom du fichier(ou dossier si MoveFolder) à déplacer, Destination peut être le répertoire destination terminé par le caractère \, comme ça peut être le nom du fichier(dossier) à déplacer ou un nouveau nom.

    Object.CopyFile Source, Destination, OverWrite : Idem que pour MoveFile(pour les dossiers CopyFolder)

    En conséquence, on peut mettre le chemin complet de la destination comme on peut l'omettre tout en ajoutant le slash à la fin du nom du dossier qui recevra le fichier.

    Pour la suppression du fichier cle.reg, essaie avec : fso.DeleteFile fso.GetFile(fichierREG).
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA) et Ne jamais typer variables et/ou fonctions en VBS.
    Vous pouvez consulter mes contributions
    Ne pas oublier de consulter les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

  11. #31
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 073
    Points
    12 073
    Billets dans le blog
    8
    Par défaut re
    re
    Bonjour l autodidacte

    ben rien n'y fait je comprends vraiment pas avant ca le fesait maintenant plus ???????!!!!!!!

    je l'ai essayé dans un vbs simple il marche vraiment plus !!!!!


    peut etre en ai je trop abusé pendant les essais ????? et windows me bloque ?????
    je sais pas
    de toute facon quoi que je fasse j'arrive toujours a un moment ou il faut shunter couper ,etc.... ca me gonfle un petit peu j'avouerais

    si windows veut pas ben tant pis on laisse tomber

    icals et cals j'y comprends rien c'est pas suffisament clair pour moi j'en ai pas compris une miette dans le lien que tu m'a donné

    alors maintenant le fso qui marche plus c'est la goutte


    avec windows 7 ca devient difficile de faire des choses simple

    edit:
    bon la partie delete toute seule dans un vbs fonctionne donc c'est ce qui se passe avant qui bloque
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  12. #32
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    Juillet 2009
    Messages
    2 415
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2 415
    Points : 5 806
    Points
    5 806
    Par défaut
    Moi je n'abandonne pas si facilement.

    Pour la suppression du fichier cle.reg, il est possible que ce soit à cause d'une temporisation qui manque. Je l'ai ajoutée avant de procéder à la suppression.

    pour le reste, j'ai ajouté une Sub qui donne les droits Admin sur le dossier d'Adobe en espérant que cela donne quelque chose de bon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    Option Explicit 
     
      Dim fso, cle, chemin, chemin2, DestDir
      Dim WshShell, adobread,CleRegistre ,fichierREG, NewFichier
      Const Key = "HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths\"
     
         Set WshShell= CreateObject("WScript.Shell")
         CleRegistre = WshShell.RegRead(Key & "AcroRd32.exe\")
         DestDir = Replace(CleRegistre , "AcroRd32.exe", "")
         adobread = Replace(CleRegistre , "AcroRd32.exe", "pdftotext32.exe")
         fichierREG=WshShell.SpecialFolders("Desktop") &"\Cle.reg" 'chemin du fichier reg 
         Set fso =CreateObject("Scripting.FileSystemObject")
         Set NewFichier = fso.CreateTextFile(FichierREG, True)
        ' code du fichier reg 
         cle = "Windows Registry Editor Version 5.00" & vbcrlf
         cle =cle &"[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\pdftotext32.exe]" & vbcrlf
         cle =cle &"@=" & DblQuote(Replace(adobread,"\","\\")) '& "pdftotext32.exe"""
         ' ecriture dans le fichier 
         NewFichier.Write(cle) 
         NewFichier.close
         WScript.Sleep 1500
         WshShell.Run "Regedit.exe /s " & DblQuote(fichierREG), 0, True 'inscription 
         WScript.Sleep 1500 
         fso.DeleteFile fso.GetFile(fichierREG).Path
         chemin=Replace(Wscript.ScriptFullName,Wscript.ScriptName,"pdftotext32.exe")
         chemin2=adobread 
        ' msgbox chemin & vbcrlf &  chemin2
         UnlockFolder DestDir
         fso.CopyFile chemin, DestDir, True 
         Wscript.Sleep 1000
         If fso.FileExists(adobread) Then fso.DeleteFile chemin, True
        ' Ouvre le dossier cible en sélectionnant le fichier si copié
         WshShell.Run "Explorer.exe /select," & adobread 
         Wscript.Sleep 1500
         'Pour des tests successifs j'ai horreur de déplacer mano le fichier vers le bureau, j'use alors de ce code :
         If MsgBox("Voulez-vous annuler le déplacement ?",vbYesNo,"Annulation du déplacement") = vbYes Then _
              fso.MoveFile adobread, chemin
         Set fso = Nothing
    '===============================
    Sub UnlockFolder(strFolder) 
        ' Merci à hackoofr pour cette procédure à laquelle j'ai ajouté un 
        ' paramètre pour pouvoir l'utiliser sur d'autres dossiers
         Dim WshNetwork, Com, Com1, UsrName, Ret
         Set WshNetwork = CreateObject("WScript.Network")
         UsrName = WshNetwork.UserName
         'Set objShell = CreateObject("Wscript.Shell")
         'Set fso = CreateObject("Scripting.FileSystemObject")
         If fso.FolderExists(strFolder) Then
             Com1 = "%COMSPEC% /c attrib -s -h -r " & strFolder
             WshShell.Run Com1, 0, True
             Com = "%COMSPEC% /c Echo o| cacls " & strFolder & " /g " & DblQuote(UsrName) & ":f Administrateurs:f"
             Ret = WshShell.Run(Com,0,True)
             'msgbox ret
             If Ret <> 0 Then
                MsgBox "Opération de déblocage non réussie", vbCritical, "Débloquer un dossier"
             End If
         End if 
    End Sub
    '=======================
    Function DblQuote(strIn)
       DblQuote = Chr(34) & strIn & Chr(34)
    End Function
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA) et Ne jamais typer variables et/ou fonctions en VBS.
    Vous pouvez consulter mes contributions
    Ne pas oublier de consulter les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

  13. #33
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 073
    Points
    12 073
    Billets dans le blog
    8
    Par défaut re
    ben désolé mais cela s'empire
    maintenant ca strictement plus rien
    merci pour le temps que tu passe sur mon petit projet mais je crois que plus on fait compliqué moins ca fonctionne

    je comprends toujours pas ce qui se passe chez moi au debut la clé etait inscrite pourtant sans tout ce bazard

    je sent un formatage dans l'air la!!!!!
    depuis que je joue avec ce VBS j'ai constaté un comportement de mon PC bizarre

    lenteur de l'explorateur windows c'est affolant quand je selectionne le bureau

    plantage de macro dans excel pour raison de memoire insuffisante j'ai 16 giga en corsere

    etc...
    pourtant ca ne peut pas etre un virus le vbs c'est nous qui l'avons ecrit

    vraiment bizare
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  14. #34
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    Juillet 2009
    Messages
    2 415
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2 415
    Points : 5 806
    Points
    5 806
    Par défaut
    Pourtant le script est tout simple.

    Peut-être une restauration à une date d'avant l'utilisation de ce VBS suffirait , ou bien un test sur une autre machine avec le même OS.
    Ne pas oublier le tag si satisfait.
    Voter pour toute réponse satisfaisante avec pour encourager les intervenants.
    Balises CODE indispensables. Regardez ICI
    Toujours utiliser la clause Option Explicit(VBx, VBS ou VBA) et Ne jamais typer variables et/ou fonctions en VBS.
    Vous pouvez consulter mes contributions
    Ne pas oublier de consulter les différentes FAQs et les Cours/Tutoriels VB6/VBScript
    Ne pas oublier L'Aide VBScript et MSDN VB6 Fr

  15. #35
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 073
    Points
    12 073
    Billets dans le blog
    8
    Par défaut re
    j'ai testé sur mes deux pc (fixe /portable) tout deux W7 et adobe reader 9.04
    et sur les deux ca fait plus rien du tout
    je suis completement perdu car j'ai aucun message d'erreur vraiment rien du tout
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  16. #36
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 073
    Points
    12 073
    Billets dans le blog
    8
    Par défaut re
    bon a y regarder de plus pret tu t'es melagé les pinceaux avec les nom de fichier
    regarde bien
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  17. #37
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut


    Patrick,

    cela me rappelle récemment ton problème pour activer la référence d'UIAutomationClient …
    N'aurais-tu pas loin un pote ne bidouillant pas son PC afin de pouvoir y procéder des tests ?


    Salutations l'Autodidacte !
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  18. #38
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 073
    Points
    12 073
    Billets dans le blog
    8
    Par défaut re
    re
    Marc
    non j'ai compris ca n'a rien a voir avec mon PC
    en fait le dernier exemple de l'autodidacte est truffée d'erreur
    ce qui l'a amené a ses erreur c'est sa fonction doublequotte entre autre

    le texte de la cle n'etait meme pas créé les chemins n'etait pas bon

    je suis reparti sur une base saine
    voila le depart
    la clé est bien créée et elle est bien installée

    celui la fonction et sans sleep
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    chemin = Replace(Wscript.ScriptFullName, Wscript.ScriptName, "")
    Const Key = "HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths\"
    Set WshShell = CreateObject("WScript.Shell")
    CleRegistre = WshShell.RegRead(Key & "AcroRd32.exe\")
    fichierREG = WshShell.SpecialFolders("Desktop") & "\Cle.reg"    'chemin du fichier reg
    adobread = Replace(CleRegistre, "AcroRd32.exe", "pdftotext32.exe")
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set NewFichier = fso.CreateTextFile(fichierREG, True)
    ' code du fichier reg
    cle = "Windows Registry Editor Version 5.00" & vbCrLf
    cle = cle & "[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\pdftotext32.exe]" & vbCrLf
    cle = cle & "@=""" & Replace(adobread, "\", "\\") & """"
    ' ecriture dans le fichier
    NewFichier.Write (cle)
    NewFichier.Close
    WshShell.Run "Regedit.exe /s " & fichierREG, 0, True    'inscription
    je continue
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  19. #39
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 073
    Points
    12 073
    Billets dans le blog
    8
    Par défaut re
    alors j'ai deux questions ?

    1 pourquoi le message s'en va tout seul normalement il devrait attendre que je clique ok non??

    2 pourquoi apres l'execution de la cle je n'ai pas le message

    voila c'est a cet endroit que ca bloque ne me demandez pas pourquoi?,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    chemin=Replace(Wscript.ScriptFullName,Wscript.ScriptName,"")
    Const Key = "HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths\"
    Set WshShell= CreateObject("WScript.Shell")
     CleRegistre = WshShell.RegRead(Key & "AcroRd32.exe\")
      fichierREG=WshShell.SpecialFolders("Desktop") &"\Cle.reg" 'chemin du fichier reg 
     adobread = Replace(CleRegistre , "AcroRd32.exe", "pdftotext32.exe")
     
    Set fso =CreateObject("Scripting.FileSystemObject")
         Set NewFichier = fso.CreateTextFile(FichierREG, True)
        ' code du fichier reg 
         cle = "Windows Registry Editor Version 5.00" & vbcrlf
         cle =cle &"[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\pdftotext32.exe]" & vbcrlf
         cle =cle &"@=""" & Replace(adobread,"\","\\") &""""
         ' ecriture dans le fichier 
         NewFichier.Write(cle) 
         NewFichier.close
    msgbox  fichierREG ' ici j'ai le message 
    WshShell.Run "Regedit.exe /s " & fichierREG,0, True 'inscription 
      'fso.DeleteFile fso.GetFile(fichierREG).Path  
    msgbox  fichierREG ' ici je n'ai pas le message
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  20. #40
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 073
    Points
    12 073
    Billets dans le blog
    8
    Par défaut re vous allez pas le croire
    re
    vous allez pas le croire

    depuis hiers je me suis dit quand meme y en a marre de travailler comme les vieux lache un peu le bloknot windows et sert toit au moins de notpad ++

    et ben voila hiers j'ai intégré le vbs dans les language il prend pour cela le wscript exe pour le bouton execution

    je te le donne dans le mille il me shunt la possibilité de m'en servir ailleur

    j'ai donc supprimé le language vbs ajouté et poff!!!!! j'ai mes message et ma clé est bien supprimée

    si ca peut servir a ceux qui utilise le notpad ++ y a pas de quoi
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

Discussions similaires

  1. Enregistrer une police dans la base de registre
    Par koKoTis dans le forum Windows XP
    Réponses: 19
    Dernier message: 31/08/2006, 09h54
  2. [IE] Modifier une option dans la base de registre
    Par Oberown dans le forum Windows XP
    Réponses: 2
    Dernier message: 16/06/2006, 09h53
  3. Chercher une valeur dans la base de registre
    Par Sallie dans le forum MFC
    Réponses: 9
    Dernier message: 19/05/2006, 13h57
  4. Réponses: 2
    Dernier message: 15/03/2006, 11h13
  5. Lire une donnée dans la base de registre
    Par K.othmane dans le forum Langage
    Réponses: 1
    Dernier message: 06/01/2006, 12h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo