XML service Sharing with IIS returns "HTTP 500 - Internal server error" or "Invalid access to memory location."
Issue
On a Citrix Presentation Server with PSE400W2K3R01 installed, Memory Optimization enabled, and the XML service configured as "Sharing with IIS" the XML service gives 500 errors when querying 
http://<server>/scripts/wpnbr.dll
The IIS log (C:\WINDOWS\system32\LogFiles\W3SVC1):
<date> <time> W3SVC1 <ip> GET /scripts/wpnbr.dll - 80 - <ip> <browser> 500 0 998
Further testing:
In Internet Explorer:
 - Tools | Internet Options | Advanced | uncheck Show friendly HTTP error messages
 - 
http://<server>/scripts/wpnbr.dll
This test should return a blank page for a working XML service but returns "Invalid access to memory location."
 
Resolution
In the Presentation Server Console:
 - Right click on the server farm and select Properties from the context menu
 - Select Memory Optimization in the left pane
 - Click Add and browse to wpnbr.dll (C:\InetPub\Scripts\wpnbr.dll)
 - Click OK
 - Click OK to exit server farm properties
Copy wpnbr.dll from a known good source.
In Internet Explorer:
 - Tools | Internet Options | Advanced | uncheck Show friendly HTTP error messages
 - 
http://<server>/scripts/wpnbr.dll
This should now return a blank page.
Disabling Memory Optimization at a farm level should also resolve the issue. 
 
References
Products
Microsoft Windows Server 2003 SP1
Citrix Web Interface 4.2
Citrix Presentation Server 4
Created: 14th August 2006
Updated: 14th August 2006
                    
                © 2005-2025 Jamie Morrison