2009年5月12日星期二

1. “Access is denied”errors when deploying BizTalk Application in Visual Studio

English:


I tried to deploy BizTalk application today, but Visual Studio shows the following errors:

Error 1 Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED)) 0 0
Error 4 Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED)) 0 0
Error 2 at Microsoft.BizTalk.Gac.Fusion.IAssemblyCache.InstallAssembly(AssemblyCacheInstallFlag flags, String manifestFilePath, FusionInstallReference referenceData)
at Microsoft.BizTalk.Gac.Gac.InstallAssembly(String assemblyPathname, Boolean force)
at Microsoft.BizTalk.Deployment.BizTalkAssembly.GacInstall(String assemblyLocation)
at Microsoft.BizTalk.Deployment.BizTalkAssembly.PrivateDeploy(String server, String database, String assemblyPathname, String applicationName)
at Microsoft.BizTalk.Deployment.BizTalkAssembly.Deploy(Boolean redeploy, String server, String database, String assemblyPathname, String group, String applicationName, ApplicationLog log) 0 0
Error 5 Failed to add resource(s). Change requests failed for some resources. BizTalkAssemblyResourceManager failed to complete end type change request. Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED)) 0 0
Error 3 Unspecified exception: "
Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))"

Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED)) 0 0

I cost an hours to check this errors, finally I found that it cause by the OS Windows Server 2008.




The default running access right won't be administrator though you log in Windows Server 2008 as member of administrartors group. For running as the adminstrator, you should right click Visual Studio 2008 's shoucut, then select Run as administrator. The “Access is denied” error will be fixed after you run Visual Studio 2008 as administrator.


Chinese:
今天我在Windows Server 2008中部署BizTalk程序时出现了一个“Access is denied”的错误,同样的程序在别的机器上部署时,一切正常,只有在Windows Server 2008中才会出现这种错误,百思不得其解.
 最后我发现原来是Windows Server 2008的问题,在WS2008中运行程序时,即使你是以管理员的身份登录,程序默认不是以管理员的权限运行的,除非你运行程序时右键然后选择"Run as administrator".
 以管理员的权限运行程序后,"Access is denied"的异常就解决了!