Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: TMC am 02.04.04 - 18:13:27
-
H,
kennt jemand eine (einfache) Möglichkeit, wie ich via Script abfragen kann ob eine Officeanwendung gerade geöffnet ist?
Es soll z.B. folgendes Script in einem Button laufen (den man per Mail an User verschickt):
+ Prüfen ob Word offen, wenn ja: Fehlermeldung und Exit Sub, sonst weitermachen
+ die angehängte normal.dot ins Temp-Verzeichnis lösen
+ die alte normal.dot auf dem Client löschen
+ die normal.dot vom Temp-Verzeichnis in das richtige Verzeichnis kopieren
Ciao,
Matthias
-
Soll das ein einfaches Soft-Verteilungstool sein, das tatsächlich die Normal.dot permanent ersetzen soll? Ansonsten, wenn das nur für einmaligen Gebrauch ist, kannst Du Dir das Prüfen sparen, man kann Word dazu erziehen, eine spezifische Vorlage zu verwenden.
Ansonsten: schlechte Karten, um festzustellen, welche Apps offen sind, muss man auf Win-API zurückgreifen. Vielleicht schüttelt Urlich was aus dem Aermel .......
-
yoo, guckst du http://www.eknori.de/tipps/detail.php?nr=87&kategorie=tipps (http://www.eknori.de/tipps/detail.php?nr=87&kategorie=tipps)
Ulrich
-
Soll mehr oder weniger einmalig sein, nur begrenzt auf Word, Excel, Powerpoint.
Wird vielleicht 1-2 mal jährlich verschickt.
WinAPI: braucht man da dann wohl......::)
Ich schreie mal nach Uuuuuuullllllllllriiiiiiiich ;D
Vielleicht kann er helfen :)
Matthias
-
Hey, ich hab noch nicht mal geschrien und schon ist Ulrich zur Stelle :)
Danke, Ulrich !!
Schau ich mir gleich mal an....
Ciao,
Matthias
** Edit **
Cool, das ist genau das was ich suchte 8)
Danke nochmal !
Matthias
-
eine Möglichkeit ohne API:
set x = GetObject("","Word.Application")
if x is nothing then...
müsste klappen. Bei "Word.Application" bin ich mir nicht ganz sicher, ob das so heißt. Steht aber in der Registry.
*edit*
kann auch sein, dass bei der Zeile
set x = GetObject("","Word.Application")
ein Fehler geschmissen wird. den kannst du dann abfangen und weißt bescheid.
-
yxoo, schmeisst einen error
Sub Click(Source As Button)
On Error Goto error_handle
Dim x As Variant
Set x = GetObject("","Word.Application")
Msgbox "yoo"
Exit Sub
error_handle:
Msgbox "nö"
Resume do_some_stuff
do_some_stuff:
' your_stuff_goes_here
End Sub
Ulrich
-
Danke Thomas für den Tipp.
Nach ein wenig testen hier ein Script das (zumindest unter WinXP) klappt in R5:
Sub Click(Source As Button)
On Error 208 Goto AppNotOpen
Dim vAppOpenChecker As Variant
Set vAppOpenChecker = GetObject("","Word.Application")
Msgbox "Word ist geöffnet !"
Exit Sub
AppNotOpen:
Msgbox "Word ist nicht offen"
Exit Sub
End Sub
Matthias