Avatar billede langejens Nybegynder
25. april 2001 - 09:54 Der er 2 kommentarer og
1 løsning

Se om program er åben ?

Jeg har en Function som sender en mail via lotus notes, men jeg for fejl i det hvis lotus ikke er åben !

Er den en nem måde at spørger windows om lotus er åben ???
Avatar billede jper Nybegynder
25. april 2001 - 13:15 #1
Lav et nyt exe project i VB slet alt i kode vinduet og sæt dette ind:

Const TH32CS_SNAPHEAPLIST = &H1
Const TH32CS_SNAPPROCESS = &H2
Const TH32CS_SNAPTHREAD = &H4
Const TH32CS_SNAPMODULE = &H8
Const TH32CS_SNAPALL = (TH32CS_SNAPHEAPLIST Or TH32CS_SNAPPROCESS Or TH32CS_SNAPTHREAD Or TH32CS_SNAPMODULE)
Const TH32CS_INHERIT = &H80000000
Const MAX_PATH As Integer = 260
Private Type PROCESSENTRY32
    dwSize As Long
    cntUsage As Long
    th32ProcessID As Long
    th32DefaultHeapID As Long
    th32ModuleID As Long
    cntThreads As Long
    th32ParentProcessID As Long
    pcPriClassBase As Long
    dwFlags As Long
    szExeFile As String * MAX_PATH
End Type
Private Declare Function CreateToolhelp32Snapshot Lib \"Kernel32\" (ByVal lFlags As Long, ByVal lProcessID As Long) As Long
Private Declare Function Process32First Lib \"Kernel32\" (ByVal hSnapShot As Long, uProcess As PROCESSENTRY32) As Long
Private Declare Function Process32Next Lib \"Kernel32\" (ByVal hSnapShot As Long, uProcess As PROCESSENTRY32) As Long
Private Declare Sub CloseHandle Lib \"Kernel32\" (ByVal hPass As Long)

Private Sub Form_Load()
    Dim hSnapShot As Long, uProcess As PROCESSENTRY32
    Dim sProcess As String
    Dim bFound As Boolean
    bFound = False
    hSnapShot = CreateToolhelp32Snapshot(TH32CS_SNAPALL, 0&)

    uProcess.dwSize = Len(uProcess)

    r = Process32First(hSnapShot, uProcess)

    Me.AutoRedraw = True
    Do While r
        sProcess = Left$(uProcess.szExeFile, IIf(InStr(1, uProcess.szExeFile, Chr$(0)) > 0, InStr(1, uProcess.szExeFile, Chr$(0)) - 1, 0))
        Me.Print sProcess \'Skriv på formen hvilke der er fundet
        If sProcess = \"NOTES.EXE\" Then \'Under NT/2000 brug Task Manager til at se hvilket Image name Notes har, jeg gætter bare på det hedder NOTES.EXE
            MsgBox \"Hey Notes kører\"
            bFound = True
        End If

        r = Process32Next(hSnapShot, uProcess)
    Loop
    \'close our snapshot handle
    CloseHandle hSnapShot
    If Not bFound Then MsgBox \"Notes kører ikke\"
End Sub

MsgBox kan så udskiftes med noget fornuftigt, så som start af notes hvis det er lukket.
Avatar billede langejens Nybegynder
25. april 2001 - 14:57 #2

Tusinde tak Jper

Jeg fik bare en super sej Function ud af din kode
Avatar billede jper Nybegynder
30. april 2001 - 18:59 #3
Du siger bare til ;-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester