2011-10-18 45 views
0

我想創建一個腳本,它將爲本地應用程序(他們當前將通過citrix)設置主要MS Office文件和一些其他文件擴展名的文件關聯。我打算使用一個簡單的批處理文件。是我需要的批處理文件嗎?

但是,我希望它能夠檢測文件類型是否有效,如果不使用ftype創建它。我還希望它能夠檢測/區分用戶是否具有MS Office 2003或MS Office 2007並進行相應關聯。

我的問題是,批處理文件能夠做到這一點,或者我最好使用其他類似vb腳本(考慮到我知道沒有vb,儘管我也是批處理文件的新手)?

任何幫助表示讚賞

編輯:我應該有蜜蜂更清楚,這是一個鎖定的環境,所以沒有直接的註冊表編輯工作可以做,而且將需要提供給用戶,從共享駕駛或類似的東西。

回答

0

單獨的批處理文件無法檢測到文件關聯是否正確,但是您可以每次都啓動批處理文件,從而強制文件關聯正確。它只會覆蓋已經存在的內容。

只需自己創建適當的關聯,然後運行Regedit並導出包含關聯關鍵字的.reg文件,並使用運行regedit的批處理文件導入關鍵字。可能/進口或somesuch - 我很少使用Windows了!

這裏有一個網頁,解釋它: http://www.robvanderwoude.com/regedit.php

+0

我希望能夠做到這一點,但我們在一個環境中工作,沒有這種訪問權限,我們沒有權限彈出給他們! 你每次只強制關聯都是正確的,但這意味着需要2個獨立的腳本,具體取決於安裝的MS Office的版本。 –

+0

如果您可以查找某個特定的文件或文件名,那麼可以使用一個批處理文件來執行此操作 - 您可以測試批處理中是否存在文件,並根據該文件執行不同的操作。 –

+0

我想我不明白環境鎖定的等級或方式。在很多情況下,您可以以不同的用戶身份執行腳本。如果Office被加載,爲什麼不存在正確的文件關聯? –

0

您可以使用PowerShell腳本。您可以獲得.NET的強大功能,這是一種非常好的腳本語言,您可以使用vbscript和bat文件有效地做任何事情。你也有一個非常有活力的社區。 Powershell使註冊表操作變得如此簡單和直觀,以至於您不知道在文件上操作和在註冊表項目上操作之間的區別

+0

再次希望能夠做到這一點,應該提到環境相當封鎖,所以直接註冊表編輯已經結束,並且安裝新軟件也已完成。 –

+0

哪個操作系統? Powershell是更新的服務器和桌面操作系統的標準。 – manojlds

+0

舊的XP版本以及新的Win7版本,我會看看它 –

相關問題