Rim: ASP - Datei erzeugen

Hallo,

Ich wollte mit Hilfe von ASP eine Datei in einem vorgegeben Ordner erzeugen. Also hab ich den Code dazu geschrieben und ihn auf den Webserver gepackt. Allerdings bekomm ich immer den selben Fehler, dass die Seite nicht angezeigt werden kann (Datei wird auch nicht erzeugt). Ich komm hier einfach nicht voran ;(

Hier der Code:

<%@ language="VBScript" %>
<html>
 <body>

<%
FileContent = "Ganz viel Text, der in die Datei geschrieben werden soll"
Set objFileSys = Server.CreateObject("Scripting.FileSystemObject")
    Set objTextStream = objFileSys.CreateTextFile("C:\Programme\Text.txt")
        objTextStream.Write FileContent
        objTextStream.Close
%>
 </body>
</html>

  1. Hallo,

    Ich wollte mit Hilfe von ASP eine Datei in einem vorgegeben Ordner erzeugen. Also hab ich den Code dazu geschrieben und ihn auf den Webserver gepackt. Allerdings bekomm ich immer den selben Fehler, dass die Seite nicht angezeigt werden kann (Datei wird auch nicht erzeugt). Ich komm hier einfach nicht voran ;(

    Hi, hab's gerade mal bei mir ausprobiert. Hat tatsächlich so nicht funktioniert, mit einem anderen Zielordner war es kein Problem.
    Dabei ist mir dann aufgefallen, dass der Ordner c:\Programme anscheinend standardmäßig schreibgeschützt ist. Schau mal, ob das bei dir auch die Ursache ist.
    Schreibschutz entfernen kannst du übrigens mit der "Attributes"-Eigenschaft.

    LG, piranja

    1. Hi, hab's gerade mal bei mir ausprobiert. Hat tatsächlich so nicht funktioniert, mit einem anderen Zielordner war es kein Problem.
      Dabei ist mir dann aufgefallen, dass der Ordner c:\Programme anscheinend standardmäßig schreibgeschützt ist. Schau mal, ob das bei dir auch die Ursache ist.
      Schreibschutz entfernen kannst du übrigens mit der "Attributes"-Eigenschaft.

      LG, piranja

      Es kam zwar keine "Seite kann nicht angezeigt werden"-Meldung mehr jedoch war die Datei in dem Ordner nicht auffindbar.

      1. Hallo,

        Es kam zwar keine "Seite kann nicht angezeigt werden"-Meldung mehr jedoch war die Datei in dem Ordner nicht auffindbar.

        Falls du Norton Antivirus o.ä. heißt, schau mal hier:
        http://www.aspfaq.de/index.asp?FID=115&ELE=10010

        Falls nicht, setz die Berechtigungen richtig. Siehe:
        http://www.aspfaq.de/index.asp?FID=123&ELE=10708
         oder
        http://www.aspfaq.de/index.asp?FID=120&ELE=10205
        (letzteres ist zwar eigentlich für Datenbanken, gilt aber
        für Dateien genauso)

        Tschau, Stefan

  2. Holladri!

    bitte überprüfe folgende Dinge (zwecks zukünftiger Fehlersuche)

    IIS-Manager - "Eigenschaften" der IIS Applikation aufrufen,
    unter welcher dein Script liegt (im Zweifel "Default Website")

    • ich meine nicht die normalen "virtuellen Ordner", sondern das,
      was als Applikation definiert ist.

    Auf Registerkarte "Directory" oder "Ordner" den
    Bereich "Anwendungseinstellungen" suchen, dort auf
    Button "Konfiguration" klicken.

    Auf Registerkarte "Anwendung Fehlerbehandlung" oder "App Debugging"
    einstellen: "Detaillierte ASP Fehlermeldung senden"

    Im Browser einstellen, dass "kurze HTTP Fehlermeldungen anzeigen" nicht aktiviert ist.

    ==================================================================

    Und nun zu deinem Problem. Wenn du ASP erlauben möchtest, dateien
    auf einem NTFS Dateisystem anzulegen, dann musst du auch die
    ensprechenden NTFS Dateiberechtigungen dafür setzen, denn (einfach ausgedrückt) ASP wird unter einem speziellen Windows-Benutzerkonto
    ausgeführt, jenachdem ob anynomer Zugriff auf die IIS Applikation
    gestattet ist oder ob Windows Authentication eingestellt ist. In
    letzterem Fall meldet sich nehmlich der Besucher an der
    Internetseite an und die für ihn eingestellten NTFS-Rechte sind
    gültig.

    Ich tippe jedoch, du möchtest das dem anynomen Internetbenutzer
    gestatten, dazu musst du dem entsprechenden Lokalen Konto IUSR_xxxxxx
    (oder dem was in der Applikation für den anonymen Internetzugriff
    eingestellt ist) die entsprechenden NTFS Berechtigungen geben.

    Überlege dir bitte genau, was du tust, jede Möglichkeit, die du dem Anynomen Internetnutzer gibst, ist ein potentielles
    Sicherheitsrisiko mehr, besonders wenn du dabei Windows-Systempfade
    verwendest (z.b. C:\Progamme)

    Damit du weisst, was du tust, solltest du dich mit dem Thema "Dateisystem Berechtigungen auf einem Windowssystem" beschäftigen: Literatur, MSDN usw.

    Viele Grüße, Frank