如果機(jī)器安裝有winRar軟件,就可以通過(guò)shell來(lái)借用他的功能達(dá)到壓縮文件的效果;
創(chuàng)新互聯(lián)公司主營(yíng)山陰網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,APP應(yīng)用開(kāi)發(fā),山陰h5成都小程序開(kāi)發(fā)搭建,山陰網(wǎng)站營(yíng)銷(xiāo)推廣歡迎山陰等地區(qū)企業(yè)咨詢(xún)
參考代碼如下:
Dim DeliveryF As String = Server.MapPath("..\Temp\DeliveryFactors.xls") '原始文件 (壓縮前)
Dim TruckInfo As String = Server.MapPath("..\Temp\TruckInformation.xls")
Dim QDetail As String = Server.MapPath("..\Temp\QuotationDetail.xls")
'用shell命令調(diào)用winrar.exe創(chuàng)建壓縮文件()
Dim winRarexe As String = "C:\Program Files\WinRAR\Rar" 'winzip 執(zhí)行文件的位置
Dim wtarget As String = "C:\temp\QuotationVAComparsion.zip" '目地文件 (壓縮后)
Dim command As String = winRarexe " a " wtarget " " DeliveryF " " TruckInfo " " QDetail
'這個(gè)命令你可以查看winrar的命令集
Dim retval As Double 'Shell 指令傳回值
retval = Shell(command, AppWinStyle.MinimizedFocus)
這個(gè)問(wèn)題可以用注冊(cè)表解決。
Function?getOpenCommand(fileExt?As?String)?as?String
Dim?fileType?as?String,?openCommand?as?String
fileExt?=?"."?+?fileExt
'取得文件擴(kuò)展名在注冊(cè)表里的文件類(lèi)型名稱(chēng)
'比如.zip的類(lèi)型名稱(chēng)一般是zipfile
fileType?=?讀取注冊(cè)表的classes_root下的子鍵(fileExt)的默認(rèn)鍵值
'取得打開(kāi)這種文件的程序
openCommand?=?讀取注冊(cè)表的classes_root下的子鍵(fileType?+?"\shell\open\command")的默認(rèn)鍵值
Return?getOpenCommand
End?Function
讀取注冊(cè)表的HKEY_CLASSES_ROOT下的子鍵的默認(rèn)鍵值的方法可以在網(wǎng)上搜索到。
這樣getOpenCommand("doc")就可以得到一個(gè)字符串(包括引號(hào)):
"C:\Program Files\Word\word.exe" "%1"
這里只需要用Spilt函數(shù)把C:\Program Files\Word\word.exe分離出來(lái)就好了
這個(gè)問(wèn)題可以用注冊(cè)表解決。
Function getOpenCommand(fileExt As String) as String
Dim fileType as String, openCommand as String
fileExt = "." + fileExt
'取得文件擴(kuò)展名在注冊(cè)表里的文件類(lèi)型名稱(chēng)
'比如.zip的類(lèi)型名稱(chēng)一般是zipfile
fileType = 讀取注冊(cè)表的classes_root下的子鍵(fileExt)的默認(rèn)鍵值
'取得打開(kāi)這種文件的程序
openCommand = 讀取注冊(cè)表的classes_root下的子鍵(fileType + "\shell\open\command")的默認(rèn)鍵值
Return getOpenCommand
End Function
讀取注冊(cè)表的HKEY_CLASSES_ROOT下的子鍵的默認(rèn)鍵值的方法可以在網(wǎng)上搜索到。
這樣getOpenCommand("doc")就可以得到一個(gè)字符串(包括引號(hào)):
"C:\Program Files\Word\word.exe" "%1"
這里只需要用Spilt函數(shù)把C:\Program Files\Word\word.exe分離出來(lái)就好了