SCCM package containing a plus (+) sign / symbol in a filename

When troubleshooting a package that wasn’t transferring from a SCCM DP to a BDP today, I realised that the filename had a plus (+) sign in it, eg BrushTip_+Round 10.PspScript. Bitsadmin reported:

ERROR CODE: 0x80190194 – The requested URL does not exist on the server.ERROR CONTEXT: 0x00000005 – The error occurred while the remote file was being processed.

The problem here is that with IIS requested URLs containing unencoded “+” characters in the path (not querystring) are rejected by default. Since we couldn’t rename the file, the workaround was to disable this validation by setting the allowDoubleEscaping attribute in the system.webServer/security/requestFiltering configuration section in the application’s web.config. Be aware that doing this may make your application more vulnerable to malicious URLs.

<system.webServer>

<security>

<requestFiltering allowDoubleEscaping=”true” />

</security>

</system.webServer>

See http://www.ifinity.com.au/Blog/entryid/60/404-error-in-iis-7-when-using-a-url-with-a-plus-sign-in-the-path for more info.

----------------------------------------------------------------------------
I use a maximum of one Google Ad per post to help offset some of my blog hosting costs.
----------------------------------------------------------------------------