> Ich m�chte per asp ein batch-file starten.
>
> <!-- #EXEC CMD="D:\arbeiten\jukebox\db\pkunzip.bat" -->
Ich h�nge Dir mal den Auszug aus der Hilfe dran - siehe zweiter Absatz
Viele Gr��e
Hubert Daubmeier
#exec
Die #exec-Anweisung f�hrt eine angegebene Anwendung oder einen Shell-Befehl
aus und sendet die Ausgabe (Standardausgabe oder ISAPI WriteClient-Daten) an
den Clientbrowser. Anweisungen m�ssen von HTML-Kommentartrennzeichen
eingeschlossen werden.
Diese Anweisung kann nur auf STM-Seiten verwendet werden, nicht jedoch auf
ASPs. Es gibt keine passende ASP-Skriptmethode, um die Ausgabe mehrerer
CGI-Skripts oder ISAPI-Anwendungen in eine Webseite einzuf�gen.
Syntax
<!-- #exec Befehlstyp = Befehlsbeschreibung -->
Parameter
Befehlstyp
Gibt den Typ des Befehls an. Folgende Befehlstypen sind m�glich:
Befehlstyp Bedeutung
CGI F�hrt eine Anwendung aus, also ein CGI-Skript, eine ASP-Anwendung
oder eine ISAPI-Anwendung. Der Parameter Befehlsbeschreibung ist eine
Zeichenfolge, die den vollst�ndigen virtuellen Pfad der Anwendung enth�lt,
gefolgt von einem Fragezeichen (?) und allen Parametern, die an die
Anwendung zu �bergeben sind. Parameter werden durch Pluszeichen (+)
voneinander getrennt. Da das Ausf�hren einer ISAPI-Anwendung lediglich einen
Teil der Verarbeitung des SSI-Dokuments darstellt, bestehen folgende
Einschr�nkungen f�r ISAPI-Anwendungen:
ISAPI-Erweiterungen, die versuchen, einen URL oder eine Umleitung �ber
die R�ckruffunktion ServerSupportFunction zu senden, wird eine Meldung in
den HTML-Datenstrom eingef�gt, aber die Weiterleitung oder Umleitung wird
nicht ausgef�hrt.
Der SSI-Interpreter (Ssinc.dll) wartet f�r unbestimmte Zeit auf
Anwendungen, die HSE_STATUS_PENDING zur�ckgeben, wenn nicht
ServerSupportFunction aufgerufen wird, um die Sitzung zu beenden.
ServerSupportFunction wird in der MSDN Library unter dem Stichwort
ISAPI beschrieben.
CMD F�hrt einen Shell-Befehl aus. Der Parameter Befehlsbeschreibung
ist eine Zeichenfolge, die den vollst�ndigen, physischen Pfad des
Shell-Programms enth�lt, gefolgt von den durch Leerzeichen getrennten
Befehlszeilenparametern. Falls der vollst�ndige Pfad nicht angegeben wird,
durchsucht der Webserver den Systempfad.
Diese Anweisung ist standardm��ig deaktiviert, da sie ein
Sicherheitsrisiko f�r Ihre Website darstellt. Zum Aktivieren f�gen Sie einen
DWORD-Registrierungswert namens SSIEnableCmdDirective zum Schl�ssel
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\W3SVC\Parameters hinzu
und legen den Schl�ssel auf 1 fest. Deaktivieren Sie den anonymen Zugriff
auf jeden Webordner, der STM-Dateien enth�lt, die die #exec-Anweisung
verwenden.
Allgemeine Informationen zum Umgang mit der Registrierung finden Sie
unter Registrierung.
Wichtig Die Datei mit dieser Anweisung muss eine Dateinamenerweiterung
verwenden, die dem SSI-Interpreter zugeordnet ist. Andernfalls verarbeitet
der Webserver die Anweisung nicht. Standardm��ig sind die Erweiterungen STM,
SHTM und SHTML dem SSI-Interpreter (ssinc.dll) zugeordnet.
Eine STM-Seite, die die #echo-Anweisung verwendet, muss eigenst�ndig oder
durch Aufrufen von einer ASP-Seite mithilfe von Response.Direct ausgef�hrt
werden. Eine STM-Seite kann nicht von einer ASP-Seite aus mithilfe von
Server.Transfer, Server.Execute oder #include aufgerufen werden, da die
STM-Seite dadurch gezwungen w�re, asp.dll statt sinc.dll zu durchlaufen.
Wenn das IIS-Snap-In installiert ist, k�nnen Sie
Standard-Erweiterungszuordnungen �ndern und neue Zuordnungen hinzuf�gen;
lesen Sie dazu Festlegen von Anwendungszuordnungen. Da Sie eine
Dateinamenerweiterung nicht mehr als einer ausf�hrbaren Datei zuordnen
k�nnen, k�nnen Sie diese Anweisung nicht in ASP-Dateien verwenden.
ASP-Dateien sind bereits der ausf�hrbaren Datei asp.dll zugeordnet, und
diese Zuordnung darf nicht ge�ndert werden.
Beispiel
In diesem Beispiel wird der Befehlstyp CGI zum Ausf�hren einer ASP
verwendet. Somit ist es nicht notwendig, Werte zu Ihrer Registrierung
hinzuzuf�gen. Die Verwendung von Server.Execute, Server.Transfer oder
#include zur Ausf�hrung von Test.asp aus Exec.asp heraus w�re effizienter,
doch soll hier nur die Verwendung einer #exec-Anweisung in einer STM-Datei
veranschaulicht werden.
--- Exec.asp ---
<FORM NAME="RunExec" METHOD="POST" ACTION="Exec.asp">
<INPUT TYPE="SUBMIT" VALUE="#exec-Anweisung ausf�hren" NAME="RunExec">
</FORM>
<%
If Len(Request.Form("RunExec")) Then
Response.Redirect("Exec.stm")
End If
%>
--- Exec.stm ---
<H3>Einblick in "Exec.stm"</H3>
<!-- #exec CGI="/testfolder/test.asp?test=Hallo" -->
<FORM NAME="Return" METHOD="POST" ACTION="Exec.asp">
<INPUT TYPE="SUBMIT" VALUE="Zur�ck zur vorhergehenden Seite" NAME="Return">
</FORM>
--- Test.asp ---
<%
Response.Write "<BR>Einblick in "Test.asp".<BR>"
Response.Write "Test = " & Request.QueryString("Test") & ".<BR>"
%>
----------------------------------------------------------------------------
----
| [aspdecoffeehouse] als [email protected] subscribed
| http://www.aspgerman.com/archiv/aspdecoffeehouse/ = Listenarchiv
| Sie k�nnen sich unter folgender URL an- und abmelden:
| http://www.aspgerman.com/aspgerman/listen/anmelden/aspdecoffeehouse.asp