rushan: Zugriff auf Datei auf anderem Server

hallo,
ich möchte mit einem Asp-Skript eine Seite ausführen, die sich auf einem anderen Server befindet.
Ich erhalte die Fehelrmeldung:
File [%] not found.- Fehler '80040203'
File [\Pfadangabe\Datei] not found.

Die Datei ist aber sicher vorhanden. Lege ich die Datei auf meinen Applikationsserver funktioniert alles.

Woran kann das liegen?

  1. Hi,

    Die Datei ist aber sicher vorhanden.

    nein, ist sie nicht - die _Ressource_ ist vorhanden. Mit Dateien hat das nichts, aber auch gar nichts zu tun; deswegen greifen Dateioperationen auch nicht. Wenn es sich um eine HTTP-Ressource handelt, musst Du einen HTTP-Request durchführen. Wie das speziell mit ASP geht, kann ich Dir leider auch nicht sagen; jetzt hast Du zumindest hinreichend viele Suchbegriffe und Informationen, um im Handbuch zur Sprache fündig zu werden.

    Cheatah

    --
    X-Will-Answer-Email: No
    1. Daran liegt es leider nicht. Die Angabe eines absoluten Pfades reicht, wenn ich mich auf dem gleichen Server befinde.
      Also:
      "\servername\share" & "Datei"
      Ich vermute ein Rechteproblem. Aber da komme ich leider auch nicht weiter.
      Danke Trozdem

      Hi,

      Die Datei ist aber sicher vorhanden.

      nein, ist sie nicht - die _Ressource_ ist vorhanden. Mit Dateien hat das nichts, aber auch gar nichts zu tun; deswegen greifen Dateioperationen auch nicht. Wenn es sich um eine HTTP-Ressource handelt, musst Du einen HTTP-Request durchführen. Wie das speziell mit ASP geht, kann ich Dir leider auch nicht sagen; jetzt hast Du zumindest hinreichend viele Suchbegriffe und Informationen, um im Handbuch zur Sprache fündig zu werden.

      Cheatah

  2. hallo,
    ich möchte mit einem Asp-Skript eine Seite ausführen, die sich auf einem anderen Server befindet.
    Ich erhalte die Fehelrmeldung:
    File [%] not found.- Fehler '80040203'
    File [\Pfadangabe\Datei] not found.

    Was meinst Du mit "eine Seite ausführen"? Die Fehlermeldung beinhaltet einen UNC-Pfad. Was soll in dieser Freigabe geschehen? Welche Art Datei sprichst Du so an?

    Gruß

    Axel

    1. Leider ist es etwas komplizierter.
      Ich habe eine Software (Formularserver), um die ich herum mit ASP programmieren kann.
      Als alles auf einem Server lag, funktionierte es (wie gesagt). Jetzt sollen die Programmfiles und die ASP-Dateien auf getrennten Servern liegen.
      Die ausführbare Datei ist zwar eine Jscript-Datei, aber der Aufruf wird über die Applikation gesteuert, so dass eine absolute Pfadangabe der richtige Weg sein müsste (oder doch nicht?). Natürlich habe ich auch Cheatah Vorschlag (erfolglos) ausprobiert.
      Wie würdest Du denn die Pfadangabe gestalten?

      1. Hallo,

        Ich habe eine Software (Formularserver), um die ich herum mit ASP programmieren kann.
        Als alles auf einem Server lag, funktionierte es (wie gesagt). Jetzt sollen die Programmfiles und die ASP-Dateien auf getrennten Servern liegen.
        Die ausführbare Datei ist zwar eine Jscript-Datei, aber der Aufruf wird über die Applikation gesteuert, so dass eine absolute Pfadangabe der richtige Weg sein müsste (oder doch nicht?).

        Aha. Du rufst in ASP über Deine Formularserver-Application eine JS-Datei auf. Die Formularserver-Application soll diese dann als Scripting-Host verarbeiten. Liegen ASP, Application und JS-Datei auf einem Rechner geht das. Nun ist die JS-Datei auf einem anderen Rechner und über UNC (\servername\freigabe\js.datei) geht's nicht. Fehler: File not found. Habe ich das richtig verstanden?

        Kannst Du auf dem Server, auf dem das ASP läuft, ein Netzwerklaufwerk mit \servername\freigabe (also dem Server, auf dem die js.datei liegt) verbinden? Siehst Du dann dort die Datei js.datei? Wenn ja, hat die Application, wenn sie läuft, dieselben Rechte, wie Du? Oder läuft sie als Dienst mit speziellen Berechtigungen?

        Gruß

        Axel

        1. Hallo,

          Die ausführbare Datei ist zwar eine Jscript-Datei, aber der Aufruf wird über die Applikation gesteuert, so dass eine absolute Pfadangabe der richtige Weg sein müsste (oder doch nicht?).

          Aha. Du rufst in ASP über Deine Formularserver-Application eine JS-Datei auf. Die Formularserver-Application soll diese dann als Scripting-Host verarbeiten. Liegen ASP, Application und JS-Datei auf einem Rechner geht das. Nun ist die JS-Datei auf einem anderen Rechner und über UNC (\servername\freigabe\js.datei) geht's nicht. Fehler: File not found. Habe ich das richtig verstanden?

          Genau so!

          Kannst Du auf dem Server, auf dem das ASP läuft, ein Netzwerklaufwerk mit \servername\freigabe (also dem Server, auf dem die js.datei liegt) verbinden? Siehst Du dann dort die Datei js.datei?

          ja!

          Wenn ja, hat die Application, wenn sie läuft, dieselben Rechte, wie Du? Oder läuft sie als Dienst mit speziellen Berechtigungen?

          Die Anwendung läuft auf einem Webserver.  Ich habe für den anomymen User ein Konto eingerichtet und diesem Administratorrechte auf die gesamte Website gegeben (natürlich nur testweise!). Auf dem anderen Server hat dieser User ebenfalls Administratorrechte (also alles gleich konfiguriert).
          Ich bin wirklich ratlos!

          Gruß

          Axel

          Gruß
          Rushan

          1. Hallo,

            Die Anwendung läuft auf einem Webserver.  Ich habe für den anomymen User ein Konto eingerichtet und diesem Administratorrechte auf die gesamte Website gegeben (natürlich nur testweise!). Auf dem anderen Server hat dieser User ebenfalls Administratorrechte (also alles gleich konfiguriert).

            Ich glaube nicht, dass der INET_USER irgendwas damit zu tun hat. Ist das überaupt ein Domänen-User?

            Annahme:
            Beide Server sind Mitglieder einer Domäne. Diese hat einen PDC, der die Benutzerkonten verwaltet. Du meldest Dich mit Deinem Konto bei dieser Domäne an.

            Die Server, um die es geht, sind entweder beide BDCs der Domäne oder einer ist der PDC und einer ein BDC. Durch das Domänen-Konzept hast Du, wenn Du dich mit einem Domänen-Konto anmeldest, Berechtigungen auf beiden Servern. Der IIS oder die Applikation läuft auf _einem_ Server als Dienst mit der Anmeldung lokaler Systemdienst. Die Betonung liegt auf _lokaler_ Systemdienst. Der lokale Systemdienst auf einem Server hat _keinerlei_ Berechtigungen auf dem anderen Server.

            Lösung:
            Der Dienst der Application (wenn vorhanden) oder der IIS selbst muss sich mit einem Domänen-Konto anmelden. Dieses muss Lese-Berechtigungen auf \servername\freigabe haben.

            Gruß

            Axel