Enumeration avec GetProcesses: Erreur MainModule Win32Exception

Résolu
Duke49 Messages postés 552 Date d'inscription jeudi 12 octobre 2006 Statut Non membre Dernière intervention 24 janvier 2023 - 31 janv. 2011 à 00:45
Duke49 Messages postés 552 Date d'inscription jeudi 12 octobre 2006 Statut Non membre Dernière intervention 24 janvier 2023 - 31 janv. 2011 à 12:21
Salut à tous !

J'ai une fonction qui énumère les process pour en rechercher un seul.
Renvoi son chemin lorsqu'il est trouvé.

Mon problème arrive lorsque j'arrive toujours sur le même processus et le debugger m'affiche: "Un processus 32 bits ne peut pas accéder aux modules d'un processus 64 bits."

VB10 n'accepte pas le: "MainModule.FileName".

Pourquoi ?
Que faire ?

Ma fonction:
    Shared Function GetProcessFolder(ByVal ProcessusName As String) As String
        Dim a() As System.Diagnostics.Process
        Dim i As Integer

        a = Process.GetProcesses()
        For i = 0 To (a.Length - 1)
            If a(i).ProcessName = ProcessusName Then
                Return a(i).MainModule.FileName
                Exit For
            End If
        Next
        a = Nothing
        Application.DoEvents()
        Return Nothing
    End Function

2 réponses

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
31 janv. 2011 à 08:12
Salut,

Peut-etre la solution est la
http://www.codeproject.com/Questions/93297/Crash-in-Process-MainModule.aspx
Compiler avec ANYCPU

Bon dev
1
Duke49 Messages postés 552 Date d'inscription jeudi 12 octobre 2006 Statut Non membre Dernière intervention 24 janvier 2023 4
31 janv. 2011 à 12:21
Merci beaucoup nhervagault !!!
0
Rejoignez-nous