OFN.lpstrFileの内容をそのままファイル(root.txt)に出力してみてください。
以下にサンプルを記載します。
DIM OFN As OPENFILENAME
DIM OFILE[255] AS Char
DIM HFILEO AS HANDLE
DIM DWFILESIZE AS DWord
DIM DWACCESSBYTE AS DWord
ZeroMemory(VarPtr(OFN),Len(OFN))
OFN.lStructSize = Len(OFN)
OFN.hwndOwner = NULL
OFN.lpstrFilter = EX"すべてのファイル(*.*)\0*\0\0"
OFN.nFilterIndex = 1
OFN.lpstrFile = OFILE
OFN.nMaxFile = MAX_PATH
OFN.lpstrInitialDir = NULL
IF GetOpenFileName(OFN) = 0 THEN
MessageBox(NULL,"キャンセルされました。","TEST",MB_OK)
ELSE
HFILEO = CreateFile("root.txt",GENERIC_WRITE,0,BYVAL 0,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,0)
/* ここでフルパスの内容をroot.txtに出力します */
WriteFile(HFILEO,OFN.lpstrFile,lstrlen(OFN.lpstrFile),VarPtr(DWACCESSBYTE),BYVAL 0)
CloseHandle(HFILEO)
MessageBox(NULL,"root.txtに出力しました","TEST",MB_OK)
END IF
END
ためしに上記のソースコードをコンパイルと実行してください。
期待どおりの結果になると思います。
よろしくお願いします。
OFN.lpstrFileの内容をそのままファイル(root.txt)に出力してみてください。 以下にサンプルを記載します。
DIM OFN As OPENFILENAME DIM OFILE[255] AS Char DIM HFILEO AS HANDLE DIM DWFILESIZE AS DWord DIM DWACCESSBYTE AS DWord ZeroMemory(VarPtr(OFN),Len(OFN)) OFN.lStructSize = Len(OFN) OFN.hwndOwner = NULL OFN.lpstrFilter = EX"すべてのファイル(*.*)\0*\0\0" OFN.nFilterIndex = 1 OFN.lpstrFile = OFILE OFN.nMaxFile = MAX_PATH OFN.lpstrInitialDir = NULL IF GetOpenFileName(OFN) = 0 THEN MessageBox(NULL,"キャンセルされました。","TEST",MB_OK) ELSE HFILEO = CreateFile("root.txt",GENERIC_WRITE,0,BYVAL 0,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,0) /* ここでフルパスの内容をroot.txtに出力します */ WriteFile(HFILEO,OFN.lpstrFile,lstrlen(OFN.lpstrFile),VarPtr(DWACCESSBYTE),BYVAL 0) CloseHandle(HFILEO) MessageBox(NULL,"root.txtに出力しました","TEST",MB_OK) END IF END
ためしに上記のソースコードをコンパイルと実行してください。 期待どおりの結果になると思います。 よろしくお願いします。
|