Rob*_*ger 3 vb.net exception-handling visual-sourcesafe try-catch-finally vb.net-2010
我使用以下代码访问VSS项目:
Dim sItem As String = "$/MyVssProject/InexistentFile.txt"
Dim oItem As SourceSafeTypeLib.VSSItem = Nothing
Try
oItem = m_oSourceSafe.VSSItem(sItem)
Catch ex As Runtime.InteropServices.COMException
MsgBox(ex.Message, MsgBoxStyle.Exclamation)
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Exclamation)
End Try
Run Code Online (Sandbox Code Playgroud)
我面临的问题是,当我尝试将实例获取到VSSDB中不存在的文件时,从而导致COMException,这基本上不会出现问题(我希望如此)。实际上,发生了异常,但是调试光标没有停留在捕获代码上,而是停留在“ oItem = m_oSourceSafe.VSSItem(sItem)”行上,显示标题为“ COMException越过本机/托管边界的对话框”。
从这里开始执行不会执行,直到我将sItem的内容更改为现有文件。
为什么未捕获到异常,如何实现?
环境:WinXP SP3 x86上带有.Net 2.0的VS2010
谢谢队友!
我发现了如何捕捉:
在项目的设置中,在“调试”选项卡上,选择“启用非托管代码调试”。从现在开始,您应该可以聊天该异常。
但是,这样做的缺点是,在单步执行代码时不再可以编辑代码。
| 归档时间: |
|
| 查看次数: |
4593 次 |
| 最近记录: |