BOOL (WINAPI *ZTSQueryUserToken)(ULONG SessionId, PHANDLE phToken) = NULL;
爲什麼用WINAPI這個C++語法是什麼意思?
對我來說,它看起來像一個結構或東西正在創建一個變量,但我從來沒有見過這種類型的語法,這樣能有人打破它給我嗎?
BOOL (WINAPI *ZTSQueryUserToken)(ULONG SessionId, PHANDLE phToken) = NULL;
爲什麼用WINAPI這個C++語法是什麼意思?
對我來說,它看起來像一個結構或東西正在創建一個變量,但我從來沒有見過這種類型的語法,這樣能有人打破它給我嗎?
WINAPI約定通常用於調用Win32 API函數。 WINAPI簡直是__stdcall
#define WINAPI __stdcall
的__stdcall
調用約定在一般以下特點:由右至左
所以留下__stdcall
,使用"Spiral Rule"獲得
+----------------------+
| +----------------+ |
| | | |
| ^ | |
BOOL (WINAPI* ZTSQueryUserToken ) (ULONG SessionId, PHANDLE phToken)
^ ^ | |
| +--------------------+ |
+---------------------------------+
因此,標識符:
ZTSQueryUserToken
是__stdcall
)函數具有類型參數ULONG
和PHANDLE
BOOL
而你的情況下,指針被分配到NULL
。
這是一個函數指針與調用約定。查看螺旋規則。 – chris
那麼你可以使用這個函數指針與任何具有這兩個參數的函數?我沒有看到WINAPI部分與此有關。 –
這是調用約定__stdcall。 –