Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Norbert20 am 28.09.05 - 10:23:46

Titel: Windows Dateifenster schließen
Beitrag von: Norbert20 am 28.09.05 - 10:23:46
Hallo an alle,

ich habe mal wieder ein Problem.

Ich öffne mit @Command([Execute]; "C:\\") ein Windows Dateifenster um von dort z.B. eine Word-Datei zu öffnen.

Gibt es eine Möglichkeit, nachdem Word wieder beendet wurde, das noch sichtbare Dateifenster automatisch zu schließen?

Vielen Dank für Eure Mühe schonmal im voraus.

Gruß Norbert
Titel: Re: Windows Dateifenster schließen
Beitrag von: Driri am 28.09.05 - 10:30:54
Hallo,

Du hast IMO zwei Möglichkeiten :

a) mit @Command([Execute]) und dann sowohl Anwendung als auch zu öffnende Datei angeben

b) mit Lotus Script über Shell


Bei b) ist der Vorteil, daß Du bei sauber installierten Anwendungen einfach direkt die zu öffnende Datei angeben kannst. Durch die Zuordnung des Dateityps zur Anwendung unter Windows wird dann die passende Anwendung geöffnet.
Titel: Re: Windows Dateifenster schließen
Beitrag von: diali am 28.09.05 - 10:31:12
öffne das Word-Dokument doch mit einer CMD-Datei. Mit Start wird die CMD-Datei in ihrer Ausführung nicht angehlaten.

Also in etwa so:
start "c:\word.doc"
exit
Titel: Re: Windows Dateifenster schließen
Beitrag von: Norbert20 am 28.09.05 - 10:35:07
Hi,

es ist Absicht, dass die Nutzer eine beliebige Datei auf Ihrem Rechner (muss nicht WORD sein) auswählen und bearbeiten können.

Ich kann somit nicht den Dateinamen o.ä. vorhersehen.

Ich möchte nur das Dateiauswahlfenster automatisch wieder schließen.

Norbert
Titel: Re: Windows Dateifenster schließen
Beitrag von: Wilhelm am 28.09.05 - 10:43:27
Hi,

man könnte mit NotesUiWorkspace.OpenFileDialog ein Auswahlfenster anzeigen. Die vom Benutzer markierte Datei erhälst Du incl. Pfad als Variant zurück und kannst diese dann mit Shell öffnen.

Ungewähr so wollte auch Ingo das Problem lösen.

Gruß

Willi

Titel: Re: Windows Dateifenster schließen
Beitrag von: Driri am 28.09.05 - 10:57:56
Genau  ;D
Titel: Re: Windows Dateifenster schließen
Beitrag von: diali am 28.09.05 - 11:28:49
Ups ... habe da wohl was gelesen, was ihr gar nicht geschrieben hattet - SORRY
Titel: Re: Windows Dateifenster schließen
Beitrag von: Norbert20 am 28.09.05 - 11:35:23
@diali

nicht so schlimm, kann jedem passieren

@ die anderen

habe es jetzt ausprobiert mit folgendem Programmcode

Sub Click(Source As Button)
   Dim workspace As New NotesUIWorkspace
   files = workspace.OpenFileDialog(True, "File List", _
   "", "c:")
   Forall filelist In files
      messagelist = messagelist & Filelist
   End Forall
   Messagebox messagelist
   
   a = Shell (messagelist,3)
End Sub


Bekomme jedoch immer die Fehlermeldung "Illegal function call"

Was mache ich falsch?
Titel: Re: Windows Dateifenster schließen
Beitrag von: Axel am 28.09.05 - 11:51:49
Hi,

mir fehlt die Deklaration der Variablen messagelist. Ohne Deklaration ist sie ein Variant-Typ. Messagebox und Shell erwarten aber eine String-Variable. Vielleicht liegts daran.

Füge mal

  Dim messagelist as String

ein.

Axel
Titel: Re: Windows Dateifenster schließen
Beitrag von: Norbert20 am 28.09.05 - 11:56:57
Hi Axel,

hat leider nichts gebracht.

Trotzdem vielen Dank für deine Antwort.

Norbert
Titel: Re: Windows Dateifenster schließen
Beitrag von: Wilhelm am 28.09.05 - 12:31:02
Das funktioiert nicht, weil Du das ausführende Programm mitgeben mußt:
taskid = shell("Notepad C:\Test.txt", 3). Da du das ja noch nicht weißt mußt Du den Umweg über CMD gehen:

http://www.atnotes.de/index.php?PHPSESSID=631a8b7cad8e893b1dc2d585f3eb67a9&topic=2771.msg14001#msg14001

Schau Dir da mal die Behandlung von FileObj an.

Gruß

Willi
Titel: Re: Windows Dateifenster schließen
Beitrag von: Norbert20 am 29.09.05 - 14:39:42
Vielen Dank für die bis jetzt eingegangenen Lösungsvorschläge.

Gibt es denn keine EINFACHE Lösung für das Problem?


Hoffnungsvoll

Norbert
Titel: Re: Windows Dateifenster schließen
Beitrag von: diali am 29.09.05 - 14:45:15
ist doch relativ einfach.

1. mit NotesUIWorkSpace.OpenFileDialog die Datei auswählen
2. eine CMD-Datei erzeugen mit dem Inhalt
- - Start "c:\Pfad\Date.doc"
- - Exit
3. CMD-Datei starten
Titel: Re: Windows Dateifenster schließen
Beitrag von: Glombi am 29.09.05 - 15:02:44
Ein andere Möglichkeit wäre Shell("explorer.exe <pfad>, ...)

http://www.atnotes.de/index.php?topic=19880.0

Andreas
Titel: Re: Windows Dateifenster schließen
Beitrag von: Norbert20 am 04.10.05 - 07:54:39
Hi Glombi,

deine Lösung funktioniert zum Aufrufen eines Programms wunderbar, aber:


wie kann ich das noch offene Windows-Explorer-Fenster automatisch schließen, nachdem zum Beispiel WORD beendet wurde?

Eine ruhige kurze Woche wünscht

Norbert
Titel: Re: Windows Dateifenster schließen
Beitrag von: diali am 04.10.05 - 08:23:34
der Explorer wird hier nur als Hilfsmittel verwendet. Damit muss nicht für jede Anwendung das entsprechende Programm gesucht werden, weil dies der Explorer übernimmt.

Das Fenster könnte mit der Win-Api ermittelt und dann beendet werden.

Bei der Lösung mit der cmd-Datei, wird zwar eine Eingabeaufforderung geöffnet aber diese wird gleich wieder geschlossen. Dabei wird die Ermittlung des verknüpfden Programmes ebenfalls Windows überlassen.