参考MSDN,所做的程序代码如下:
char buf[4000];
CFileDialog dlg(...OFN_ALLOWMULTISELECT,...);
dlg.m_ofn.lpstrFile=buf;
dlg.m_ofn.nMaxFile=4000;
编译和链接都没有错,但运行时报非法操作.怎么解决呀?
char buf[4000];
CFileDialog dlg(...OFN_ALLOWMULTISELECT,...);
dlg.m_ofn.lpstrFile=buf;
dlg.m_ofn.nMaxFile=4000;
编译和链接都没有错,但运行时报非法操作.怎么解决呀?
解决方案 »
- AfxMessageBox碰到一个奇怪的问题?
- 嘛。。。问个基础的问题。关键左键和右键同时按下的处理
- winpcap在VS2008下做的,编译报找不到数据类型pcap
- 怎样编手机输入法?
- TM2008的界面是用什么技术做的?
- vc中有输入URL,返回是该URL的源文件(就是IE中鼠标右键查看源文件) 功能的函数吗?
- 给一段win32中定时发送数据的程序把
- VC好象只支持宏__FILE__,__LINE__,但不支持__FUNCTION__,不知有没有好的替代方法?
- 两个DLL之间调用
- 关于消息队列-低级
- CFileDialog 调用后为什么多出两个线程?
- 请MFC高手帮忙?关于CFileDialog的特殊问题!
DWORD MAXFILE = 4000
dlg.m_ofn.nMaxFile = MAXFILE;
char* pc = new char[MAXFILE];
dlg.m_ofn.lpstrFile = pc;
dlg.m_ofn.lpstrFile[0] = NULL; int iReturn = dlg.DoModal();
if(iReturn == IDOK)
{
int nCount = 0;
POSITION pos = dlg.GetStartPosition();
while (pos != NULL)
{
dlg.GetNextPathName(pos);
nCount++;
}
CString str;
str.Format("Successfully opened %d files\n", nCount);
AfxMessageBox(str);
}
else if(iReturn == IDCANCEL)
AfxMessageBox("Cancel"); if(CommDlgExtendedError() == FNERR_BUFFERTOOSMALL)
AfxMessageBox("BUFFERTOOSMALL");
delete []pc;
如果需要进一步的信息,您可以参看:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmfc98/html/_mfc_cfiledialog.asp以及Q179372等有关信息。- 微软全球技术中心 VC技术支持本贴子以“现状”提供且没有任何担保,同时也没有授予任何权利。具体事项可参见使用条款
(http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。为了为您创建更好的讨论环境,请参加我们的用户满意度调查
(http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。
G O O D
?????????????????????????????
fear