Anonym
11. Februar 2000 um 12:56
1
Mit dem untenstehenden Befehl versuche ich herauszufinden, ob eine Applikation schon läuft. In diesem Fall ist es MS Word. Jedoch bringt mir der viHandle immer nur zero(App. läuft nicht) zurück. Was mach ich da Falsch? (FindWindow ist ein API aufruf!)
Declare Function FindWindow Lib „user32“ Alias „FindWindowA“ (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
viHandle = FindWindow(0&, „Microsoft Word“)
Anonym
11. Februar 2000 um 13:04
2
Hi Patrik!
Ich nehme an du versuchst es unter VB !
Probiers mal so
On error resume next
set obj = GetObject(„word.application“)
if err.number 0
word läuft nicht
else
word läuft schon
end if
on error goto 0
err.clear
Ciao
Mario
Anonym
11. Februar 2000 um 13:18
3
Hi Mario
Läuft leider auch nicht. Mein programm merkt einfach nicht, dass die App schon läuft.
cu
Patrik
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Versuch mal folgendes:
Public Function WordWindow() As Boolean
Dim hwnd As Long
hwnd = FindWindow("OpusApp", 0&:wink:
WordWindow = hwnd 0
End Function
Die Caption ist ungeeignet, Word zu finden, da sie sich jeweils ändert (meistens steht der Dokumentenname mit drin…)
Reinhard
Anonym
11. Februar 2000 um 20:03
5
Hi Reinhard
Deine Idee läuft bei mir leider auch nicht. hwnd ist immer zero!
Thanks
Patrik
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Dann solltest du vielleicht mal genauer posten, in welcher Umgebung du arbeitest. (VB?, VBA? - wenn ja, welches? Welches Betriebssystem?)
Und du solltest vielleicht mal deine Deklaration von FindWindow überprüfen. Sie sollte sein:
Declare Function FindWindow Lib "User32" Alias "FindWindowA" (ByVal lpClassName As Any, ByVal lpCaption As Any) As Long
Wenn das nicht hilft, solltest du vielleicht mal den exakten Code posten, den du verwendest.
Reinhard