openfile函数的使用

yufly 2004-10-24 01:31:07
openfile函数,是怎样用的,能举几个例子吗?
...全文
648 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
luke5678 2004-10-24
  • 打赏
  • 举报
回复
1. OpenFile函数使用说明
函数原型:function OpenFile(const lpFileName: LPCSTR; var lpReOpenBuff: TOFStruct;
uStyle: UINT): HFILE; stdcall;
函数功能:以不同方式打开文件的操作(为兼容16位Windows程序保留的函数)。建议
Windows下使用CreateFile函数。
参数说明:lpFileName: 要打开文件的名称
lpReOpenBuff: 变量指针,用于存储文件被首次打开时接收信息。
UStyle: 打开文件的常量类型。
常量名
意义

Of_Create
创建文件

Of_Delete
删除指定文件

Of_Exist
打开文件以验证其存在否?存在,返回一无效句柄;否则,返回负数

Of_Parse
填充lpReOpenBuff内容,但不进行任何操作

Of_Prompt
如存在不存在,则显示一有重试和取消按钮的消息框

Of_Read
只读方式打开

Of_ReadWrite
读写方式打开

Of_ReOpen
打开lpReOpenBuff内指定的文件,而不依据lpFileName

Of_Search
强迫Windows查找文件---即使指定了文件路径

Of_Share_Compat
文件可由多个程序多次打开

Of_Share_Deny_None
共享打开

Of_Share_Deny_Read
禁止其它程序读该文件

Of_Share_Deny_Write
禁止其它程序写该文件

Of_Share_Exclusive
独占方式打开文件,其它程序不得再打开该文件

Of_Write
只写方式打开
 
返回值:成功,返回值为文件句柄(但可能无效,如:Of_Exist);出错,返回HFile_Error。

//例子
procedure TForm1.Button1Click(Sender: TObject);
var
iFileHandle: HFILE;
Buffer: TOFStruct;
filename:Pchar;
begin
if OpenDialog1.execute then
filename := PCHAR(Opendialog1.FileName);
iFileHandle := OpenFile(filename,Buffer,OF_READWRITE);
Caption := Buffer.szPathName;
end;

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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