gsgetfile.cpp
来自「GPlayer for Pocket PC,移动设备上的播放器」· C++ 代码 · 共 51 行
CPP
51 行
#include "gsgetfile.h"
#include "filedlg.h"
HINSTANCE g_hInst = NULL;
BOOL CheckPointer(LPOPENFILENAME pofn)
{
if (pofn->lStructSize != sizeof(OPENFILENAME))
return FALSE;
if (pofn->lpstrFile == NULL ||
pofn->nMaxFile == 0)
return FALSE;
for (UINT i = 0; i < pofn->nMaxFile; i++) {
if (pofn->lpstrFile[i] == NULL)
return TRUE;
}
return FALSE;
}
BOOL WINAPI gsGetOpenFileName(LPOPENFILENAME pofn)
{
if (!CheckPointer(pofn))
return FALSE;
pofn->hInstance = g_hInst;
CFileDialog* pDlg = new CFileDialog(pofn);
BOOL fRet = pDlg->DoModal() == IDOK;
delete pDlg;
return fRet;
}
BOOL WINAPI gsGetSaveFileName(LPOPENFILENAME pofn)
{
if (!CheckPointer(pofn))
return FALSE;
pofn->hInstance = g_hInst;
CFileDialog* pDlg = new CFileDialog(pofn);
BOOL fRet = pDlg->DoModal(TRUE) == IDOK;
delete pDlg;
return fRet;
}
BOOL APIENTRY DllMain(HANDLE hinstDLL, DWORD dwReason, LPVOID lpvReserved)
{
g_hInst = (HINSTANCE)hinstDLL;
return TRUE;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?