2012-06-01 46 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 
相關問題