1

不久前,我制作了一个关于 2012 年选举的 XNA 游戏(请参阅此处http://www.gfcf14greendream.com/games/votebuster.html),为了让它在线玩,我使用了 JSIL。但是,我注意到 JSIL 对于某些计算机来说仍然有点复杂,并且在它们中运行得不好,所以我一直在研究不同的选项,然后了解了 ClickOnce。我已经通过 ClickOnce 将我的游戏发布为 CD/DVD 文件,虽然发布没有错误,但我无法让它运行(请参阅让我在 XNA 4.0 中安装后无法运行 Tumbleweed Clickonce 应用程序的问题) . 现在我相信我知道错误是什么了,因为我的游戏使用了 4 个 txt 文件,显然这些文件没有包含在出版物的内容中。所以为了证明我的理论,我我无法在另一台计算机上运行已发布的应用程序,为此我添加了 System.Windows.Forms 作为参考。我猜“FilenotFoundException”应该在运行时出现,但是虽然我之前已经安装了无数次卸载的应用程序并且从未运行它,但这次我由于某种原因无法安装它。一旦安装似乎完成,我就会收到此错误:

Application cannot be started. Contact the application vendor.(我猜这意味着我)

除此消息外,还有两个按钮:确定和Details。当我按下详细信息时,会弹出一个记事本文件,内容如下:

PLATFORM VERSION INFO
    Windows             : 6.1.7601.65536 (Win32NT)
    Common Language Runtime     : 4.0.30319.1008
    System.Deployment.dll       : 4.0.30319.1 (RTMRel.030319-0100)
    clr.dll             : 4.0.30319.1008 (RTMGDR.030319-1000)
    dfdll.dll           : 4.0.30319.1 (RTMRel.030319-0100)
    dfshim.dll          : 4.0.31106.0 (Main.031106-0000)

SOURCES
    Deployment url          : file:///E:/My%20Projects/XNA/Finished/VoteBuster/VoteBuster/VoteBuster/publish/VoteBuster.application
    Application url         : file:///E:/My%20Projects/XNA/Finished/VoteBuster/VoteBuster/VoteBuster/publish/Application%20Files/VoteBuster_1_0_0_0/VoteBuster.exe.manifest

IDENTITIES
    Deployment Identity     : VoteBuster.application, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b4915d412ad8da99, processorArchitecture=x86
    Application Identity        : VoteBuster.exe, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b4915d412ad8da99, processorArchitecture=x86, type=win32

APPLICATION SUMMARY
    * Installable application.

ERROR SUMMARY
    Below is a summary of the errors, details of these errors are listed later in the log.
    * Activation of E:\My Projects\XNA\Finished\VoteBuster\VoteBuster\VoteBuster\publish\VoteBuster.application resulted in exception. Following failure messages were detected:
        + Unable to install this application because an application with the same identity is already installed. To install this application, either modify the manifest version for this application or uninstall the preexisting application.

COMPONENT STORE TRANSACTION FAILURE SUMMARY
    No transaction error was detected.

WARNINGS
    There were no warnings during this operation.

OPERATION PROGRESS STATUS
    * [8/16/2013 11:04:15 PM] : Activation of E:\My Projects\XNA\Finished\VoteBuster\VoteBuster\VoteBuster\publish\VoteBuster.application has started.
    * [8/16/2013 11:04:15 PM] : Processing of deployment manifest has successfully completed.
    * [8/16/2013 11:04:15 PM] : Installation of the application has started.
    * [8/16/2013 11:04:15 PM] : Processing of application manifest has successfully completed.
    * [8/16/2013 11:04:18 PM] : Found compatible runtime version 4.0.30319.
    * [8/16/2013 11:04:18 PM] : Detecting dependent assembly Microsoft.Xna.Framework.GamerServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842CF8BE1DE50553, processorArchitecture=msil using Microsoft.Xna.Framework.GamerServices, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=msil.
    * [8/16/2013 11:04:18 PM] : Detecting dependent assembly Microsoft.Xna.Framework.Graphics, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842CF8BE1DE50553, processorArchitecture=x86 using Microsoft.Xna.Framework.Graphics, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86.
    * [8/16/2013 11:04:18 PM] : Detecting dependent assembly Microsoft.Xna.Framework.Video, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842CF8BE1DE50553, processorArchitecture=msil using Microsoft.Xna.Framework.Video, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=msil.
    * [8/16/2013 11:04:18 PM] : Detecting dependent assembly Microsoft.Xna.Framework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842CF8BE1DE50553, processorArchitecture=x86 using Microsoft.Xna.Framework, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86.
    * [8/16/2013 11:04:18 PM] : Detecting dependent assembly Microsoft.Xna.Framework.Input.Touch, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842CF8BE1DE50553, processorArchitecture=msil using Microsoft.Xna.Framework.Input.Touch, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=msil.
    * [8/16/2013 11:04:18 PM] : Detecting dependent assembly Microsoft.Xna.Framework.Avatar, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842CF8BE1DE50553, processorArchitecture=msil using Microsoft.Xna.Framework.Avatar, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=msil.
    * [8/16/2013 11:04:18 PM] : Detecting dependent assembly Microsoft.Xna.Framework.Net, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842CF8BE1DE50553, processorArchitecture=msil using Microsoft.Xna.Framework.Net, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=msil.
    * [8/16/2013 11:04:18 PM] : Detecting dependent assembly Microsoft.Xna.Framework.Storage, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842CF8BE1DE50553, processorArchitecture=msil using Microsoft.Xna.Framework.Storage, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=msil.
    * [8/16/2013 11:04:18 PM] : Detecting dependent assembly Microsoft.Xna.Framework.Game, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842CF8BE1DE50553, processorArchitecture=x86 using Microsoft.Xna.Framework.Game, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86.
    * [8/16/2013 11:04:18 PM] : Detecting dependent assembly Microsoft.Xna.Framework.Xact, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842CF8BE1DE50553, processorArchitecture=x86 using Microsoft.Xna.Framework.Xact, Version=4.0.0.0, Culture=neutral, PublicKeyToken=842cf8be1de50553, processorArchitecture=x86.
    * [8/16/2013 11:04:18 PM] : Request of trust and detection of platform is complete.
    * [8/16/2013 11:04:19 PM] : Downloading of subscription dependencies is complete.
    * [8/16/2013 11:04:19 PM] : Commit of the downloaded application has started.

ERROR DETAILS
    Following errors were detected during this operation.
    * [8/16/2013 11:04:19 PM] System.Deployment.Application.DeploymentException (Subscription)
        - Unable to install this application because an application with the same identity is already installed. To install this application, either modify the manifest version for this application or uninstall the preexisting application.
        - Source: System.Deployment
        - Stack trace:
            at System.Deployment.Application.SubscriptionStore.CheckApplicationPayload(CommitApplicationParams commitParams)
            at System.Deployment.Application.SubscriptionStore.CommitApplication(SubscriptionState& subState, CommitApplicationParams commitParams)
            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)

COMPONENT STORE TRANSACTION DETAILS
    No transaction information is available.

从错误中,我得到 clickonce is Unable to install this application because an application with the same identity is already installed. To install this application, either modify the manifest version for this application or uninstall the preexisting application,但我检查了一下,起初已经安装了一个游戏实例。我卸载了它,(不只是删除,我是通过控制面板完成的),但同样的错误仍然存​​在。它还说我可以尝试modify the manifest version for this application,但这就是我卡住的地方。我不知道要修改什么>.<Application Files已发布游戏文件夹中的清单在此处http://www.gfcf14greendream.com/VoteBusterexemanifest.txt以 txt 格式显示,因为将其放在这里超过了问题允许的字符。请任何人,如果可以的话,让我知道可能导致这种情况的原因,任何帮助都将不胜感激!

4

2 回答 2

0

该消息清楚地表明您的应用程序未从系统中完全删除。

在注册表中检查您的应用程序。位置是

HKCU\Software\Classes\Software\Microsoft\Windows\CurrentVersion\Uninstall。

从您的应用程序中复制卸载字符串并在命令提示符下执行。

如果您的应用程序被成功卸载,那么您必须需要清除应用程序缓存。

打开命令提示符并运行rundll32 dfshim CleanOnlineAppCache

如果这不成功,请转到

C:\Users[用户名]\AppData\Local\Apps

并删除文件夹。

在删除文件夹之前,请确保您的机器中没有安装其他 clickonce 应用程序。

尝试这些场景,如果接受它,让我知道这个答案是否有帮助。:)

于 2013-08-22T10:41:53.627 回答
0
  1. 通过在开始菜单中的运行中输入 cmd 打开命令提示符。
  2. 切换到mage.exe所在的路径。在我这边,路径是C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin。输入“cd C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin”。
  3. 现在输入 Mage.exe -cc。会出现提示:应用程序缓存已清除。
于 2013-12-05T06:25:45.793 回答