求教:GetOpenFileName的使用?

titi_lima 2002-08-09 08:56:01
我定义了一个OPENFILENAME结构的对象op,又对其做了初始化,然后这样写:
if(GetOpenFileName(&op)){/*Do Something*/}
为何不能显示“打开”对话框?
如何解决,谢了!
...全文
15 点赞 收藏 2
写回复
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
howtotell 2002-08-10
你自己看看吧,这是我写的,运行很正常.

OPENFILENAME ofn ;
TCHAR szFullName[_MAX_PATH];


::ZeroMemory (&ofn, sizeof(OPENFILENAME)) ;
szFullName[0] = TEXT('\0') ;
ofn.lStructSize = sizeof (OPENFILENAME) ;
ofn.hwndOwner = m_hWnd;
ofn.hInstance = NULL ;
ofn.lpstrFilter = szFilter ? szFilter : TEXT("All Files (*.*)\0*.*\0\0") ;
ofn.lpstrCustomFilter = NULL ;
ofn.nMaxCustFilter = 0 ;
ofn.nFilterIndex = 0 ;
ofn.nMaxFile = MAX_PATH ;
ofn.nMaxFileTitle = MAX_PATH ;
ofn.lpstrInitialDir = "c:\\" ;
ofn.lpstrTitle = "另存为";
sprintf(szFullName,m_strPathD);
ofn.lpstrFile = szFullName ;
ofn.nFileExtension = 0 ;
ofn.lpstrDefExt = TEXT("*") ;
ofn.lCustData = 0 ;
ofn.lpfnHook = NULL ;
ofn.lpTemplateName = NULL ;
ofn.Flags = OFN_ENABLESIZING | OFN_OVERWRITEPROMPT ;

if(!::GetSaveFileName (&ofn))
return;

::CopyFile(m_strPathD,ofn.lpstrFile,FALSE);
回复
Areslee 2002-08-09
首先把op清零
然后按要求设置以下几个成员的值:
lpstrfile
maxfile(?)
回复
发动态
发帖子
VC/MFC
创建于2007-09-28

1.5w+

社区成员

VC/MFC相关问题讨论
申请成为版主
社区公告
暂无公告