2009-06-24 7 views
0

Ich weiß, das ist etwas ähnlich zu anderen Fragen hier, aber ich habe durch alles, was ich finden kann, und habe immer noch nirgends bekommen. Es ist sehr demütigend.Netzwerkfreigabe-Problem - Asp.net-Website von 2000 zu xp migrieren

Ich habe eine kleine asp.net-Website, die wir intern für einige einfache Protokolle verwenden, wie eine Arbeitszeittabelle und ein Supportprotokoll. Diese verwenden Access-Datenbanken auf einer Netzwerkfreigabe (unter Verwendung von Domänenbenutzern). Ich verschiebe die Website von einer virtuellen Maschine, auf der Windows 2000 ausgeführt wird, zu einer, auf der Windows XP ausgeführt wird, und kann nicht auf die Datenbanken zugreifen. Ich erhalte eine Fehlermeldung wie:

ERROR [HY024] [Microsoft][ODBC Microsoft Access Driver] '(unknown)' is not a valid path. 
Make sure that the path name is spelled correctly and that you are connected to the server on which the file resides. 

Die Konfiguration ist (oder sein soll) an beiden Standorten gleich:

  • ich den Datenquellen-Applet bin mit System DSNs zu erstellen, so dass meine Verbindungszeichenfolgen sind in der Form von "DSN = Arbeitszeittabelle"
  • Ich verwende Identitätswechsel, so dass der asp.net-Prozess einen Domänenaccount verwendet. Meine web.config-Datei hat ein Identity-Tag mit einem Domain-Benutzer und einem Passwort (ja, das ist nicht das, was man Best Practices in Sachen Sicherheit nennen würde).

Dies funktioniert alles auf der Windows 2000-Website, aber nicht auf der XP-Version. Ich habe eine kleine Seite erstellt, um den Netzwerkzugriff zu überprüfen. Grundsätzlich gilt:

SysAcctLabel.Text = System.Security.Principal.WindowsIdentity.GetCurrent().Name; 

// Get list of available drives 
Response.Write("Available drive letters:<br/>"); 
string[] drives = Directory.GetLogicalDrives(); 
foreach (string drive in drives) 
{ 
    Response.Write(drive + "<br/>"); 
} 

In der aspx-Datei, zeige ich auch den Wert von Environment.UserName.

Auf beiden Seiten zeigen die Benutzerinformationen die gleichen Werte, aber auf der Windows 2000-Version sehe ich die Netzlaufwerke in der Liste, und auf der XP-Version nicht.

Irgendwelche Ideen da draußen?

Dank

Tom

Antwort

0

Haben Sie interaktiv als dieser Benutzer auf den Server versucht, Protokollierung und sehen, was werden Laufwerksbuchstaben zugeordnet? Vielleicht müssen Sie die Laufwerksbuchstaben zuerst diesem Benutzer zuordnen (und das Kontrollkästchen "connect next time" aktivieren).

+0

Yup, ich logge mich als Domänenbenutzer ein und schaue im Windows Explorer nach und alle Laufwerke sind da – jackjumper