我很确定有办法,但这可能是一个坏主意.您如何保证运行时在其内部处理过程中没有调用某些CRT函数errno?
出于同样的原因,你也不应该GetLastError直接打电话.在DllImportAttribute提供了SetLastError这样的运行时知道要立即抓住最后一个错误,并将其存储在托管代码可以读取使用的地方特性Marshal.GetLastWin32Error.
我认为在这种情况下你能做的最强大的事情就是制作一个C DLL来执行实际的C工作和捕获errno.(请注意,只是围绕errno捕获编写包装器仍然会有上述问题.)
| 归档时间: |
|
| 查看次数: |
2496 次 |
| 最近记录: |