📄 form1.frm
字号:
msg = "存放所有用户的文档的文件系统目录,"
msg = msg & "其常用目录是C:\WINNT\Profiles\All Users\Documents."
Case CSIDL_COMMON_FAVORITES
msg = "存放所有用户的个性化设置的文件系统目录。"
Case CSIDL_COMMON_PROGRAMS
msg = "存放所有用户的开始菜单中的通用程序组的目录的文件系统目录。"
msg = msg & "一般为C:\WINNT\Profiles\All Users\Start。"
Case CSIDL_COMMON_STARTMENU
msg = "存放显示在所有用户的开始菜单中的程序和文件夹的文件系统目录。"
msg = msg & "一般为C:\WINNT\Profiles\All Users\Start Menu。"
Case CSIDL_COMMON_STARTUP
msg = "存放所有用户的显示在开始菜单中的启动目录中的程序的文件系统目录。"
msg = msg & "一般为C:\WINNT\Profiles\All Users\Start Menu\Programs\Startup. "
Case CSIDL_COMMON_TEMPLATES
msg = "所有用户的临时文件夹的文件系统目录,"
msg = msg & "一般为C:\WINNT\Profiles\All Users\Templates。"
Case CSIDL_CONTROLS
msg = "存放控制面板程序中的图标的虚文件夹。"
Case CSIDL_COOKIES
msg = "存放因特网cookies的文件系统目录。"
msg = msg & "一般为C:\WINNT\Profiles\username\Cookies."
Case CSIDL_DESKTOP
msg = "Windows桌面--命名空间根节点的虚文件夹。"
Case CSIDL_DESKTOPDIRECTORY
msg = "存放桌面上的文件对象的文件系统目录(注意,不要与桌面文件夹本身相混淆)。"
msg = msg & "一般为C:\WINNT\Profiles\username\Desktop"
Case CSIDL_DRIVES
msg = "我的电脑--包含本地计算机上的所有"
msg = msg & "对象(如存储设备、打印机、控制面板、网络映射驱动器等)的虚文件夹。 "
Case CSIDL_FAVORITES
msg = "存放用户的个性化设置的文件系统目录。"
msg = msg & "一般为C:\WINNT\Profiles\username\Favorites."
Case CSIDL_FONTS
msg = "存放字体的虚文件夹。一般为C:\WINNT\Fonts."
Case CSIDL_HISTORY
msg = "存放因特网历史元素的文件系统目录。"
Case CSIDL_INTERNET
msg = "Internet的虚目录。"
Case CSIDL_INTERNET_CACHE
msg = "存放临时的Internet文件的文件系统目录,"
msg = msg & "一般为C:\WINNT\Profiles\username\Temporary Internet Files。"
Case CSIDL_LOCAL_APPDATA
msg = "存放本地应用程序的5.0.版的文件系统目录,"
msg = msg & "一般为C:\WINNT\Profiles\username\Local Settings\Application Data。"
Case CSIDL_MYPICTURES
msg = "我的图片的5.0.版文件系统目录,"
msg = msg & "一般为C:\WINNT\Profiles\username\My Documents\My Pictures."
Case CSIDL_NETHOOD
msg = "存放网上邻居中的对象的文件系统目录,"
msg = msg & "一般为C:\WINNT\Profiles\username\Nethood."
Case CSIDL_NETWORK
msg = "网上邻居文件夹--表示网络层次中顶层节点的虚文件夹。"
Case CSIDL_PERSONAL
msg = "存放文档(documents)的文件及系统目录,"
msg = msg & "一般为C:\WINNT\Profiles\user\My Documents。"
Case CSIDL_PRINTERS
msg = "包含已经安装的打印机的虚文件夹。"
Case CSIDL_PRINTHOOD
msg = "存放打印机连接的文件系统目录,"
msg = msg & "一般为C:\WINNT\Profiles\user\PrintHood。"
Case CSIDL_PROFILE
msg = "用户的profile文件夹的5.0.版的文件系统目录。"
Case CSIDL_PROGRAM_FILES
msg = "5.0.版的Program Files文件夹,一般为C:\Program Files。"
Case CSIDL_PROGRAM_FILES_COMMON
msg = "所有用户的5.0.版的Program Files文件夹,一般为C:\Program Files\Common。"
Case CSIDL_PROGRAMS
msg = "包含用户的程序组(它也是一个文件系统目录)的文件系统目录,"
msg = msg & "一般为C:\WINNT\Profiles\user\Start Menu\Programs."
Case CSIDL_RECENT
msg = "存放用户最近使用的文档的文件系统目录,"
msg = msg & "一般为C:\WINNT\Profiles\username\Recent。"
msg = msg & "可使用SHAddToRecentDocs在该文件夹中创建快捷方式。"
Case CSIDL_SENDTO
msg = "存放发送到菜单中的对象的文件系统目录,"
msg = msg & "一般为c:\WINNT\Profiles\username\SendTo."
Case CSIDL_STARTMENU
msg = "存放开始菜单中对象的文件系统目录,"
msg = msg & "一般为c:\WINNT\Profiles\username\Start Menu。"
Case CSIDL_STARTUP
msg = "存放用户的启动程序组的文件系统目录,"
msg = msg & "一般为C:\WINNT\Profiles\username\Start Menu\Programs\Startup."
Case CSIDL_SYSTEM
msg = "Version 5.0. System folder, i.e. C:\WINNT\SYSTEM32."
Case CSIDL_TEMPLATES
msg = "存放临时文档的文件系统目录。"
Case CSIDL_WINDOWS
msg = "5.0.版的Windows目录或SYSROOT,它对应于环境变量%windir%或%SYSTEMROOT%,"
msg = msg & "一般为C:\WINNT."
Case Else: msg = ""
End Select
GetV5Description = msg
End Function
Private Sub CmdQuit_Click()
Unload Me
End Sub
Private Sub Combo1_Click()
Dim sItem As String
sItem = Combo1.List(Combo1.ListIndex)
CSIDL = Combo1.ItemData(Combo1.ListIndex)
Text1.Text = Val(CSIDL) 'int值
Text2.Text = "&H" & CStr(Hex(CSIDL)) '十六进制值
Label2.Caption = GetV5Description(CSIDL)
'如果OS条件不符合,则禁止浏览按钮
Command1.Enabled = CSIDL <= MaxOSCSIDL
End Sub
Private Sub Command1_Click()
Dim BIF_FLAGS As Long
Dim sTitle As String
'根据用户的选择确定BIF标志
If Check1.Value = 1 Then BIF_FLAGS = BIF_FLAGS Or BIF_EDITBOX
If Check2.Value = 1 Then BIF_FLAGS = BIF_FLAGS Or BIF_VALIDATE
If Check3.Value = 1 Then BIF_FLAGS = BIF_FLAGS Or BIF_BROWSEINCLUDEFILES
sTitle = Combo1.List(Combo1.ListIndex)
Text4 = Browse(BIF_FLAGS, sTitle)
End Sub
Private Sub Form_Load()
'检测OS信息。由于某些特性只能在NT4或NT5中使用,
'所以这里使用了两个标志
OSIsNT = IsWinNT()
OSIsNT5 = IsWin2000()
'在Win9x和NT4中,如果不支持某些常量值,
'则调用SHBrowse会失败。
MaxOSCSIDL = 34
If OSIsNT And OSIsNT5 Then
Caption = Caption & " on NT5"
MaxOSCSIDL = 48
ElseIf OSIsNT Then
Caption = Caption & " on NT4"
Else: Caption = Caption & " on Win9x"
End If
With Combo1
.AddItem "桌面"
.ItemData(.NewIndex) = CSIDL_DESKTOP
.AddItem "IE(桌面上的图标)"
.ItemData(.NewIndex) = CSIDL_INTERNET
.AddItem "开始菜单\程序"
.ItemData(.NewIndex) = CSIDL_PROGRAMS
.AddItem "控制面板"
.ItemData(.NewIndex) = CSIDL_CONTROLS
.AddItem "打印机"
.ItemData(.NewIndex) = CSIDL_PRINTERS
.AddItem "我的文档"
.ItemData(.NewIndex) = CSIDL_PERSONAL
.AddItem "个性化设置(当前用户)"
.ItemData(.NewIndex) = CSIDL_FAVORITES
.AddItem "开始菜单\程序\启动"
.ItemData(.NewIndex) = CSIDL_STARTUP
.AddItem "最近文档(当前用户)"
.ItemData(.NewIndex) = CSIDL_RECENT
.AddItem "发送到...(当前用户)"
.ItemData(.NewIndex) = CSIDL_SENDTO
.AddItem "回收站(桌面)"
.ItemData(.NewIndex) = CSIDL_BITBUCKET
.AddItem "开始菜单(当前用户)"
.ItemData(.NewIndex) = CSIDL_STARTMENU
.AddItem "桌面目录(当前用户)"
.ItemData(.NewIndex) = CSIDL_DESKTOPDIRECTORY
.AddItem "我的电脑"
.ItemData(.NewIndex) = CSIDL_DRIVES
.AddItem "网上邻居"
.ItemData(.NewIndex) = CSIDL_NETWORK
.AddItem "网上邻居元素(当前用户)"
.ItemData(.NewIndex) = CSIDL_NETHOOD
.AddItem "字体"
.ItemData(.NewIndex) = CSIDL_FONTS
.AddItem "开始菜单(所有用户)(只适用于NT)"
.ItemData(.NewIndex) = CSIDL_COMMON_STARTMENU
.AddItem "临时文件夹"
.ItemData(.NewIndex) = CSIDL_TEMPLATES
.AddItem "程序(所有用户)(只适用于NT)"
.ItemData(.NewIndex) = CSIDL_COMMON_PROGRAMS
.AddItem "启动(所有用户)(只适用于NT)"
.ItemData(.NewIndex) = CSIDL_COMMON_STARTUP
.AddItem "桌面目录(所有用户)"
.ItemData(.NewIndex) = CSIDL_COMMON_DESKTOPDIRECTORY
.AddItem "应用程序数据(当前用户)"
.ItemData(.NewIndex) = CSIDL_APPDATA
.AddItem "打印机连接(当前用户)"
.ItemData(.NewIndex) = CSIDL_PRINTHOOD
.AddItem "Win2000:应用程序数据(当前用户)"
.ItemData(.NewIndex) = CSIDL_LOCAL_APPDATA
.AddItem "非本地化的启动"
.ItemData(.NewIndex) = CSIDL_ALTSTARTUP
.AddItem "非本地化的通用的启动(只适用于NT)"
.ItemData(.NewIndex) = CSIDL_COMMON_ALTSTARTUP
.AddItem "通用的个性化设置"
.ItemData(.NewIndex) = CSIDL_COMMON_FAVORITES
.AddItem "因特网缓存"
.ItemData(.NewIndex) = CSIDL_INTERNET_CACHE
.AddItem "因特网Cookies"
.ItemData(.NewIndex) = CSIDL_COOKIES
.AddItem "因特网历史记录"
.ItemData(.NewIndex) = CSIDL_HISTORY
.AddItem "Win2000:应用程序数据(所有用户)"
.ItemData(.NewIndex) = CSIDL_COMMON_APPDATA
.AddItem "Win2000: Windows目录"
.ItemData(.NewIndex) = CSIDL_WINDOWS
.AddItem "Win2000:系统目录"
.ItemData(.NewIndex) = CSIDL_SYSTEM
.AddItem "Win2000:程序文件"
.ItemData(.NewIndex) = CSIDL_PROGRAM_FILES
.AddItem "Win2000:我的图片"
.ItemData(.NewIndex) = CSIDL_MYPICTURES
.AddItem "Win2000:用户概貌(当前用户)"
.ItemData(.NewIndex) = CSIDL_PROFILE
.AddItem "Win2000: Program Files\Common (只适用于NT)"
.ItemData(.NewIndex) = CSIDL_PROGRAM_FILES_COMMON
.AddItem "Templates (所有用户) (只适用于NT)"
.ItemData(.NewIndex) = CSIDL_COMMON_TEMPLATES
.AddItem "Documents (所有用户) (只适用于NT)"
.ItemData(.NewIndex) = CSIDL_COMMON_DOCUMENTS
.AddItem "Win2000: 系统管理工具(所有用户)"
.ItemData(.NewIndex) = CSIDL_COMMON_ADMINTOOLS
.AddItem "Win2000: 系统管理工具(当前用户)"
.ItemData(.NewIndex) = CSIDL_ADMINTOOLS
.ListIndex = 3 '桌面(缺省值)
End With
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -