思路:
用WebBrowse打开一个文件,此文件如果是doc,将自然用word打开了。我的需求是要独点这个文件,不能给其它进程打开。如何是好我现在的做法是用WebBrowse打开之后,用openfile api再以独占方式打开,但不成功,因为这个文件已被WebBrowse调用word打开了。如果先用openfile api以独占方式打开,WebBrowse调用word又打不开了。经过几天的调试,试过几种办法,都不成功,那位兄弟还有什么招???听过hook,但不知怎么搞
有没有办法取到WebBrowse调用word打开这个doc文件的句柄,再用CloseHandle来关掉,再用openfile以独占方式打开
用WebBrowse打开一个文件,此文件如果是doc,将自然用word打开了。我的需求是要独点这个文件,不能给其它进程打开。如何是好我现在的做法是用WebBrowse打开之后,用openfile api再以独占方式打开,但不成功,因为这个文件已被WebBrowse调用word打开了。如果先用openfile api以独占方式打开,WebBrowse调用word又打不开了。经过几天的调试,试过几种办法,都不成功,那位兄弟还有什么招???听过hook,但不知怎么搞
有没有办法取到WebBrowse调用word打开这个doc文件的句柄,再用CloseHandle来关掉,再用openfile以独占方式打开
解决方案 »
- 在C:\123文件夹中有30张图片,有30个image,在点击command1后,随即将这30张图片加载到30个image,必须30张都有,而且还不能重复(问题又来了)
- ◆SQL高手进请,模糊搜索中的SQL语句
- 如何用命令行 注册COM+组件包 包括 角色,授权,激活等
- 怎样读word文件,再把修改过文件存到原来的文件中,谢谢!!!!
- datagrid的行数如何统计??
- 问题:想打开用户选择的任意文件(*.doc,*.jpg....),并且直到打开的程序关闭后在继续执行。请高手指教。
- 一个compile error
- 这种情况怎么来设计软件的结构?
- 模拟按键有问题,求助!
- 有关Scripting.Dictionary的调用
- 请教CSV文件操作问题!各位达人乱入
- SendMessage 让无边框可以变化大小的消息是什么?
Option Explicit
Private Const FILE_LIST_DIRECTORY = &H1
Private Const FILE_SHARE_READ = &H1&
Private Const FILE_SHARE_DELETE = &H4&
Private Const OPEN_EXISTING = 3
Private Const FILE_FLAG_BACKUP_SEMANTICS = &H2000000
Private Declare Function CreateFile Lib "kernel32" Alias "CreateFileA" (ByVal lpFileName As String, ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long, ByVal PassZero As Long, ByVal dwCreationDisposition As Long, ByVal dwFlagsAndAttributes As Long, ByVal PassZero As Long) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As LongDim File_Share_Flag As Long
Dim hDir As Long
Private Sub cmdlock_Click()
Dim PathDir As String
PathDir = Text1.Text
hDir = CreateFile(PathDir, FILE_LIST_DIRECTORY, File_Share_Flag, _
ByVal 0&, OPEN_EXISTING, FILE_FLAG_BACKUP_SEMANTICS, ByVal 0&)
cmdlock.Enabled = False
cmdunlock.Enabled = True
End Sub
Private Sub cmdunlock_Click()
CloseHandle hDir
cmdlock.Enabled = True
cmdunlock.Enabled = False
End Sub
Private Sub Form_Load()
File_Share_Flag = 0 'if =FILE_SHARE_READ then read only (for example)
End Sub
Private Sub Form_Unload(Cancel As Integer)
Call cmdunlock_Click
End Sub
你这种办法只能控制还没打开的文件,一当打开了这个文件,再使用CreateFile ()
CreateFile()将会失败!!!,我现在是要先打开这个文件,再要想办法去控制它