.net 在没有安装 Visual Studio 的机器上使用 FUSLOGVW.EXE
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/1012252/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
using FUSLOGVW.EXE on a machine with no Visual Studio installed
提问by Gerrie Schenck
I'm currently having some assembly binding problems on our development server. I want to investigate the problem a bit further with Fusion Log Viewer. Since there is no Visual Studio installed on the machine, I copied FUSLOGVW.EXE to a local folder and started it there.
我目前在我们的开发服务器上遇到了一些程序集绑定问题。我想使用 Fusion Log Viewer 进一步调查这个问题。由于机器上没有安装 Visual Studio,我将 FUSLOGVW.EXE 复制到本地文件夹并在那里启动它。
Is this supposed to work or does it need something else? I don't get the impression the application is logging any failures (and yes I have the settings right).
这是应该工作还是需要其他东西?我没有得到应用程序记录任何失败的印象(是的,我的设置是正确的)。
采纳答案by adrianbanks
Fuslogvw doesn't do the logging. The fusion loader does that. Fuslogvw just displays the log output. Are you getting any logs at all in the output directory you have configured?
Fuslogvw 不做日志记录。融合加载器就是这样做的。Fuslogvw 只显示日志输出。您是否在配置的输出目录中获取任何日志?
Oh, and it should work on a machine that does not have Visual Studio installed.
哦,它应该在没有安装 Visual Studio 的机器上工作。
回答by ashes999
As mentioned in an answer above and in comments, you need to do two things to get the fusion logger to run on a machine without Visual Studio:
正如上面的回答和评论中提到的,您需要做两件事才能让融合记录器在没有 Visual Studio 的机器上运行:
- Copy
fuslogvw.exeto that machine. You can find it wherever you installed .NET (eg.C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools\x64\FUSLOGVW.exe) - Copy
flogvwrc.dllto the same location asfuslogvw.exeon that machine. You can find it in the1033subdirectory wherefuslogvw.exewas (eg.C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools\x64\1033\flogvwrc.dll)
- 复制到那
fuslogvw.exe台机器上。您可以在任何安装 .NET 的地方找到它(例如C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools\x64\FUSLOGVW.exe) - 复制
flogvwrc.dll到与fuslogvw.exe该机器相同的位置。您可以在1033where的子目录中找到它fuslogvw.exe(例如。C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools\x64\1033\flogvwrc.dll)
Once you have fuslogvw.exeand flogvwrc.dlltogether in one directory, you can run the log viewer. You don't need registry changes or any other changes.
一旦您在一个目录中拥有fuslogvw.exe和flogvwrc.dll在一起,您就可以运行日志查看器。您不需要更改注册表或任何其他更改。
回答by xav
Doing the above did not work for me..
做以上对我不起作用..
I recommend doing the following instead:
我建议改为执行以下操作:
In: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Fusion
在:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Fusion
Add:
添加:
- ForceLog set value to 1 (DWORD )
- LogFailures set value to 1 (DWORD)
- LogResourceBinds set value to 1 (DWORD)
- LogPath (String) set value to folder for logs ie) C:\FusionLog\
- ForceLog 将值设置为 1 (DWORD)
- LogFailures 将值设置为 1 (DWORD)
- LogResourceBinds 将值设置为 1 (DWORD)
- LogPath(字符串)将值设置为日志文件夹,即)C:\FusionLog\
Very straightforward.. and that worked for me! I use Windows 2012 R2.
非常简单......这对我有用!我使用 Windows 2012 R2。
Found this in: http://pauliom.com/2012/01/30/how-to-log-net-binding-errors-when-you-dont-have-fuslogvw-exe/
在以下位置找到:http: //pauliom.com/2012/01/30/how-to-log-net-binding-errors-when-you-dont-have-fuslogvw-exe/
Thanks
谢谢
回答by xav
You also need to create a LogFailureskey in HKLM\SOFTWARE\Microsoft\Fusionwith a DWORDvalue of 1to turn on the log. You should set this value back to 0 when not testing otherwise it will keep populating the log. Create a folder eg. C:\fuslogand refer to it in the Custom log path in Settings in the Assembly Binding Log Viewer.
您还需要创建一个LogFailures关键HKLM\SOFTWARE\Microsoft\Fusion与DWORD价值1来打开日志。不测试时,您应该将此值设置回 0,否则它将继续填充日志。创建一个文件夹,例如。C:\fuslog并在程序集绑定日志查看器的设置中的自定义日志路径中引用它。
回答by Dror Helper
You might be using the wrong version of fuslogvw. check c:\program files\microsoft SDKs or c:\program files\Microsoft.net\SDK for a different version of the utility.
您可能使用了错误版本的 fuslogvw。检查 c:\program files\microsoft SDKs 或 c:\program files\Microsoft.net\SDK 以获取不同版本的实用程序。
回答by Josef Stadelmann
it is essential that you turn of HKLM\SOFTWARE\Microsoft\Fusion to 0 because it makes your system visual studio and other stuff so slow, just because logging needs time as hundred of file handels open. I have seen entries and log files for programs I was never asking for a log!
将 HKLM\SOFTWARE\Microsoft\Fusion 设置为 0 至关重要,因为它会使您的系统 Visual Studio 和其他东西变得如此缓慢,仅仅因为在打开数百个文件处理程序时日志记录需要时间。我已经看到了我从未要求过日志的程序的条目和日志文件!
Here I give you an example of what happens over time; I was not aware that fusion / fuslogvw logs all kind of events. That should be made cleare when the tools starts, that it continues to log and make your system slow, mainly if VS starts up with very large projects. I am thanksfull for this Information about how to turn it off. I will use it again when I need it because it is otherwhise an excellent tool. But in this regard this is just stupid. Josef
在这里,我给你一个例子,说明随着时间的推移会发生什么;我不知道 fusion / fuslogvw 会记录所有类型的事件。应该在工具启动时明确说明,它会继续记录日志并使您的系统变慢,主要是在 VS 启动非常大的项目时。我很感谢这个关于如何关闭它的信息。当我需要它时,我会再次使用它,因为它是一个出色的工具。但在这方面,这只是愚蠢的。约瑟夫
E:\Users\C770817\fuslogvw>tree
Folder PATH listing for volume LaCie
Volume serial number is B098-2591
E:.
├───Default
│ ├───4fe3a146
│ ├───6bf3b89
│ ├───758f6436
│ ├───92c7e946
│ ├───addinutil.exe
│ ├───aspnet_regiis.exe
│ ├───b210afcc
│ ├───CreateSchedulerFolder.exe
│ ├───dbb8b39f
│ ├───devenv.exe
│ ├───Duplicati.CommandLine.exe
│ ├───DuplicatiBgMgr.exe
│ ├───e04f35ff
│ ├───EA.exe
│ ├───edd6a3ed
│ ├───ElementsHelper.exe
│ ├───Eval32.exe
│ ├───EXCEL.EXE
│ ├───FxCopCmd.exe
│ ├───FX_{b05566ac-fe9c-4368-be02-7a4cbb7cbe11}
│ ├───FX_{b05566ad-fe9c-4363-be05-7a4cbb7cb510}
│ ├───FX_{b05566ae-fe9c-4363-be05-7a4cbb7cb510}
│ ├───FX_{c7b8fb06-bfe1-4c2e-9217-7a69a95bbac4}
│ ├───FX_{c7b8fb07-bfe1-4c2e-9217-7a69a95bbac4}
│ ├───FX_{d1764f60-2007-4ad4-a1e8-e7714ed4eb5d}
│ ├───GfxUIEx.exe
│ ├───InetMgr.exe
│ ├───InstallUtil.exe
│ ├───IntelliTrace.exe
│ ├───ISSDeployer.exe
│ ├───ISSLauncherTray.exe
│ ├───ISSShortcutManager.exe
│ ├───JabraCiscoJabberDriver.exe
│ ├───JabraDeviceService.exe
│ ├───LocalAccountMgmt.exe
│ ├───MFPPrinterTool.exe
│ ├───Microsoft.VisualStudio.Web.Host.exe
│ ├───mmc.exe
│ ├───MSBuild.exe
│ ├───mscorsvw.exe
│ ├───msdeploy.exe
│ ├───MsDepSvc.exe
│ ├───msvsmon.exe
│ ├───OxygeneRegClean2.exe
│ ├───OxygeneSchemaCatalog.exe
│ ├───pcee4.exe
│ ├───powershell.exe
│ ├───powershellcustomhost.exe
│ ├───RegisterEvent.exe
│ ├───RemObjects.Everwood.LicenseManager.exe
│ ├───sdiagnhost.exe
│ ├───SmsClrHost.exe
│ ├───SMSvcHost.exe
│ ├───Spezpla.exe
│ ├───Spezpla.vshost.exe
│ ├───sqlservr.exe
│ ├───SvcConfigEditor.exe
│ ├───Toolbox2Test.exe
│ ├───TrayCtrlNotify.exe
│ ├───UITServ.exe
│ ├───UserGUI.exe
│ ├───UserInstallTool.exe
│ ├───VideoHost.exe
│ ├───VS2012.4.exe
│ ├───VSIXInstaller.exe
│ ├───vssphost4.exe
│ ├───w3wp.exe
│ ├───WCFSpezplaServiceClient.exe
│ ├───WCFSpezplaServiceClient.vshost.exe
│ ├───WcfSvcHost.exe
│ ├───WebBrowserServer.exe
│ ├───WebDev.WebServer40.exe
│ ├───WebPlatformInstaller.exe
│ ├───WINPROJ.EXE
│ └───wsmprovhost.exe
└───NativeImage
├───4fe3a146
├───6bf3b89
├───758f6436
├───92c7e946
├───addinutil.exe
├───aspnet_regiis.exe
├───b210afcc
├───CreateSchedulerFolder.exe
├───dbb8b39f
├───devenv.exe
├───Duplicati.CommandLine.exe
├───DuplicatiBgMgr.exe
├───e04f35ff
├───EA.exe
├───edd6a3ed
├───ElementsHelper.exe
├───Eval32.exe
├───EXCEL.EXE
├───FxCopCmd.exe
├───FX_{b05566ac-fe9c-4368-be02-7a4cbb7cbe11}
├───FX_{b05566ad-fe9c-4363-be05-7a4cbb7cb510}
├───FX_{b05566ae-fe9c-4363-be05-7a4cbb7cb510}
├───FX_{c7b8fb06-bfe1-4c2e-9217-7a69a95bbac4}
├───FX_{c7b8fb07-bfe1-4c2e-9217-7a69a95bbac4}
├───FX_{d1764f60-2007-4ad4-a1e8-e7714ed4eb5d}
├───GfxUIEx.exe
├───InetMgr.exe
├───InstallUtil.exe
├───IntelliTrace.exe
├───ISSDeployer.exe
├───ISSLauncherTray.exe
├───ISSShortcutManager.exe
├───JabraCiscoJabberDriver.exe
├───JabraDeviceService.exe
├───LocalAccountMgmt.exe
├───MFPPrinterTool.exe
├───Microsoft.VisualStudio.Web.Host.exe
├───mmc.exe
├───MSBuild.exe
├───mscorsvw.exe
├───msdeploy.exe
├───MsDepSvc.exe
├───msvsmon.exe
├───OxygeneRegClean2.exe
├───OxygeneSchemaCatalog.exe
├───pcee4.exe
├───powershell.exe
├───powershellcustomhost.exe
├───RegisterEvent.exe
├───RemObjects.Everwood.LicenseManager.exe
├───sdiagnhost.exe
├───SmsClrHost.exe
├───SMSvcHost.exe
├───Spezpla.exe
├───Spezpla.vshost.exe
├───SpezplaPlanTest.exe
├───sqlservr.exe
├───SvcConfigEditor.exe
├───Toolbox2Test.exe
├───TrayCtrlNotify.exe
├───UITServ.exe
├───UserGUI.exe
├───UserInstallTool.exe
├───VideoHost.exe
├───VS2012.4.exe
├───VSIXInstaller.exe
├───vssphost4.exe
├───w3wp.exe
├───WCFSpezplaServiceClient.exe
├───WCFSpezplaServiceClient.vshost.exe
├───WcfSvcHost.exe
├───WebBrowserServer.exe
├───WebDev.WebServer40.exe
├───WebPlatformInstaller.exe
├───WINPROJ.EXE
└───wsmprovhost.exe
E:\Users\C770817\fuslogvw>
E:\Users\C770817\fuslogvw>tree > x.txt
E:\Users\C770817\fuslogvw>
回答by Waescher
I wrote an assembly binding log viewer named Fusion++ and put it on GitHub. It writes the registry keys you need to have to activate the logging on your machine and parses the logs afterwards so you don't have to go file hunting.
我编写了一个名为Fusion++的程序集绑定日志查看器并将其放在 GitHub 上。它会写入您在机器上激活日志记录所需的注册表项,然后解析日志,这样您就不必去寻找文件了。
You can get the latest release from hereor via chocolatey (choco install fusionplusplus).
您可以从这里或通过 Chocolatey ( choco install fusionplusplus)获取最新版本。
I hope you and some of the visitors in here can save some worthy lifetime minutes with it.
我希望你和这里的一些游客可以用它来节省一些有价值的终生时间。


