掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
正確にパスを取得するには? (ID:54455)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
ソースはこんな感じです↓。 #include <windows.h> #pragma comment(lib, "winmm.lib") // winmm.libをリンク #define WS_NORESIZE WS_OVERLAPPED | WS_MINIMIZEBOX | WS_CAPTION | WS_SYSMENU /* 変数宣言 */ int Width = 640; int Height = 480; LPSTR lpFileName; //ファイル名 MCI_OPEN_PARMS Mop; MCIERROR mciErr; TCHAR mciErrStr[512]; /* プロトタイプ宣言 */ LRESULT CALLBACK WindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam); int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd) { HWND hWnd; MSG Msg; WNDCLASS Wc; lpFileName = lpCmdLine; //ファイル名の取得 ZeroMemory(&Wc, sizeof (WNDCLASS)); Wc.cbClsExtra = 0; Wc.cbWndExtra = 0; Wc.hbrBackground = (HBRUSH)COLOR_WINDOW; Wc.hCursor = LoadCursor(NULL, IDC_ARROW); Wc.hIcon = LoadIcon(NULL, IDI_APPLICATION); Wc.lpfnWndProc = (WNDPROC)WindowProc; Wc.lpszClassName = TEXT("Form"); Wc.lpszMenuName = NULL; Wc.style = CS_HREDRAW | CS_VREDRAW; if (RegisterClass(&Wc) == 0) return -1; hWnd = CreateWindowEx(WS_EX_CONTROLPARENT | WS_EX_WINDOWEDGE, TEXT("Form"), TEXT("Caption"), WS_NORESIZE, 0, 0, Width, Height, NULL, NULL, hInstance, NULL); if (hWnd == NULL) return -1; ShowWindow(hWnd, SW_SHOW); while (GetMessage(&Msg, NULL, 0, 0)) { TranslateMessage(&Msg); DispatchMessage(&Msg); } return Msg.wParam; } LRESULT CALLBACK WindowProc(HWND hWnd, UINT uMsg, WPARAM wPalam, LPARAM lParam) { switch (uMsg) { case WM_CREATE: ZeroMemory(&Mop, sizeof (MCI_OPEN_PARMS)); Mop.dwCallback = (DWORD)hWnd; Mop.lpstrAlias = NULL; Mop.lpstrDeviceType = (LPCSTR)MCI_DEVTYPE_WAVEFORM_AUDIO; Mop.lpstrElementName = lpFileName; mciErr = mciSendCommand(0, MCI_OPEN, MCI_OPEN_TYPE | MCI_OPEN_TYPE_ID | MCI_OPEN_ELEMENT, (DWORD)&Mop); if (mciErr) { mciGetErrorString(mciErr, mciErrStr, 512); MessageBox(hWnd, mciErrStr, NULL, MB_OK | MB_ICONERROR); } else mciSendCommand(Mop.wDeviceID, MCI_PLAY, 0, 0); break; case WM_DESTROY: mciSendCommand(Mop.wDeviceID, MCI_CLOSE, 0, 0); PostQuitMessage(0); break; default: return (DefWindowProc(hWnd, uMsg, wPalam, lParam)); } return 0; }
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.