跪求帮助(锁文件夹)

chavenjohnky 2009-06-27 08:59:35
查阅了很多资料,就是看不懂private const后面为什么要那样赋值,有的人说是常量不用去管,是不是我只知道常量后面那些值我可以完全不用去管,这些常量的赋值在哪里可以找到呢?
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 Long

Dim 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
...全文
19 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
嗷嗷叫的老马 2009-06-29
  • 打赏
  • 举报
回复
常量是为了代码可读性而设计的

I = PostMessage(hwnd, &H201, 0, (mX And &HFFFF) + (mY And &HFFFF) * &H10000)



I = PostMessage(hwnd, WM_LBUTTONDOWN, 0, (mX And &HFFFF) + (mY And &HFFFF) * &H10000)

哪一个能一眼一看就明白大概的功能呢?

至于找常量,一般来说是使用API浏览器.

不过VB自带的我很久没使用过了,一直是在使用ApiViewer2004:

http://www.activevb.de/rubriken/apiviewer/index-apiviewereng.html
「已注销」 2009-06-28
  • 打赏
  • 举报
回复
教你一个办法:

点击VC的编辑--查找文件。选择查找目录为Include目录。查找你要查找的常量。比如如果查找到这样的结果,define SND_MEMORY 0x0004,就在VB声明为Private Const SND_MEMORY=&H4
xbin_2009 2009-06-28
  • 打赏
  • 举报
回复
当调用 API 函数时,该函数所对应的常量是微软已定义好的,一般可需先通过查阅 MSDN 中该函数的各常量参数说明,根据其常量名称,再到vb安装路径下的...\Microsoft Visual Studio\Common\Tools\Winapi\WIN32API.TXT 中查找到对应的值;有的个别常量还要到 *.h 头文件中才有。
以上是我所知道的方式,仅供参考.
boywang 2009-06-27
  • 打赏
  • 举报
回复
api help
chavenjohnky 2009-06-27
  • 打赏
  • 举报
回复
顶!!!!!!!!!!!!!!!!!!!!!

1,486

社区成员

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

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