Programmaufruf über Pfad in versch. Windows-Vers

Hallo zusammen,

möchte über die folgende html-Seite das Programm notepad aufrufen. Nun liegt das Programm, je nach Windows-Version, in der die Seite aufgerufen wird, in einem anderen Verzeichnis.

Wie kann man das lösen (z.B. das nacheinander mehrere Verzeichnisse durchsucht werden, bis das Programm gefunden wird). Im Moment wird nur das Verzeichnis nach „body onload“ durchsucht.

Vielen Dank
Volker

html-Code:

IE Launcher
function launchApp(strCmdLine)
{ var obj = new ActiveXObject(„LaunchinIE.Launch“);
obj.LaunchApplication(strCmdLine); }

Unnötig, weil Standard-Anwendung
Hallo Volker,

solche Standard-Anwendungen, wie Notepad, Explorer, Write, uvam können ohne jeglichen Pfad angegeben werden. Probier es bei Dir aus mit Startmenü => Ausführen => eingeben und OK.

Windows verwaltet selbst eine ganze Reihe von Suchpfaden und findet auch durch Registry-Einträge viele Anwendungen „von selbst“.

Und wenn es exotischer wird, ruf doch mit *.ENDUNG auf. Dann versucht Windows je nach Konfiguration das passendste Programm aufzurufen.

Gruß

Stefan

korrekt, und ausserdem…
… sind webseiten ja betriebssystem unabhängig, da man sie (theoretisch) weltweit anschauen kann.

m.e. würde es also mehr sinn machen mit javascript ein popup anzugeigen, das den inhalt der textdatei enthält.

falls es sich natürlich um intranetseiten handelt und der webseiten author weiss was er tut (sledge hammer :smile:, dann isses ok

STK

never run a touching system (active X)

Hallo zusammen,

möchte über die folgende html-Seite das Programm notepad
aufrufen. Nun liegt das Programm, je nach Windows-Version, in
der die Seite aufgerufen wird, in einem anderen Verzeichnis.

Wie kann man das lösen (z.B. das nacheinander mehrere
Verzeichnisse durchsucht werden, bis das Programm gefunden
wird). Im Moment wird nur das Verzeichnis nach „body onload“
durchsucht.

Vielen Dank
Volker

html-Code:

IE Launcher

function launchApp(strCmdLine)
{ var obj = new ActiveXObject(„LaunchinIE.Launch“);
obj.LaunchApplication(strCmdLine); }

hallo volker

es gibt sicherlich mehrere varianten notepad zu öffnen, eine variante die mir gerade einfällt wäre mit „wenn“-„dann“. im javascript code werden die befehle „if“ und „else“ (natürlich ohne „“). mehr informationen findest hierzu wenn du mal auf www.google.de gehst und als suchbegriff selfhtml eingibst.

mfg pseiko

Versuch´s doch mal ganz ohne Pfad. Normalerweise sollte die notepad.exe an einem Ort liegen, der in der PATH-Umgebungsvariable verzeichnet ist (DOS/Windows, hat nichts mit dem Browser zu tun). Deshalb kann man sie auch von überall aus ohne Pfadangabe starten. Würde mich wundern, wenn es mit diesem JS-Konstrukt nicht ginge.

Kristian

Oops …
Oops, ich sehe gerade, dass Deine Frage schon wat älter war … :wink:
Das Brett hier scheint ja nicht so stark frequentiert zu sein, oder Dein Artikel mogelt sich immer durch den Archiv-Filter durch.

hi volker,

was du untenstehend als HTML code angibst
ist eignetlich Active X und wird erstmal grundsaetzlich
nur vom Internet Explorer verstanden. Ausserdem
wird Active X von vornerein als unsicher eingestuft.
solltest du also beabsichtigen, deine seite ins
internet zu stellen, machst du damit den besuchern nicht
sonderlich freude. vor allem funktioniert das dann ausschliesslich mit windowskisten. oder willst du es lediglich lokal nutzen?

die frage ist… warum willst du denn unbedingt notepad
ansteuern? was willst du ueberhaupt machen?

text kann man auch anders darstellen. ausserdem sollte es
jedem user selbst ueberlassen werden, mit welchem programm
heruntergeladene inhalte geoeffnet werden.

im grunde ist das schon ganz ok, dass man das ohne active x
nicht machen kann… ist naemlich ein dickes sicherheitsrisiko.

also… vielleicht erklaerste mal kurz, was du ueberhaupt anstellen willst, damit man dir besser helfen kann

grusz

pixel

:


> function launchApp(strCmdLine)  
> { var obj = new ActiveXObject("LaunchinIE.Launch");  
> obj.LaunchApplication(strCmdLine); }

\</pre\>

Hallo,

ruf das Programm über die Shell auf!

obj.ShellExecute(„c:\winnt\notepad.exe“, „“, „“, „open“, „1“);
Gruß Daniel