1

我正在尝试调试表单的错误

Could not load file or assembly '[assembly], Version=[version], Culture=[culture], PublicKeyToken=[publicKeyToken]' or one of its dependencies.

错误页面告诉我,可以帮助我调试问题的程序集绑定日志记录已关闭:

WRN: Assembly binding logging is turned OFF.
To enable assembly bind failure logging, set the registry value [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) to 1.
Note: There is some performance penalty associated with assembly bind failure logging.
To turn this feature off, remove the registry value [HKLM\Software\Microsoft\Fusion!EnableLog].

我在注册表中导航到HKLM\Software\Microsoft\Fusion,创建了一个名为 EnableLog 的 DWORD 值,并将其设置为 1。我刷新了网页,但仍然收到相同的警告,即程序集绑定日志记录已关闭。我重新启动了服务器,但仍然没有打开程序集绑定日志记录。

然后我尝试从这个问题设置一些额外的注册表设置。仍然没有程序集绑定日志记录。

顺便说一句,这一切都在 Azure Web 角色虚拟机上。未安装 Fuslogvw。为了得到它,我必须在我的所有网络角色上安装 Windows SDK 。而且我也不想使用 fuslogvw;我只想要程序集绑定日志。

我还需要做什么才能打开程序集绑定日志记录?

编辑:我在两个 Web 角色上都安装了Windows SDK,但看起来 fuslogvw 仍然不存在。至少,我在尝试从管理员命令提示符运行 fuslogvw 时遇到“找不到命令”错误,并且 fuslogvw.exe 不在此问题指示的位置(我意识到这是指通过 Visual Studio 安装的 fuslogvw.exe ,以及比我安装的旧版本的 Windows SDK 的一部分)。

编辑:我安装了一个较旧的 Windows SDK,然后找到了 fuslogvw.exe(我敢打赌它实际上是我安装的第一个 SDK 附带的,我只是个傻瓜,找不到它)。我在D:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools.

现在我可以调试我得到的错误。

但是,最初的问题仍然悬而未决:尝试通过注册表设置打开程序集绑定日志记录可能会丢失什么?

(我希望能够使用注册表设置而不是 Windows SDK 中的 fuslogvw 的原因是我可以将我的 Web 角色配置为自动设置注册表设置,但要使用 Windows SDK,我必须手动登录我的 Web 角色并运行图形安装程序。安装SDK的工作并不多,但这是事情的原理。注册表设置应该可以工作,自动化比手动任务要好。)

4

0 回答 0