国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > VBScript > 正文

VBS打開選擇文件對話框代碼(Win7)

2020-06-26 18:28:20
字體:
來源:轉載
供稿:網友
如何在 Windows 7 系統中向用戶顯示一個用來選擇文件的對話框呢
 
相信很多人都看過“嗨,Scripting Guy!”上面的一個問題,就算沒有看過原文,也應該看過被復制粘貼后的代碼。 

我如何向用戶顯示一個用來選擇文件的對話框? 

問:嗨,Scripting Guy!有沒有什么方法可以讓我使用腳本向用戶顯示一個對話框,供用戶選擇文件使用? — BF 

答:您好,BF。如果您使用的是 Windows 2000,我們不知道實現此操作的方法,至少操作系統中沒有內置這樣的方法。但如果您使用的是 Windows XP,情況就不同了。在 Windows XP 上,您可以使用“UserAccounts.CommonDialog”對象向用戶顯示一個標準的“文件打開”對話框。可以用類似以下代碼的腳本: 


代碼我就不復制粘貼了,原文里面有,網上也到處都是。但是問題在于,這段代碼只能用于 Windows XP 系統(Windows 2003 或許也可以,但是我沒有測試過),而現在 Windows 7 已經逐漸開始流行起來。在 Vista 和Windows 7 系統中默認是不自帶 UserAccounts.CommonDialog 組件的(順便提一句,SAFRCFileDlg.FileOpen 和 SAFRCFileDlg.FileSave 組件也是沒有的)。 

那么如何在 Windows 7 系統中向用戶顯示一個用來選擇文件的對話框呢?答案是 html 中的文件選擇對話框: 
復制代碼代碼如下:

Function BrowseForFile() 
Dim shell : Set shell = CreateObject("WScript.Shell") 
Dim fso : Set fso = CreateObject("Scripting.FileSystemObject") 

Dim tempFolder : Set tempFolder = fso.GetSpecialFolder(2) 
Dim tempName : tempName = fso.GetTempName() 
Dim tempFile : Set tempFile = tempFolder.CreateTextFile(tempName & ".hta") 

tempFile.Write _ 
"<html>" & _ 
"<head>" & _ 

"<title>Browse</title>" & _ 
"</head>" & _ 
"<body>" & _ 

"<input type='file' id='f' />" & _ 
"<script type='text/javascript'>" & _ 
"var f = document.getElementById('f');" & _ 

"f.click();" & _ 
"var shell = new ActiveXObject('WScript.Shell');" & _ 
"shell.RegWrite('HKEY_CURRENT_USER//Volatile Environment//MsgResp', f.value);" & _ 
"window.close();" & _ 

"</script>" & _ 
"</body>" & _ 
"</html>" 

tempFile.Close 
shell.Run tempFolder & "/" & tempName & ".hta", 0, True 
BrowseForFile = shell.RegRead("HKEY_CURRENT_USER/Volatile Environment/MsgResp") 

shell.RegDelete "HKEY_CURRENT_USER/Volatile Environment/MsgResp" 
End Function 

'Author: Demon 
'Website: http://demon.tw 
'Date: 2011/6/2 

path = BrowseForFile() 
If path <> "" Then WScript.Echo path 
 
原文:http://demon.tw/programming/vbs-open-file-dialog.html
 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 罗平县| 易门县| 远安县| 云南省| 鹿泉市| 高雄县| 中西区| 广西| 湘乡市| 肇源县| 汪清县| 竹山县| 兴仁县| 微山县| 宝山区| 荥经县| 新巴尔虎左旗| 山东| 莲花县| 双峰县| 宁阳县| 岳西县| 澜沧| 梁山县| 阳春市| 天津市| 秭归县| 邵武市| 玉林市| 车险| 石泉县| 凌海市| 临夏县| 钟山县| 徐州市| 秦安县| 灵璧县| 黄石市| 花垣县| 河池市| 武城县|