Visual Studio2015:C++代码分析错误C1253,无法加载模型文件'res://mspft140.dll/300'
Visual Studio 2015: C++ code analysis error C1253, unable to load model file 'res://mspft140.dll/300'
Visual Studio 2015社区更新3,试用C++代码分析功能。设置如下:
solution properties > code analysis settings > [all configurations] [all platforms] : microsoft native recommended settings
project properties > code analysis > [all configurations] [all platforms] : microsoft native recommended settings
每当我 运行 analyze > run code analysis on solution
我总是会得到一个 c1xx : fatal error C1253: Unable to load model file 'res://mspft140.dll/300'
。每个项目都会发生这种情况,无论是新项目还是现有项目。 MSDN not particularly helpful 关于这个。
字符串是res protocol,所以我检查了提到的dll是否在正确的位置(实际上有两个,在c:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\
和c:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64
),然后打开它们使用 重新编辑。两者都包含一个名为 300
的 XML 资源,所以我看不出任何 VS 无法加载它的原因。重置设置没有帮助,完全卸载并重新安装(浪费了半天)也没有。
我也在VS里运行运行procmon用[Path] [contains] [mspft]
过滤,运行ning代码分析,但是文件系统结果只有SUCCESS
和 FILE LOCKED WITH ONLY READERS
,其中 seems to be ok。
有人遇到过这个错误吗?有人对其原因有任何猜测吗?
更新:在使用不同过滤器仔细查看更多 procmon 捕获后,我发现 cl.exe
试图打开此注册表项值:HKCR\PROTOCOLS\Handler\res\CLSID
.很明显,它会查找错误输出中提到的 res
协议的处理程序 - 但找不到它,而 res
密钥的许多兄弟项都引用了一些有效的处理程序,例如 http
键的 CLSID
值为 {79eac9e2-baf9-11ce-8c82-00aa004ba90b}
。我想我现在的任务是弄清楚 res
CLSID
是什么意思。
我对 res
协议处理程序的假设是正确的。正确的 HKCR\PROTOCOLS\Handler\res\CLSID
值是 {3050f3bc-98b5-11cf-bb82-00aa00bdce0b}
(指的是 C:\Windows\System32\mshtml.dll
)。由于某种原因,我的注册表丢失了它;我一添加值,代码分析就开始工作,没有错误。
我希望这对某人有所帮助,尽管我相信该错误极为罕见。
Visual Studio 2015社区更新3,试用C++代码分析功能。设置如下:
solution properties > code analysis settings > [all configurations] [all platforms] : microsoft native recommended settings
project properties > code analysis > [all configurations] [all platforms] : microsoft native recommended settings
每当我 运行 analyze > run code analysis on solution
我总是会得到一个 c1xx : fatal error C1253: Unable to load model file 'res://mspft140.dll/300'
。每个项目都会发生这种情况,无论是新项目还是现有项目。 MSDN not particularly helpful 关于这个。
字符串是res protocol,所以我检查了提到的dll是否在正确的位置(实际上有两个,在c:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\
和c:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64
),然后打开它们使用 重新编辑。两者都包含一个名为 300
的 XML 资源,所以我看不出任何 VS 无法加载它的原因。重置设置没有帮助,完全卸载并重新安装(浪费了半天)也没有。
我也在VS里运行运行procmon用[Path] [contains] [mspft]
过滤,运行ning代码分析,但是文件系统结果只有SUCCESS
和 FILE LOCKED WITH ONLY READERS
,其中 seems to be ok。
有人遇到过这个错误吗?有人对其原因有任何猜测吗?
更新:在使用不同过滤器仔细查看更多 procmon 捕获后,我发现 cl.exe
试图打开此注册表项值:HKCR\PROTOCOLS\Handler\res\CLSID
.很明显,它会查找错误输出中提到的 res
协议的处理程序 - 但找不到它,而 res
密钥的许多兄弟项都引用了一些有效的处理程序,例如 http
键的 CLSID
值为 {79eac9e2-baf9-11ce-8c82-00aa004ba90b}
。我想我现在的任务是弄清楚 res
CLSID
是什么意思。
我对 res
协议处理程序的假设是正确的。正确的 HKCR\PROTOCOLS\Handler\res\CLSID
值是 {3050f3bc-98b5-11cf-bb82-00aa00bdce0b}
(指的是 C:\Windows\System32\mshtml.dll
)。由于某种原因,我的注册表丢失了它;我一添加值,代码分析就开始工作,没有错误。
我希望这对某人有所帮助,尽管我相信该错误极为罕见。