不使用GACUtil.exe,如何部署和卸载程序集到GAC中
在Windows Server 2008和Windows Server 2008 上, 部署程序集到GAC中時,如果以直接將程序集拖拽到GAC的方式部署,將會得到Access is denied的錯誤消息。(與使用stsadm報錯)
解決方案:
?
1.關(guān)閉UAC,重啟服務(wù)器,此時重新部署程序集就OK了
此方法有一個缺點(diǎn),就是修改完UAC后,必須重啟服務(wù)器。
?
2.創(chuàng)建一個快捷方式,目標(biāo)為:%SystemRoot%\explorer.exe C:\Windows\assembly,接著以管理員的身份運(yùn)行這個快捷方式,此時便可對GAC進(jìn)行操作。
如果需要部署程序集到GAC中,則使用相同的方式,創(chuàng)建一個快捷方式,目標(biāo)為:%SystemRoot%\explorer.exe 目標(biāo)dll文件的路徑(如:D:\bin),
此時便可以以直接將程序集拖拽到GAC的方式部署程序集(經(jīng)測試Windows Server 2008 R2,無法正常工作)。
以下是老外的原文:
create a shortcut to Windows Explorer which includes the path to the GAC (Target: %SystemRoot%\explorer.exe C:\Windows\assembly), which you can then invoke via Right-click, Run as Administrator. I put one on my desktop and labeled it "GAC" for quick access.
?
????????? Note: 以下方法行不通,
1.Open a Command Prompt as Administrator (right click, Run As Administrator).
2.Run "explorer C:\windows\assembly".
3.Open a new explorer window from the window which just opened (Right click -> Open whilst holding Ctrl). I did this by hopping back up to C:\windows and the navigating to my assembly in the second (new) window.
4.Navigate in the first windows back to C:\windows\assembly.
5.Drag and drop between the two windows.
?
3. 使用PowerShell 調(diào)用 System.EnterpriseServices.Internal.Publish. GacInstall( $assembly )方法。
Install-GAC.ps1
安裝命令: .\Install-GAC.ps1 1 "C:\test.dll"
卸載命令:? .\Install-GAC.ps1 0 "C:\test.dll"
詳情參考原文:PowerShell: Install-Gac (GACUTIL for PowerShell)
?
如何關(guān)閉UAC
Windows Server 2008默認(rèn)是將UAC(User Account Control : 用戶帳戶近控制)開啟的,但UAC是導(dǎo)致用戶認(rèn)證失敗,因此建議在配置SPS時,建議將其關(guān)閉。
需要注意:Windows server 2008與windows server 2008 R2關(guān)閉UAC方法略有不同。
Windows Server 2008 UAC關(guān)閉方法有幾種,大家可以google下,我在這里只介紹其中一種。 1. 依次點(diǎn)擊“開始 >運(yùn)行”,輸入MSCONFIG,打開系統(tǒng)配置實用程序 2. 選擇Tools(工具)選項卡,向下滾動找到“改變UAC設(shè)置(change UAC settings)”,點(diǎn)擊“運(yùn)行(launch)”。 3. windows server 2008,控制面板→用戶帳戶→打開或關(guān)閉用戶賬戶控制→取消使用用戶賬戶控制(UAC)幫助保護(hù)您的計算機(jī),注意此時需要重啟服務(wù)器。windows server 2008 r2,控制面板→用戶帳戶→用戶賬戶→改變UAC設(shè)置→選擇永不通知,不需要重啟服務(wù)器。
Windows server 2008 r2用戶帳戶控制中的新增功能 用戶帳戶控制的新增功能有哪些? 在引入用戶帳戶控制 (UAC) 之前,如果用戶以管理員身份登錄,則會自動授予用戶對所有系統(tǒng)資源的完全訪問權(quán)限。 而當(dāng)用戶作為管理員運(yùn)行時,可以安裝合法軟件,也可以有意或無意地安裝惡意程序。管理員安裝的惡意軟件可以嚴(yán)重危害計算機(jī)并影響所有用戶。 隨著 UAC 的引入,訪問控制模型已經(jīng)更改,以便減少惡意程序的影響。 當(dāng)用戶試圖啟動管理員任務(wù)或服務(wù)時,“用戶帳戶控制”對話框會要求用戶單擊“是”或“否”,然后才允許使用用戶的完全管理員訪問令牌。 如果用戶不是管理員,則用戶必須提供管理員憑據(jù)才能運(yùn)行該程序。因為 UAC 要求管理員審核應(yīng)用程序的安裝,所以未授權(quán)的應(yīng)用程序或沒有得到管理員明確許可的應(yīng)用程序無法自動安裝。 在 Windows? 7 和 Windows Server? 2008 R2 中,已改進(jìn) UAC 功能,從而:
- 增加了標(biāo)準(zhǔn)用戶可以執(zhí)行的任務(wù)(不提示管理員審批)數(shù)量。
- 允許具有管理員權(quán)限的用戶在控制面板中配置 UAC 體驗。
- 提供其他本地安全策略,使本地管理員能夠為管理員批準(zhǔn)模式下的本地管理員更改 UAC 消息的行為。
- 提供其他本地安全策略,使本地管理員能夠為標(biāo)準(zhǔn)用戶更改 UAC 消息的行為。
哪些人會希望使用 UAC? 通過禁止可能具有惡意的程序運(yùn)行,UAC 幫助標(biāo)準(zhǔn)用戶和管理員保護(hù)其計算機(jī)。 改進(jìn)的用戶體驗使用戶能夠在保護(hù)其計算機(jī)的同時輕松執(zhí)行日常任務(wù)。 通過禁止用戶運(yùn)行惡意軟件,UAC 幫助企業(yè)管理員保護(hù)其網(wǎng)絡(luò)。
新增功能和更改功能有哪些優(yōu)點(diǎn)? 默認(rèn)情況下,標(biāo)準(zhǔn)用戶和管理員在標(biāo)準(zhǔn)用戶的安全上下文中訪問資源并運(yùn)行應(yīng)用程序。 當(dāng)用戶登錄到計算機(jī)時,系統(tǒng)會為該用戶創(chuàng)建一個訪問令牌。 該訪問令牌包含有關(guān)授予該用戶的訪問權(quán)限級別的信息,其中包括特定的安全標(biāo)識符 (SID) 和 Windows 權(quán)限。
當(dāng)管理員登錄時,將為該用戶創(chuàng)建兩個單獨(dú)的訪問令牌:標(biāo)準(zhǔn)用戶訪問令牌和管理員訪問令牌。標(biāo)準(zhǔn)用戶訪問令牌包含的用戶特定信息與管理員訪問令牌包含的信息相同,但是已經(jīng)刪除管理 Windows 權(quán)限和 SID。 標(biāo)準(zhǔn)用戶訪問令牌用于啟動不執(zhí)行管理任務(wù)的應(yīng)用程序(標(biāo)準(zhǔn)用戶應(yīng)用程序)。 當(dāng)用戶運(yùn)行執(zhí)行管理任務(wù)的應(yīng)用程序(管理員應(yīng)用程序)時,會提示該用戶將安全上下文從標(biāo)準(zhǔn)用戶更改或“提升”為管理員,稱為管理員批準(zhǔn)模式。 在此模式下,管理員必須對使用管理權(quán)限在安全桌面上運(yùn)行的應(yīng)用程序進(jìn)行審批。 在配置計算機(jī)以及對計算機(jī)進(jìn)行故障排除時,Windows 7 和 Windows Server 2008 R2 中對 UAC 的改進(jìn)會為您帶來更好的用戶體驗。 減少的 UAC 提示數(shù) Windows 7 和 Windows Server 2008 R2 減少了本地管理員和標(biāo)準(zhǔn)用戶必須響應(yīng)的 UAC 提示數(shù)。
減少本地管理員必須響應(yīng)的提示數(shù):
- 已合并文件操作提示。
- 已合并用于運(yùn)行應(yīng)用程序安裝程序的 Internet Explorer 提示。
- 已合并用于安裝 ActiveX(R) 控件的 Internet Explorer 提示。
默認(rèn) UAC 設(shè)置允許標(biāo)準(zhǔn)用戶執(zhí)行以下任務(wù)而不會收到 UAC 提示:
- 從 Windows Update 安裝更新。
- 安裝從 Windows Update 下載的驅(qū)動程序或操作系統(tǒng)附帶的驅(qū)動程序。
- 查看 Windows 設(shè)置。 (但是,當(dāng)更改 Windows 設(shè)置時,會提示標(biāo)準(zhǔn)用戶提供提升的權(quán)限。)
- 將 Bluetooth 設(shè)備與計算機(jī)配對。
- 重置網(wǎng)絡(luò)適配器并執(zhí)行其他網(wǎng)絡(luò)診斷和修復(fù)任務(wù)。
?
?
?
步驟簡單:
可以在組策略中進(jìn)行設(shè)置 —— “以管理員身份運(yùn)行”方式打開命令提示符(CMD)后鍵入 gpedit.msc 打開組策略后作如下更改:
在“計算機(jī)配置”-“Windows 配置”-“安全設(shè)置”-“本地策略”-“安全選項”下:修改“用戶帳戶控制: 在管理審批模式下管理員的提升提示行為”選項為“不提示,直接提升”就不會再彈出提示框了。
轉(zhuǎn)載于:https://www.cnblogs.com/foxwu/archive/2012/12/19/2824642.html
總結(jié)
以上是生活随笔為你收集整理的不使用GACUtil.exe,如何部署和卸载程序集到GAC中的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: GHOST内部错误 36000(inte
- 下一篇: 2012百度之星冬季赛第二场第二题 消去