【发布时间】:2012-06-24 01:51:17
【问题描述】:
我有一个共享给大约 30 台不同计算机的 .NET 应用程序(32 位和 64 位计算机的混合)。
编译后,应用程序设置为目标“任何 CPU”。
它在所有机器上都运行良好,除了一台是 Windows 7 64 位的机器。
错误信息是:
在此操作期间检测到以下错误。 * [2011 年 11 月 2 日 上午 8 点 59 分 40 秒] System.ArgumentException - 值不在预期范围内。 - 来源:System.Deployment
经过研究,我发现如果我将目标 CPU 更改为 64 位,它在问题机器上运行良好,但在 32 位计算机上无法运行。
有解决办法吗?
堆栈跟踪:
- Stack trace:
at System.Deployment.Internal.Isolation.IStore.LockApplicationPath(UInt32 Flags, IDefinitionAppId ApId, IntPtr& Cookie)
at System.Deployment.Application.ComponentStore.LockApplicationPath(DefinitionAppId definitionAppId)
at System.Deployment.Application.SubscriptionStore.LockApplicationPath(DefinitionAppId definitionAppId)
at System.Deployment.Application.FileDownloader.PatchFiles(SubscriptionState subState)
at System.Deployment.Application.FileDownloader.Download(SubscriptionState subState)
at System.Deployment.Application.DownloadManager.DownloadDependencies(SubscriptionState subState, AssemblyManifest deployManifest, AssemblyManifest appManifest, Uri sourceUriBase, String targetDirectory, String group, IDownloadNotification notification, DownloadOptions options)
at System.Deployment.Application.ApplicationActivator.DownloadApplication(SubscriptionState subState, ActivationDescription actDesc, Int64 transactionId, TempDirectory& downloadTemp)
at System.Deployment.Application.ApplicationActivator.InstallApplication(SubscriptionState& subState, ActivationDescription actDesc)
at System.Deployment.Application.ApplicationActivator.PerformDeploymentActivation(Uri activationUri, Boolean isShortcut, String textualSubId, String deploymentProviderUrlFromExtension, BrowserSettings browserSettings, String& errorPageUrl)
at System.Deployment.Application.ApplicationActivator.ActivateDeploymentWorker(Object state)
【问题讨论】:
-
什么时候出现这个异常?运行应用程序时还是安装时?
-
这是一个仅限在线的应用程序:应用程序无法启动。联系应用程序供应商。所以当它尝试第一次运行时
-
您需要发布异常的堆栈跟踪。
-
使用堆栈跟踪编辑问题