// マルチバイト文字バッファ pm%d
// 引数バッファ a%d
+ #pragma warning(disable:4102)
#define START_ROUTINE do{
+#define END_ROUTINE }while(0);
+
+/*
#define END_ROUTINE }while(0);end_of_routine:
#define QUIT_ROUTINE goto end_of_routine;
+*/
+ int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nCmdShow)
+ {
+ int r = 0;
+ char* pm0 = NULL;
+ START_ROUTINE
+ pm0 = DuplicateWtoM(lpCmdLine, -1);
+ r = WinMainM(hInstance, hPrevInstance, pm0, nCmdShow);
+ END_ROUTINE
+ FreeDuplicatedString(pm0);
+ return r;
+ }
+
+ HMODULE LoadLibraryM(LPCSTR lpLibFileName)
+ {
+ HMODULE r = NULL;
+ wchar_t* pw0 = NULL;
+ START_ROUTINE
+ pw0 = DuplicateMtoW(lpLibFileName, -1);
+ r = LoadLibraryW(pw0);
+ END_ROUTINE
+ FreeDuplicatedString(pw0);
+ return r;
+ }
+
HANDLE CreateFileM(LPCSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile)
{
HANDLE r = INVALID_HANDLE_VALUE;