私はちょっと混乱しています。ファイルがWS_EX_ACCEPTFILESとウィンドウ上にドラッグされたとき、それはDragQueryFileにWPARAMを渡すことはできませんか?
https://msdn.microsoft.com/en-us/library/windows/desktop/bb774303(v=vs.85).aspx
WPARAM =(WPARAM)(HDROP)あるhDropによれば、WM_DROPFILESにUINTメッセージを設定WndProcメソッド関数へのPostMessageを配置し、フラグが立てられ、ですから、私はWPARAMを使ってHDROPを初期化するか、それをDragQueryFileに渡すことができますか?
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) {
switch (message) {
case WM_CREATE:
return 0;
case WM_DROPFILES:
TCHAR* FilePath;
HDROP hDrop = wParam; //wParam cannot be used to ini. an entity of type HDROP
//HDROP hdrop = (HDROP)wParam; initialization of hDrop is skipped by case label
DragQueryFile(wParam, 0, FilePath, 0); //wParam not compatible
return 0;
case WM_DESTROY:
PostQuitMessage(0);
return 0;
}
return DefWindowProc(hwnd, message, wParam, lParam);
}
あらゆる種類のヘルプがあります。
ここに 'C++'タグがあるのはなぜですか?これは純粋なCです。 – i486
@ i486:C++コンパイラをパスしている場合、C++です。私はCがその誤りを与えると確信していない。 –
@BoundaryImposition C++コンパイラは、 '.c'ソースファイルのCコンパイラとして動作します。 Win32 APIはC言語であり、上記の例ではC++はありません。 – i486