2012-04-21 2 views
0

リソース(.resx)ファイルを含むWindowsサービスアプリケーションを作成しました。私の問題は、セットアッププロジェクトを使用してサービスをインストールするときです。 .resxファイルが見つからないようです。リソースファイルを自分のプログラムに埋め込むためには、何が必要ですか?Windowsサービスアプリにリソースファイルを追加するには?

アップデートは、それを修正しました。 @UnhandledExceptionが正しいです。それは問題を解決するための一つの方法ですが、なんらかの理由で私にとってはうまくいきません。私が修正したのは、プロジェクト内のすべてのファイルをVisual Studioに表示することでした。私はbin\debugを閲覧します。実際には ".resources"という拡張子を持つリソースファイルが見つかりました。私はそれをc:\Program Files\my app\にコピーして、それがうまくいった。それは正しいアプローチではないかもしれませんが、私は今度はそれが必要です。

おかげで、

答えて

2

は、リソース(.resxファイル)ファイルのプロパティやリソース内の各ファイルに埋め込まれたリソースにビルドアクションを変更しました。

Properties=> Build Action => Embedded Resource

+0

私はこれを既に行いましたが、機能しません。ありがとうございます... –

+0

私の単体テストでも、リソースファイルを見つけることができません... –

+2

リソースとは – Damith

0

は、Windowsサービスアプリケーションを実行し、リソースにアクセスする必要がある、ビルドアクションとして、そのリソースをマークしている場合:埋め込まれたリソース、そしてあなたのリソースへの絶対パスを取得するには、以下のコードを使用しますファイル:

/// <summary> 
/// This method seems a bit complicated for fetching a file's path, 
/// but it's flexible enough to fetch a path for both console 
/// applications and service applications. 
/// </summary> 
/// <param name="relativePath">Relative path to a resource.</param> 
/// <returns>Absolute path.</returns> 
private string GetAppAbsolutePath(string relativePath) 
{ 
    return Path.Combine(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location), relativePath); 
} 

希望します。

関連する問題