怎么得到已经打开的文件的句柄

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么得到已经打开的文件的句柄相关的知识,希望对你有一定的参考价值。

我想在自己的程序中打开一个正在使用的文件,比如记事本或word打开的文件,不知道怎么做,请大家不吝赐教。

用CreateFile, 返回的HANDLE就是要打开的文件句柄.
这个是函数原形.
HANDLE WINAPI CreateFile(
__in LPCTSTR lpFileName, //文件名字,例如TEXT("c:\\a.txt")
__in DWORD dwDesiredAccess, //打开方式, 这边用GENERIC_READ,表示读取
__in DWORD dwShareMode, //分享模式, 这边用FILE_SHARE_READ|FILE_SHARE_WRITE表示别的程序也可以读写
__in LPSECURITY_ATTRIBUTES lpSecurityAttributes, //安全性, 这边用NULL, 表示默认安全性
__in DWORD dwCreationDisposition, //创建方式, 这边用OPEN_EXISTING, 表示打开一个已有的文件. ********这个很关键*********
__in DWORD dwFlagsAndAttributes, //文件属性, 系统会忽略, 添NULL就可以了
__in HANDLE hTemplateFile //系统也会忽略, 填NULL
);
参考技术A FindWindow 获得窗口句柄
OpenProcess 获得进程句柄
具体参数查看MSDN本回答被提问者采纳
参考技术B 可以啊,你打开它不要紧

也没有规定说正在使用的文件就不允许打开

ifstream infile("filename",ios::in);

FILE *fp = fopen("filename","r");

试试再说

SecureCRTPortable怎么传输.bin文件

参考技术A 打开文件 得到句柄,然後通过句柄 获取文件的数据 和文件的大小。用一个指针来保存 文件数据的头指针,然後就可以通过指针来操作数据 进行发送了 参考技术B 重命名一下文件,传完后叫对方把后缀改回来就行

以上是关于怎么得到已经打开的文件的句柄的主要内容,如果未能解决你的问题,请参考以下文章

SecureCRTPortable怎么传输.bin文件

python操作文本文件

JFinal 怎么在getFile前获取必须的属性

day7文件操作

five

Python的文件操作