IDebugClient8::OpenDumpFileWide2 方法 (dbgeng.h)
OpenDumpFileWide2 方法打开一个转储文件作为调试器目标。
语法
HRESULT OpenDumpFileWide2(
[in, optional] PCWSTR FileName,
[in] ULONG64 FileHandle,
[in] ULONG AlternateArch
);
参数
[in, optional] FileName
指定要打开的转储文件的名称 -- 除非 FileHandle 不为零,在这种情况下,仅当查询引擎以获取转储文件的名称时,才使用 FileName 。 FileName 必须包含文件扩展名。 FileName 可以包含相对路径或绝对路径;相对路径相对于启动调试器的目录。 FileName 也可以采用文件 URL 的形式,以“file://”开头。 如果 FileName (.cab) 文件指定了一个 cabinet 文件,则会搜索扩展名为 .kdmp 的第一个文件,然后是 .hdmp,然后是 .mdmp,最后.dmp。
[in] FileHandle
指定要打开的转储文件的文件句柄。 如果 FileHandle 为零,则使用 FileName 打开转储文件。 否则,如果 FileName 不为 NULL,则引擎在查询转储文件的名称时返回它。 如果 FileHandle 不为零且 FileName 为 NULL,则引擎将为文件名返回 HandleOnly 。
[in] AlternateArch
指定 AlternateArch 参数,该参数是IMAGE_FILE_MACHINE_* 常量。 有关详细信息,请参阅 映像文件计算机常量。
支持这两个常量。
IMAGE_FILE_MACHINE_AMD64:像图像在 x64 进程中运行一样加载
IMAGE_FILE_MACHINE_ARM64:加载,就像映像在 ARM64 进程中运行一样
仅当使用 OpenDumpFileWide2 打开图像文件 (而不是可映射到不同体系结构的转储文件) 时,此参数才相关。 例如 ARM64X,其中 DLL 可以加载到 x64/EC 进程或 ARM64 进程中。
默认情况下,有关 DLL 的信息使用映像标头定义的任何体系结构来显示。 如果使用不同的体系结构调用 OpenDumpFileWide2,将使用传递的体系结构显示信息。 这使你可以查看当 DLL 加载到该进程的体系结构时操作系统将应用的“修复”。
有关 ARM64X 的详细信息,请参阅 Arm64X PE 文件。
返回值
此方法也可能返回错误值。 有关更多详细信息 ,请参阅返回值 。
注解
在调用 WaitForEvent 方法之前,引擎不会完全附加到转储文件。 从进程或内核创建转储文件时,有关最后一个事件的信息将存储在转储文件中。 打开转储文件后,下次尝试执行时,引擎将为事件回调生成此事件。 只有这样,转储文件才会在调试会话中可用。
有关故障转储文件的详细信息,请参阅 转储文件目标。
要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | dbgeng.h (包括 Dbgeng.h) |