具有强命名二进制文件的 CefSharp

CefSharp with Strong-Named binaries

在启用了 .NET Framework 注册表项 AllowStrongNameBypass 的计算机上一切正常。 但是,我们要求在部署的环境中禁用 AllowStrongNameBypass

我们需要 CefSharp.BrowserSubProcess.exe 及其非托管依赖项强命名(最好不要自己构建 CefSharp)。

作为测试,我们尝试通过使用 ildasm.exe 反汇编 CefSharp.BrowserSubProcess.exe 并使用 ilasm.exe 和使用 [=16= 生成的密钥重新组装来自己为程序集提供强名称密钥].不幸的是,这失败了MethodAccessException

是否有 CefSharp 的可用版本,其中程序集是强命名的或解决此问题的方法?

CefSharp 似乎有一些无效的强命名程序集。正如@Fizz 指出的,在 32 位平台下 CefSharp.BrowserSubProcess.exe 的 post 构建步骤是造成这种情况的原因。

使用 CefSharp GitHub 存储库中可用的 CefSharp.snk 密钥重新签署有问题的程序集。您可以使用以下命令重新签名:

sn.exe -R CefSharp.BrowserSubProcess.exe [CefSharp key]