im 尝试使程序女巫将通过进程 ID 获取进程的命令行。 我使用 eclipse c++ 和 mingw 编译器
所以我找到了一个 1 个教程如何做到这一点,它需要 ntstatus,就像我在教程中包含的那样#include <ntstatus.h>
我添加了代码的第一部分,即:
typedef NTSTATUS (NTAPI *_NtQueryInformationProcess)(
HANDLE ProcessHandle,
DWORD ProcessInformationClass,
PVOID ProcessInformation,
DWORD ProcessInformationLength,
PDWORD ReturnLength
);
我得到了这 3 个错误:
expected primary-expression before '__attribute__
Type 'NTSTATUS' could not be resolved
typedef 'NTSTATUS' is initialized (use decltype instead)
在这一行上:typedef NTSTATUS (NTAPI *_NtQueryInformationProcess)(
我用谷歌搜索了这个问题,但我找不到它......
NTSTATUS 定义于
#include <winternl.h>
如
typedef _Return_type_success_(return >= 0) LONG NTSTATUS;
其值定义在
#include <ntstatus.h>
Thee 也需要是定义_WIN32_WINNT
,否则<winternl.h>
不会生成任何代码。我的DLL项目只吐了Syntax error: NTSTATUS
.如何解决:
#include <windows.h>
#include <winternl.h>