2009-09-14 8 views
5

Ich versuche, GAL Modifier zu implementieren, die eine ASP.NET-Website ist, die Microsoft Access auf einem Windows 2003 x 64-Computer verwendet. Jedoch gibt es keinen JET-Treiber auf x64 (siehe here), so dass die Änderung verwendet werden soll, um die Ziel-CPU auf x86 zu ändern.Konfigurieren von ASP.NET x86 auf x64 verwenden Windows

Da es sich jedoch um eine Website handelt, gibt es in Visual Studio keine Option außer Any CPU. Wie kann ich also die Einstellungen ändern, um die Verwendung von x86 zu erzwingen?

Antwort

8

Sie sollten den Anwendungspool 32 Bit machen. Wechseln Sie zu Anwendungspools in der IIS7-Verwaltungskonsole, klicken Sie mit der rechten Maustaste auf Ihren Anwendungspool und wählen Sie "Anwendungspool-Standardwerte festlegen ..." aus.

Setzen Sie im Eigenschaftendialogfeld "32-Bit-Anwendungen aktivieren" auf "True".

Dadurch wird der Anwendungspool 32 Bit verarbeiten (im WOW64-Modus ausgeführt) und lädt die 32-Bit-Version von .NET Framework in diesem Prozess.

In IIS6 gilt grundsätzlich das Gleiche. Sie sollten auf enable 32 bit ISAPI extensions zu 32-Bit-Anwendungspool wechseln:

cscript.exe adsutil.vbs set W3SVC/AppPools/Enable32BitAppOnWin64 "true" 

Außerdem müssen Sie Anwendungszuordnungen von aspnet_isapi.dll in Framework64 Ordner aspnet_isapi.dll in Framework Ordner ändern. Das gleiche sollte mit aspnet_filter.dll getan werden.

Sie können neu registrieren ASP.NET auf dem Server anstatt manuell die DLL-Konfigurationen zu ändern:

C:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i -enable 
+0

-1: Wie in der Frage angegeben, ist es Windows 2003 x64, also kein IIS7 –

0

auf iIS 6.0, auf der linken Seite wählen Sie „Anwendungspools“, dann (auf der rechten Seite) direkt auf Ihrem App klicken und klicken Sie auf „Erweiterte Einstellungen ...“, auf der „Enable 32-Bit-Anwendungen ", ändern Sie auf True, und Sie sind rea dy zu gehen!