2016-05-13 12 views
1

Ich bin ein frischer und Arbeiten an einer Webanwendung mit ASP.Net C# 4.5, VS 2012. Ich möchte "ixo-Global" Ordner auf einem anderen Server \ 10.23.23.23 öffnen \ ixo-global \ (Nur dieser Ordner). Ich habe dies mit folgenden Code:Ordner kann nicht geöffnet werden in ASP. NET-Website

-Code 1

ProcessStartInfo startInfo = new ProcessStartInfo(FolderPath); 
startInfo.WindowStyle = ProcessWindowStyle.Normal; 
Process.Start(startInfo); 

-Code 2

System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo() 
{ 
FileName = FolderPath, 
UseShellExecute = true, 
Verb = "open" 
}); 

Jedes funktioniert, wenn ich diesen Code auf Localhost lief. Nach der Veröffentlichung auf IIS wird der Ordner im Client-Browser jedoch nicht geöffnet. Dies kann auf Sicherheitsmaßnahmen zurückzuführen sein. Ich kann auf diesen Ordner zugreifen, indem ich auf dem Server Ausführen von IIS starte. Ich bezog this link, Code läuft, aber Ordner öffnet nicht im Client-Browser.

Was kann ich tun? TIA.

+0

Was ist das Endziel? Warum muss der Client die Dateien des Servers durchsuchen? –

+0

ja. Es ist ein Ordner im freigegebenen Pfad. Im Moment sind alle Berechtigungen für diesen Ordner gewährt –

+0

Aber was soll der Benutzer _do_ einmal der Ordner geöffnet ist? Eine Datei hinzufügen? Löschen Sie alle Dateien? Wähle einen aus und öffne ihn? –

Antwort

0

Haben Sie überprüft, ob der Ordner nur Leserechte hat?

+1

ja. Es hat Rechte. Ich bin in der Lage, neue Datei im angegebenen Ordner zu erstellen –

+0

Verwenden Sie einen Iframe, um die Datei vom Server anzufordern. Sie können einen mit JavaScript erstellen und seinen Quellcode zum Server-Endpunkt machen. – makoulis

+0

Ich habe einen Link-Button. Wenn ich darauf klicke, kann ich diesen Ordner mit IFrame öffnen? Kannst du Code teilen? –

0

"System.Diagnostics.Process.Start" funktioniert nicht im Webkontext, funktioniert nur in Desktop-Anwendungen.

+0

Ja.Ich habe das auf harte Weise verstanden! :(Gibt es eine Lösung? –

1

Sie starten einen Prozess auf dem Server, nicht auf dem Desktop des Browsers. Wenn Sie es lokal ausführen, Sie sind der Server, so sehen Sie das Explorer-Fenster geöffnet. Wenn Sie auf einem anderen Server veröffentlichen, wird der Explorer auf dem Server geöffnet, sodass Sie ihn nicht sehen können.

Es gibt keine Möglichkeit, ein Explorer-Fenster zu öffnen, Dateien auf dem Server zu sehen, es sei denn der Kunde hat:

  • Ein direkter Pfad zu dem Ordner (zB über eine Dateifreigabe)
  • Zugriffsberechtigung der Ordner.

Sie auch bei Dritt Kontrollen aussehen könnte, die Sie auf „Durchsuchen“ des Servers Dateien in einem Explorer-ähnlichen Fenster lassen, oder wenn der Kunde tut haben Zugriff auf den Ordner direkt (das heißt, wenn der Client könnte den Ordner im Explorer durchsuchen), dann könnten Sie den Pfad zu dem Ordner in einem file:// Link setzen und , dass im Client-Browser anzeigen.

Verwandte Themen