首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MiniDumpWriteDump (C#)为特定进程生成零长度转储文件

MiniDumpWriteDump (C#)为特定进程生成零长度转储文件
EN

Stack Overflow用户
提问于 2015-11-23 10:17:24
回答 1查看 1K关注 0票数 0
  1. 在特定进程中执行MiniDumpWriteDump提供健康的转储文件。
  2. 从外部进程执行MiniDumpWriteDump ( hProcess和processId指向上述特定进程)提供了一个零长度转储文件。
  3. 与#2相同,仅指向FireFox,例如提供健康的转储文件

据我所知,我试图转储的特定进程是以低权限运行的,并且我的外部进程是从Administrator CMD窗口执行的。

代码语言:javascript
复制
[DllImport("dbghelp.dll",
            EntryPoint = "MiniDumpWriteDump",
            CallingConvention = CallingConvention.Winapi,
            CharSet = CharSet.Unicode,
            ExactSpelling = true,
            SetLastError = true)]
        private static extern bool MiniDumpWriteDump(IntPtr hProcess,
            uint processId,
            SafeHandle hFile,
            uint dumpType,
            IntPtr expParam,
            IntPtr userStreamParam,
            IntPtr callbackParam);

备注:

  • 我正在冲洗、关闭和正确处理文件流。
  • MiniDumpWriteDump返回false,GetLastWin32Error返回:-2147024597
  • 上述特定进程(点网服务器项目)具有与FireFox相同的安全性选项(例如,转储在Notepad++进程上工作)。
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-11-23 14:18:40

好的..。找到了解决办法..。

外部流程项目是为"AnyCPU“平台构建的(由于它不只是执行-64位命令,所以它运行了32位)。将其设置为x64可以转储另一个64位进程。

我建议任何遇到这个问题的人创建独立的项目,一个是32位,另一个是64位。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33868483

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档