CFileDialog出错

yuqianyi1974 2008-11-18 10:23:51
不知道为什么出错,红色部分
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
int wmId, wmEvent;
PAINTSTRUCT ps;
HDC hdc;
TCHAR szHello[MAX_LOADSTRING];
LoadString(hInst, IDS_HELLO, szHello, MAX_LOADSTRING);
CFileDialog fdlg(FALSE, NULL, NULL, NULL); //这里
switch (message)
{
case WM_COMMAND:
wmId = LOWORD(wParam);
wmEvent = HIWORD(wParam);
// Parse the menu selections:
switch (wmId)
{
case IDM_ABOUT:
DialogBox(hInst, (LPCTSTR)IDD_ABOUTBOX, hWnd, (DLGPROC)About);
break;
case IDM_EXIT:
DestroyWindow(hWnd);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
break;
case WM_PAINT:
hdc = BeginPaint(hWnd, &ps);
// TODO: Add any drawing code here...
RECT rt;
GetClientRect(hWnd, &rt);
DrawText(hdc, szHello, strlen(szHello), &rt, DT_CENTER);
EndPaint(hWnd, &ps);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
return 0;
}
...全文
246 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuqianyi1974 2008-11-18
  • 打赏
  • 举报
回复
改用api了,好用了,谢谢大家!
yuqianyi1974 2008-11-18
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 dayong576 的回复:]
CFileDialog fdlg(FALSE, NULL, NULL, NULL); //这里
代码想实现什么功能,能告诉我么?
是不是没有写完呢,我想吃饭去了,关注学习了
LZ加油
[/Quote]
还没用到呢,不过声明一下,运行就出错了,断言。
feng_doudou 2008-11-18
  • 打赏
  • 举报
回复
CFileDialog( BOOL bOpenFileDialog, LPCTSTR lpszDefExt = NULL, LPCTSTR lpszFileName = NULL, DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, LPCTSTR lpszFilter = NULL, CWnd* pParentWnd = NULL );
改成CFileDialog fdlg(FALSE, NULL,NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,NULL, NULL); 试下看行不


dayong576 2008-11-18
  • 打赏
  • 举报
回复
CFileDialog fdlg(FALSE, NULL, NULL, NULL); //这里
代码想实现什么功能,能告诉我么?
是不是没有写完呢,我想吃饭去了,关注学习了
LZ加油
dayong576 2008-11-18
  • 打赏
  • 举报
回复
还有我没有看懂
CFileDialog fdlg(FALSE, NULL, NULL, NULL); //这里
代码在你的回调函数中起的作用
lwx300 2008-11-18
  • 打赏
  • 举报
回复
Windows API一日一练(92)GetOpenFileName函数
http://blog.csdn.net/caimouse/archive/2007/12/21/1958035.aspx

Windows API一日一练(93)GetSaveFileName函数
http://blog.csdn.net/caimouse/archive/2007/12/25/1967130.aspx
dayong576 2008-11-18
  • 打赏
  • 举报
回复
是编译错误么??
如果是编译错误
在对应的头文件里面添加#include <Afxdlgs.h>
oakfire 2008-11-18
  • 打赏
  • 举报
回复
那么试着用下GetOpenFileName,MSDN有详细说明,我没用过。
yuqianyi1974 2008-11-18
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 lfchen 的回复:]
改成
CFileDialog fdlg(FALSE); //这里
[/Quote]
也试了,不好用
yuqianyi1974 2008-11-18
  • 打赏
  • 举报
回复
CFileDialog用sdk怎样实现,请指教
yuqianyi1974 2008-11-18
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 oakfire 的回复:]
如果你不是用MFC,那么不能用CFileDialog这个MFC类,应该用SDK函数 打开文件似乎是用GetOpenFileName?
[/Quote]
确实没有用mfc,难到就不能用CFileDialog吗?
oakfire 2008-11-18
  • 打赏
  • 举报
回复
哦,没看到楼上回复,多言了。
oakfire 2008-11-18
  • 打赏
  • 举报
回复
如果你不是用MFC,那么不能用CFileDialog这个MFC类,应该用SDK函数 打开文件似乎是用GetOpenFileName?
yuqianyi1974 2008-11-18
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 oakfire 的回复:]
一般这种错误你可以仔细瞧瞧Error信息,如果还是不懂,可以上MSDN瞧瞧函数说明。不懂的英文单词可以查字典,金山词霸很好用。
[/Quote]
运行出现断言错误。
lwx300 2008-11-18
  • 打赏
  • 举报
回复
试试将参数写完整,最后一个参数为:CWnd::FromHandle(hWnd)。
dayong576 2008-11-18
  • 打赏
  • 举报
回复
CFileDialog fdlg(FALSE, NULL, NULL, NULL); //这里
没有错误,正确的
CFileDialog::CFileDialog
Call this member function to construct a standard Windows file dialog box-object. Either a Open or Save As dialog box is constructed, depending on the value of bOpenFileDialog.

Syntax
CFileDialog( BOOL bOpenFileDialog, LPCTSTR lpszDefExt = NULL, LPCTSTR lpszFileName = NULL, DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, LPCTSTR lpszFilter = NULL, CWnd* pParentWnd = NULL );

At a Glance
Header File Afxdlgs.h
Platforms
Versions 1.0 and later
Complete documentation Visual C++ documentation
好好看看这个
可能是头文件没有include Afxdlgs.h???
一条晚起的虫 2008-11-18
  • 打赏
  • 举报
回复
改成
CFileDialog fdlg(FALSE); //这里
oakfire 2008-11-18
  • 打赏
  • 举报
回复
一般这种错误你可以仔细瞧瞧Error信息,如果还是不懂,可以上MSDN瞧瞧函数说明。不懂的英文单词可以查字典,金山词霸很好用。
yuqianyi1974 2008-11-18
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 Nosky100 的回复:]
第四个参数可以等于NULL吗?
修改成OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT试试呢?
[/Quote]
试了,不好用
Nosky100 2008-11-18
  • 打赏
  • 举报
回复
第四个参数可以等于NULL吗?
修改成OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT试试呢?

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧