Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 已部署的应用程序在Visual Studio 2010中找不到其资源_C#_Visual Studio 2010_Deployment_Resources_Publish - Fatal编程技术网

C# 已部署的应用程序在Visual Studio 2010中找不到其资源

C# 已部署的应用程序在Visual Studio 2010中找不到其资源,c#,visual-studio-2010,deployment,resources,publish,C#,Visual Studio 2010,Deployment,Resources,Publish,在另一台机器上发布应用程序时,我遇到了一个大问题。图片和声音等应用程序资源在任何地方都找不到,因为它们实际安装在我不知道的地方。。我说的是一键式部署!我已将文件放在解决方案资源管理器的资源文件夹中的单独文件夹中,路径是设置中的字符串路径,如…\Resources\Images\Cards\和…\Resources\Sounds\无论我做什么,程序都找不到其资源,因此这里的基本问题是什么?我认为路径有问题,因为我看到当程序安装时,它会安装相同数量的MB。有什么建议吗? C Visual Studi

在另一台机器上发布应用程序时,我遇到了一个大问题。图片和声音等应用程序资源在任何地方都找不到,因为它们实际安装在我不知道的地方。。我说的是一键式部署!我已将文件放在解决方案资源管理器的资源文件夹中的单独文件夹中,路径是设置中的字符串路径,如…\Resources\Images\Cards\和…\Resources\Sounds\无论我做什么,程序都找不到其资源,因此这里的基本问题是什么?我认为路径有问题,因为我看到当程序安装时,它会安装相同数量的MB。有什么建议吗?
C Visual Studio 2010 Black Jack游戏

如果我正确理解了这个问题,我相信我也遇到了类似的问题

我正在为我的一个c应用程序创建安装程序,每当我安装程序时,它都找不到运行所需的任何资源

问题是安装程序放在桌面和“程序”菜单中的文件没有设置为快捷方式。尝试将类型设置为快捷方式我正在使用microsoft visual studio 2008,它需要右键单击->创建新快捷方式->选择文件来创建快捷方式。。。无论您使用什么IDE,它都可能不同


编辑-我刚刚注意到你在标签中添加了vs 2010,所以过程应该非常类似

经过一段时间的努力,我找到了这个问题的答案。。
在即将发布时,您必须在设置中删除资源文件夹之前的“..\”,否则部署的应用程序将找不到其资源,因此它们将不在所述的同一文件夹中。但是请记住,如果您想继续处理您的项目,您必须将…\ \放回调试程序,否则调试将无法工作!!!我不允许在这里发布该图像,因为我还没有赢得10个声誉..:

我也遇到了同样的问题,您可以执行以下操作:

打开.resx文件 文件上方有一个访问修改器列表框。如果设置为“不生成代码”,请从列表中选择“公共” 建造


希望问题已经解决。

在Visual Studio 2010 professional中打开您的项目 打开项目属性 选择网页 在“服务器”下,将虚拟路径设置为已部署的网站虚拟路径

如果将虚拟路径设置为/BookStore 您需要更新所有资源引用

从下面的

src=../../img/picture.png


src=/BookStore//img/picture.png

我也有同样的问题,我假设是这样的,有两条不同的路径。 这就是我所做的,这样当从调试到生产时,我就不再需要编辑文件路径

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

嗨,克雷格!在哪里可以找到类型?最佳做法是找到exe所在的位置,并在同一位置搜索资源。这两种情况都适用。或者,如果应用程序是从其他应用程序中启动的,或者使用不同的工作文件夹启动的,则应用程序将再次无法找到资源。