我正在使用Inno Setup安装程序,该安装程序使用GetOpenFileName函数打开一个打开的文件对话框,供用户浏览并选择一个数据库文件。当用户选择文件时,数据库将运行,但安装程序只是尝试将文件的路径作为字符串来配置我们的软件。
在Windows XP上这不是问题,但我注意到在Windows 7上选择正在运行的数据库文件时会收到错误消息“此文件正在使用中。输入新名称或关闭打开的文件另一个程序。“
不确定是否有一种方法可以禁用该错误或另一种方式来打开不受限制的打开文件对话框。
提前致谢。
答案 0 :(得分:0)
如果您想尝试获取路径,那么BrowseForFolder函数可能是更好的选择。它显示一个对话框,允许用户选择路径。
Prototype:
function BrowseForFolder(const Prompt: String; var Directory: String; const NewFolderButton: Boolean): Boolean;
Description:
Displays a dialog box that enables the user to select a directory. The current value of Directory is used as the initially selected directory. If NewFolderButton is True, a New Folder button will be shown, allowing the user to create new folders. Returns True if the user selected a directory and clicked OK, False otherwise. The selected directory is returned in the Directory string.
Remarks:
On Windows versions prior to XP, passing False in the NewFolderButton parameter has no effect; the New Folder button will always be shown. This is a Windows limitation.