草庐IT

getSaveFileName

全部标签

windows - GetSaveFileName() 不返回 XP 上 CD 刻录暂存区的路径

我有一个功能,可以将文件保存到用户指定的位置。我正在使用GetSaveFileName()来显示另存为对话框。然后我使用它返回的路径将文件写出到该位置。我注意到当用户在XP机器上选择CD-RW驱动器时它不起作用。同样的过程在Vista和Windows7上也能正常工作。我做了以下观察:GetSaveFileName()返回的路径返回在Win7/Vista上选择CD刻录机根文件夹(在我的例子中是F:)时临时暂存区的路径。在XP上,选择CD刻录机根文件夹只会返回F:\作为路径。但是,如果我使用“另存为”对话框创建子文件夹并将文件保存在此文件夹中(例如F:\folder),则路径为临时文件夹的

windows - 使用 GetSaveFileName。我指定了 OFN_EXPLORER 标志,但总是得到旧的对话框外观,除非我避免同时使用 Hook 和模板

使用GetSaveFileName。我指定了OFN_EXPLORER标志,但我总是得到旧的对话框外观,除非我避免同时使用Hook和模板。(OPENFILENAME结构中的lpfnHook和lpfnTemplate(以及它们各自的“启用”标志))如果我避免只使用一个或另一个,我仍然会得到旧的对话框外观。我也没有尝试使用模板,但使用了钩子(Hook)......但总是从它返回TRUE(我看到提到从钩子(Hook)中“总是返回false”作为获取旧接口(interface)的一种方式)。不过,它似乎没有任何效果。编辑:添加相关代码:ofn.lStructSize=sizeof(OPENFIL

c++ - 替换或修改外部应用程序中的 API 调用(GetOpenFileName、GetSaveFileName)

我有一个调用GetOpenFileNameA和GetSaveFileNameA的旧应用程序。两次调用都是错误的。应用程序崩溃!我已经使用OllyDbg和APIMonitor来读取存储在OPENFILENAME结构中的大小。该结构的大小为76字节(使用Windows7x64进行测试)。调用GetOpenFileNameA或GetSaveFileNameA时出现访问冲突异常。我假设在运行时窗口试图读取88字节而不是76字节。看看这个:http://dotnetbutchering.blogspot.de/2007/10/vc-60-getting-0xc0000005-access.htm

c++ - 在 QFileDialog::getSaveFileName 中指定默认扩展名

在Win32函数GetSaveFileName中是否有等同于OPENFILENAME结构的lpstrDefExt成员?这是来自MSDN的描述:LPCTSTRlpstrDefExtThedefaultextension.GetOpenFileNameandGetSaveFileNameappendthisextensiontothefilenameiftheuserfailstotypeanextension.Thisstringcanbeanylength,butonlythefirstthreecharactersareappended.Thestringshouldnotconta

python - 如何使用 QFileDialog 选项并检索 saveFileName?

我正在尝试使用QFileDialog来提示用户提供文件名和保存文本文件的位置。我玩过QtGui.QFileDialog.getSaveFileName,但我对使用一些选项很感兴趣,比如设置默认后缀,并启用保存文件对话框的详细View,据我所知,这不是可以单独使用getSaveFileName。每当我设置这些时,getSaveFileName对话框就会忽略它们。所以,我最终得到了这样的结果:dlg=QtGui.QFileDialog(self)dlg.setWindowTitle('PrintThings')dlg.setViewMode(QtGui.QFileDialog.Detail

c++ - 如何在 win32 中使用 GetSaveFileName 保存文件?

我写这段代码来获取文件名来保存我的文件:#include"stdafx.h"#includeint_tmain(intargc,_TCHAR*argv[]){OPENFILENAMEofn;charszFileName[MAX_PATH]="";ZeroMemory(&ofn,sizeof(ofn));ofn.lStructSize=sizeof(ofn);ofn.hwndOwner=NULL;ofn.lpstrFilter=(LPCWSTR)L"TextFiles(*.txt)\0*.txt\0AllFiles(*.*)\0*.*\0";ofn.lpstrFile=(LPWSTR)s

c++ - QFileDialog::getSaveFileName 和默认的 selectedFilter

我有getSaveFileName和一些过滤器,我希望在用户打开“保存”对话框时选择其中之一。Qt文档说明如下:ThedefaultfiltercanbechosenbysettingselectedFiltertothedesiredvalue.我尝试了以下变体:QStringselFilter="Allfiles(*.*)";QFileDialog::getSaveFileName(this,"Savefile",QDir::currentPath(),"Textfiles(*.txt);;Allfiles(*.*)",&selFilter);但是当对话框出现时,“文本文件”过滤器