【发布时间】:2012-04-11 04:40:13
【问题描述】:
我正在尝试构建一个宏,在保存之前格式化所有修改过的文件。
Public Module ReformatAndSave
Sub SingleFile()
DTE.ExecuteCommand("ReSharper.ReSharper_SilentCleanupCode")
DTE.ActiveDocument.Save()
End Sub
Sub AllFiles()
For Each doc As Document In DTE.Documents
If Not doc.Saved Then
doc.Activate()
DTE.ExecuteCommand("ReSharper.ReSharper_SilentCleanupCode")
DTE.ActiveDocument.Save()
End If
Next
End Sub
End Module
这会导致错误
对 COM 组件的调用已返回错误 HRESULT E_FAIL。
当我改用它时它会起作用:
DTE.ExecuteCommand("ReSharper.ReSharper_CleanupCode")
对于单个文件,我可以接受这种解决方案,但在保存所有文件时选择配置文件很烦人。
我使用 ReSharper 6.1.1000.82。这个错误似乎相当古老:http://youtrack.jetbrains.com/issue/RSRP-179846
是否可以通过收集所有修改的文件并为所有文件执行一次有效的 CleanUpCode 命令来解决此错误。 我可以手动选择许多文件并手动对这些文件执行清理。我想在保存时自动对所有修改过的文件执行此操作。
【问题讨论】:
标签: vb.net visual-studio-2010 exception macros resharper