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

Scripts/Batch Discussion :

Appel de ma méthode FileHash de l'objet WindowsInstaller.Installer


Sujet :

Scripts/Batch

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2004
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 110
    Par défaut Appel de ma méthode FileHash de l'objet WindowsInstaller.Installer
    Bonjour à tous,

    J'ai un script vbs que je voudrais convertir en Powershell.

    Je n'arrive pas à trouver le code correspondant en PowerShell:
    Code vb : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Dim Installer : Set Installer = CreateObject("WindowsInstaller.Installer")
    Dim Record : Set Record = Installer.FileHash(FilePath, 0)
    Dim FileHash : FileHash = Record.StringData(1) & vbTab & Record.StringData(2) & vbTab & Record.StringData(3) & vbTab & Record.StringData(4)

    La variable FilePath est initialisée avec le nom du fichier(avec le chemin) à traiter.

    Est-ce que quelqu'un sait comment invoquer la méthode FileHash de l'objet WindowsInstaller.Installer et récupérer les 4 enregistrements ?

    Merci d'avance.

  2. #2
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    Hi,

    Code powershell : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $filePath = "c:\test\file.txt"
    $installer = New-Object -ComObject WindowsInstaller.Installer
    $record = $installer.FileHash($filePath, 0)
    $fileHash = $record.StringData(1) + "`t"+ $record.StringData(2) + "`t"+ $record.StringData(3) + "`t"+ $record.StringData(4)

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2004
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 110
    Par défaut
    Hi,

    Sorry but I got an error :
    I changed $filePath = "G:\DIVERS\MIG_ORCA\MIG_ORCA.docx".

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Method invocation failed because [System.__ComObject] does not contain a method named 'FileHash'.
    At G:\DIVERS\MIG_ORCA\test.ps1:3 char:1
    + $record = $installer.FileHash($filePath, 0)
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
        + FullyQualifiedErrorId : MethodNotFound
     
    You cannot call a method on a null-valued expression.
    At G:\DIVERS\MIG_ORCA\test.ps1:4 char:1
    + $fileHash = $record.StringData(1) + "`t"+ $record.StringData(2) + "`t"+ $record. ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
        + FullyQualifiedErrorId : InvokeMethodOnNull

  4. #4
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    C'est étrange.
    Le code fonctionne sur mon Windows 10, quelle est ton OS ?

  5. #5
    Membre confirmé
    Inscrit en
    Octobre 2004
    Messages
    110
    Détails du profil
    Informations forums :
    Inscription : Octobre 2004
    Messages : 110
    Par défaut
    Ce script est sur un Windows 2008 r2.

  6. #6
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 218
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 218
    Par défaut
    Sur mon poste, si je fait un msiexec j'ai cette version de Windows Installer : Windows ® Installer version 5.0.19041.1


    Voici ce qui est dit sur le site de Microsoft pour méthode FileHash de Windows Installer (section Configuration requise) : https://docs.microsoft.com/fr-fr/win...h#requirements
    Windows Installer 5.0 sur Windows Server 2012, Windows 8, Windows Server 2008 R2 ou Windows 7. Windows Installer 4.0 ou Windows Installer 4.5 sur Windows Server 2008 ou Windows Vista. programme d’installation Windows sur Windows Server 2003 ou Windows XP

    Merci de vérifier que tu as le prérequis.

Discussions similaires

  1. Réponses: 3
    Dernier message: 03/12/2010, 18h29
  2. Appeler des méthodes qui renvoient des objets
    Par ALeX850 dans le forum Langage
    Réponses: 4
    Dernier message: 27/03/2010, 00h49
  3. [JMX] Appel d'une méthode distante avec retour d'objet complexe
    Par hugo123 dans le forum API standards et tierces
    Réponses: 2
    Dernier message: 24/07/2009, 12h18
  4. Réponses: 7
    Dernier message: 30/08/2007, 14h17
  5. [POO] appel d'une méthode d'un autre fichier, le tout objet
    Par aaaaaaaa dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 13/07/2007, 18h43

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