1
Vote

ProjectConfig.get_CanonicalName returns display name instead of the canonical name

description

DisplayName is documented as being in the form "<configname>|<platform name>" http://msdn.microsoft.com/en-us/library/bb139670(v=VS.80).aspx
 
CanonicalName is just the config name such as "Debug" or "Release" http://msdn.microsoft.com/en-us/library/microsoft.visualstudio.shell.interop.ivsprojectcfg.get_canonicalname(v=VS.80).aspx
 
In MPFProj get_CanonicalName just calls get_DisplayName, so a string such as "Debug|AnyCPU" is passed out when it should just be "Debug".
 
The fix is to make get_CanonicalName just to do:
 
    public virtual int get_CanonicalName(out string name)
    {
        name = configName;
        return VSConstants.S_OK;
    }

comments

dinov wrote May 22, 2012 at 11:55 PM

If you are using MPFProj w/ Dev11 and are getting an error about x64 and ARM targets not being supported in the WPF designer you might want this fix.

KlausGuetter wrote Jan 24 at 8:38 AM

Thanks, helped a lot!