VS编译时发生错误:必须添加对程序集 netstandard, Version=2.0.0.0 的引用、调用的目标发生了异常、error occurred in document statechange handler
我用的是比较古老的VS版本,今天在添加了几个包之后,发现编译时会引发 bc30652 错误,提示 “必须添加对程序集 netstandard 的引用”。
netstandard 本就应该集成在工程文件的引用之内,可能是因为我用的VS版本比较老,所以默认的工程模板并没有自动引用。
但是我自己添加引用时,发现根本搜不到 netstandard 的类库,自己去 nuget 下一个新版本的 netstandard ,引用后又发现版本对不上,引发了更多的错误……
最后搜索半天,终于发现了解决办法,而且还非常搞笑。
我们只需要手动修改工程文档的
还是那句话——SB微软!!!
VS调试时发生“调用的目标发生了异常”、“error occurred in document statechange handler”错误
因为平常只用旧版本的VS写一点小程序,今天用新版本时发生只要调试代码就会有 “调用的目标发生了异常” 或者 “error occurred in document statechange handler” 的错误弹窗,非常影响心情。
搜索半天,没发现有什么解决方法,我只能自己手动除错。
一开始以为是哪个插件导致的,结果调试半天问题依旧,然而一个很久之前写的工程却能正常运行,没有任何错误弹窗。
经过对两个工程设置的对比,最终发现原来是
VS默认创建的工程会点选该选项,导致在我的64位操作系统中发生异常。
可能这个问题并不常见,不过如果你的VS也发生了这个问题,先检查一下有没有关闭这个选项。
还是那句话——SB微软!!!
netstandard 本就应该集成在工程文件的引用之内,可能是因为我用的VS版本比较老,所以默认的工程模板并没有自动引用。
但是我自己添加引用时,发现根本搜不到 netstandard 的类库,自己去 nuget 下一个新版本的 netstandard ,引用后又发现版本对不上,引发了更多的错误……
最后搜索半天,终于发现了解决办法,而且还非常搞笑。
我们只需要手动修改工程文档的
vbproj
或者 csproj
文件,在 ItemGroup
节点添加一个 netstandard
的引用即可:<ItemGroup>
<Reference Include="netstandard" />
<!-- 其他引用 -->
</ItemGroup>
修改完成后,让VS重新加载工程,编译——成功运行……还是那句话——SB微软!!!
VS调试时发生“调用的目标发生了异常”、“error occurred in document statechange handler”错误
因为平常只用旧版本的VS写一点小程序,今天用新版本时发生只要调试代码就会有 “调用的目标发生了异常” 或者 “error occurred in document statechange handler” 的错误弹窗,非常影响心情。
搜索半天,没发现有什么解决方法,我只能自己手动除错。
一开始以为是哪个插件导致的,结果调试半天问题依旧,然而一个很久之前写的工程却能正常运行,没有任何错误弹窗。
经过对两个工程设置的对比,最终发现原来是
工程属性-编译-编译选项-首选32位
这个选项的锅!!!VS默认创建的工程会点选该选项,导致在我的64位操作系统中发生异常。
可能这个问题并不常见,不过如果你的VS也发生了这个问题,先检查一下有没有关闭这个选项。
还是那句话——SB微软!!!
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。