问题标签 [peverify]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - PEVerify MD 错误:0x8013124C
在自定义生成的程序集上运行 PEVerify 时出现此“错误”。
除此之外(以及其他 196 个完全相同的错误),元数据和 IL 没有问题。它也可以正常工作。
我一直无法追踪它的来源(因为它不会以任何方式影响组装)。
不幸的是,谷歌并没有透露太多关于这个错误的信息。
有人可以提供一些关于这个“错误”的见解以及它是如何引起的吗?
谢谢 :)
.net - PEVerify 警告参数乱序
我已经使用 Reflection.Emit 构建了一个程序集。运行 PEVerify 返回 214 个相同类型的警告:
不幸的是,没有太多关于这类问题的文档。
我猜是因为它是一个元数据警告,它与方法名称、参数名称、类名称、方法签名或类似名称有关。将其与我的代码相关联的唯一方法是警告的数量,这是我将尝试继续进行的。
任何帮助或见解将不胜感激。
c# - 我在哪里可以下载 PEVerify.exe 工具?
我遇到了 InvalidProgramException。本文:
http://support.microsoft.com/kb/312544/en-us
建议我运行 PEVerify.exe,但我似乎找不到它。你知道我可以从哪里得到它吗?
谢谢。
.net - 关于 peverify 错误的问题
当我对我的 .NET exe 运行 peverify 实用程序时,我收到一些错误(类、重命名的方法):
这是我应该关心的事情吗?这些方法都使用 unsafe 关键字,我假设这是导致此错误的原因。但是我在网上找不到任何关于这个错误的文档,所以任何想法都会非常感激。谢谢!
.net - 存在非托管代码时避免 BadImageFormatException
我有一个 Web 服务,每当我尝试从 Visual Studio 运行该服务时,它都会引发 BadImageFormatException。 This answer to another question建议对 DLL 运行 peverify 以查看是否有任何问题。虽然我的 web 服务的 DLL 很好,但 web 服务依赖于一个 ILMerged 程序集,它确实有错误:
[IL]:错误:[C:\blah\MyILMergedAssembly.dll:加密
Utils.SecureStringExtensions::SecureEquals][offset 0x00000055][found unmanaged pointer] [expected unmanaged pointer] 堆栈上的意外类型。
[IL]:错误:[C:\blah\MyILMergedAssembly.dll:加密
Utils.SecureStringExtensions::SecureEquals][offset 0x0000005D][found unmanaged pointer][expected unmanaged pointer] 堆栈上的意外类型。
[IL]:错误:[C:\blah\MyILMergedAssembly.dll:加密
Utils.SecureStringExtensions::SecureEquals][offset 0x0000007E] 非托管指针不是可验证的类型。
3 验证 .\MyILMergedAssembly.dll 的错误
(188 个警告)
我认为这些源于我在 MyILMergedAssembly 中的使用Marshal
和使用IntPtr
,但在我这样做的任何地方,我都将方法声明为unsafe
. 我怎样才能摆脱 peverify 给出的错误,并希望摆脱当我尝试运行我的 Web 服务时出现的 BadImageFormatException?
编辑:看起来我可能无法使用 ILMerge 来合并具有不安全代码的程序集。所以我尝试让我的 Web 服务引用 MyILMergedAssembly 中的所有单个 DLL,但我仍然得到一个 BadImageFormatException。现在它给了我一个单独的程序集的例外。当我在那个单独的程序集上运行 peverify 时,我得到:
[IL]:错误:[C:\blah\Connection.dll:连接
.ConnectionBase::.ctor] [HRESULT 0x80070002] - 系统找不到指定的文件。
它所引用的ConnectionBase
类就在 Connection.dll 中,或者至少应该是,因为该类是在 Connection 命名空间/项目中定义的。Connection 在其构建选项中选中了“允许不安全代码”。ConnectionBase
它可能引用的构造函数被标记为internal
。
编辑:我尝试在使用带有不安全代码的 DLL 的 Web 服务项目中检查“允许不安全代码”。我还尝试compilerOptions="/unsafe"
在 system.codedom > compilers > compiler 节点中添加 Web 服务的 Web.config 文件。但是,当我运行 Web 服务时,我仍然会得到一个包含以下内容的页面:
无法加载文件或程序集“连接”或其依赖项之一。试图加载格式不正确的程序。
.net - 有没有一种简单的方法来解码 PEVerify 错误和警告?
给定如下所示的PEVerify错误和警告输出,如何追溯有问题的类和接口名称?假设我不是编译器作者或 IL 魔术师。
c# - 为什么在 .NET 4 下运行时此行会导致 VerificationException?
帮帮我 - 为什么这段代码在 .NET 4.0 下运行时会导致 VerificationException?
我peverify
在 .net 2.0 程序集上运行并收到以下消息:
ImageResizer.Util.Utils::parseEnum[T]][offset 0x0000000A] 调用的'this'参数必须是调用方法的'this'参数。
VerificationException: Operation could destabilize the runtime
在中等信任下运行代码时,这会导致一条消息。
我已经阅读了所有关于堆栈溢出的类似帖子,但没有一篇适用于这段代码。
泛型是否有一些新的东西会导致这段代码在某种程度上无效?
c# - 是否有用于在运行时验证动态程序集的 MSIL 的 API?
当使用Reflection.Emit
在运行时构建程序集时,我想在保存到光盘之前验证程序集 MSIL。像PEVerify但在运行时。有这样的API吗?
.net - .NET 程序集是否可以独立于它可能引用的任何其他程序集进行验证?
换句话说:对于要验证的 .NET 程序集,是否也需要读取和分析任何引用的程序集?PEVerify 工具有什么作用?
c# - log4net 编译时没有通过验证
https://github.com/apache/log4net
我正在从上面的源代码编译 log4net,但它没有通过验证:
[IL]:错误:[log4net.dll:log4net.Plugin.RemoteLoggingServerPlugin::Attach][offset 0x00000029] 方法不可见。
代码没问题:
https://github.com/apache/log4net/blob/trunk/src/Plugin/IPlugin.cs
https://github.com/apache/log4net/blob/trunk/src/Plugin/PluginSkeleton.cs
https://github.com/apache/log4net/blob/trunk/src/Plugin/RemoteLoggingServerPlugin.cs
调查显示它调用失败RemotingServices.Marshal()
:
但这里没有什么重要的。此外,使用任何类型调用RemotingServices.Marshal()
都会导致相同的问题:
即使我将其更改Attach()
为:
有人可以发现问题所在吗?