Lotus Notes / Domino Sonstiges > OLE/COM-Programmierung

API-Handle auf Druckerdialog

(1/2) > >>

jo@chim:
Hi,

ich habe im Forum  unter "Grundgerüst für eine Excel-Klasse" ein schönes Codebeispiel von Axel gefunden, um per API-Handle ein Excel-fenster in den Vordergrund zu holen:
http://atnotes.de/index.php/topic,39862.msg253621.html#msg253621


--- Code: ---  Dim hWnd As Long

    'Handle für Excel-Application ermittlen
    hWnd = FindWindow("XLMAIN", 0)
    If hWnd = 0 Then Exit Sub

    'Excel aktivieren und in den Vordergrund bringen
    Call SetActiveWindow(hWnd)
    Call SetForegroundWindow(hWnd)

--- Ende Code ---


Wie lautet denn die entsprechend Fensterbezeichnung für den Druckerauswahldialog (den ich per "excelobj.Application.Dialogs(8).Show" aufrufe)?

hWnd = FindWindow("print", 0) und hWnd = FindWindow("drucken", 0)

habe ich schon versucht - das ist sie aber offensichtlich nicht, hWnd gibt 0 zurück.

Hintergrund:

Unter Windows XP und Windows Server 2008 wird der Druckerauswahldialog im Vordergrund ausgegeben, unter Windows 7 aber im Hintergrund, und kann deshalb nur per "Desktop anzeigen" erreicht werden.

Axel:
Das ist nicht ganz trivial.

Hier -> http://www.herber.de/forum/archiv/372to376/t373425.htm hab ich mal einen Lösungsansatz gefunden. Getestet habe ich das allerdings nicht.

Hier wird der Fenstertitel herangezogen um das Handle zu ermitteln. Ich halte das für etwas problematisch, denn wenn z.B. bei einer neueren Version der Titel geändert wird, funktioniert dein Code schon nicht mehr.

Was hast du den vor? vielleicht gibt's auch noch einen anderen Weg.


Axel

jo@chim:

--- Zitat von: Axel am 22.06.12 - 12:32:31 ---Was hast du den vor? vielleicht gibt's auch noch einen anderen Weg.
--- Ende Zitat ---

Hab ich doch geschrieben, im letzten Satz ;-)

Ich habe einen Stapeldruck programmiert, um die Excel-Anhänge aus verschiedenen Dokumenten, die in einer Ansicht selektiert wurden zu drucken.

Axel:

--- Zitat von: jo@chim am 22.06.12 - 13:06:01 ---Hab ich doch geschrieben, im letzten Satz ;-)

Ich habe einen Stapeldruck programmiert, um die Excel-Anhänge aus verschiedenen Dokumenten, die in einer Ansicht selektiert wurden zu drucken.

--- Ende Zitat ---

In welchem letzten Satz?   ;)    :-:


Eventuell wäre die PrintOut - Methode des Worksheet - Objekts eine Alternative.

Axel

jo@chim:

--- Zitat von: Axel am 22.06.12 - 15:07:57 ---Eventuell wäre die PrintOut - Methode des Worksheet - Objekts eine Alternative.

--- Ende Zitat ---
Negativ. Anforderung ist leider, dass die Druckereinstellungen vom Anwender konfiguriert werden können...

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln