2012-06-01 43 views
2

在另一台机器上发布我的应用程序时遇到很大问题。作为图片和声音的应用程序资源不能在任何地方找到,但您实际上已将其安装在某处我真的不知道哪里..我正在讨论oneClick Deployment!我已经将这些文件放在解决方案资源管理器的资源文件夹中的单独文件夹中,路径是这样的设置中的字符串路径,例如.... \ Resources \ Images \ Cards \和.... \ Resources \ Sounds \ Whatever I程序无法找到它的资源,那么这里的基本问题是什么?我相信它的路径出了问题,因为我看到程序安装的时候它会安装所有东西(相同数量的MB)。任何人的建议? C#Visual Studio 2010的黑杰克游戏已部署的应用程序无法找到其资源c#Visual Studio 2010

回答

2

嗯,我找到了答案,这个问题而苦苦挣扎后.. 你在您要发布时,必须在“设置”中的资源文件夹之前清除“.. \ .. \”,否则已部署的应用程序无法找到其资源,因此它们不会与所述的文件夹位于同一文件夹中。但是请记住,如果您想继续处理您的项目,则必须将“.. \ .. \”用于调试程序,否则调试将无法运行!我是不允许发布的图像,你在这里展示,因为我没有赢得“10”的名声却.. :)

+0

最佳做法是找到位置,其中的EXE,并在同一位置搜索的资源。这将在这两种情况下正常工作,或者您的应用如果应用程序是从其他应用程序或其他工作文件夹启动的,则无法找到资源。 – codetiger

0

如果我理解正确的问题,我相信我有一个类似的问题...

我创建一个安装程序为我的C#应用​​程序之一,每当我安装了程序找不到它需要运行的任何资源。

问题最终导致安装程序放在桌面和程序菜单中的文件未设置为“快捷方式”。尝试将“类型”设置为“快捷方式”(我使用的是Microsoft Visual Studio 2008,它需要右键单击 - >创建新快捷方式 - >选择文件以创建快捷方式...对于任何IDE您正在使用)

编辑 - 我只注意到你把VS 2010中您的标签,所以这个过程应该是非常相似

+0

嗨Kreg!我在哪里可以找到“类型”? – CSR

3

我有同样的问题,你可以做到以下几点:

  1. 打开.resx文件
  2. 就在文件上方,有一个访问修饰符列表框。如果它被设置为“已生成无代码”,从列表中选择公共

构建,

希望,问题就迎刃而解了。

1

在Visual Studio 2010专业打开项目 打开项目属性 选择Web 在服务器设置的虚拟路径为您的网站上部署虚拟路径。

如果 您需要更新所有的资源引用

看起来像从

SRC以下设置/书店虚拟路径=“../../ IMG/picture.png”

SRC =“/图书城/./ IMG /图片。png“

1

我有同样的问题,我认为它是假设有两种不同的路径 这就是我所做的,所以我不再需要编辑从调试到生产的文件路径

Public RP As String = IO.Path.GetFullPath(My.Resources.ResourceManager.BaseName) 
Public filePath As String = RunOrInstall(RP) 

'Checks to see if debugging or installed and returns correct path 
Private Function RunOrInstall(RP) 

    Dim pathing As String 

    If RP.ToString().IndexOf("bin") = -1 Then 
     pathing = RP.Substring(0, RP.LastIndexOf("\")) & "\Resources\" 
    Else 
     pathing = RP.Substring(0, RP.LastIndexOf("bin")) & "Resources\" 
    End If 

    Return pathing 

End Function 
相关问题