我做了个屏保程序,为防止重复运行,用If App.PrevInstance = 1 Then End来执行,结果发现好象无法中止,程序照样重复运行。我想用
wnd = FindWindow(vbNullString, Me.Caption)
If wnd <> Me.hWnd Then
end
End If
即若已有程序运行,则wnd<>me.hwnd,程序中止。
运行发现当只有一个程序运行时,找到的wnd与me.hwnd仍然不同(应该是同一程序的hwnd)。为什么?有什么办法解决?
wnd = FindWindow(vbNullString, Me.Caption)
If wnd <> Me.hWnd Then
end
End If
即若已有程序运行,则wnd<>me.hwnd,程序中止。
运行发现当只有一个程序运行时,找到的wnd与me.hwnd仍然不同(应该是同一程序的hwnd)。为什么?有什么办法解决?
wnd = FindWindow(vbNullString, Me.Caption)FindWindow(
LPCTSTR lpClassName, // pointer to class name
LPCTSTR lpWindowName // pointer to window name
)lpWindowName 是窗口的名称,不是Me.Caption
unload me '不如改成这样
endif