クラスに投げ込む前にうまくいきました。この型キャストエラーを解決するための助け?構造体からLPVOIDへの型キャスト
エラー
error C2440: 'type cast' : cannot convert from 'IAT CInjector::* ' to 'LPVOID'
コード参照さ
WriteProcessMemory(CInjector::_hProc,
CInjector::_iatBaseAddress,
(LPVOID) & CInjector::_iat, // typecasting error?
sizeof (IAT),
NULL);
クラス
class CInjector
{
private:
...
IAT _iat;
...
}
typedefの
typedef struct _IAT {
PLOADLIBRARYA pLoadLibraryA;
PGETPROCADDRESS pGetProcAddress;
FNMESSAGEBOX fnMessageBox;
} IAT;
/facepalm;とにかくシングルトンだから、そこに静的なキーワードを投げるだけだ。しかし、 "ポインタへのメンバー選択"についての情報をありがとう。 –
@Gio Borje-シングルトンの場合、シングルトンの '_iat'フィールドのアドレスを取ることができます。それは常に有効なオプションです。 – templatetypedef