問題タブ [satellite-assembly]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - サテライト アセンブリを静的にリンクできますか?
私はサテライト アセンブリについてその構造を理解するのに十分な知識がありません。それらすべてを単一の dll に静的にリンクし、静的にリンクされていない場合と同じ機能を得ることができるかどうか興味があります。
c# - アセンブリ内の既定の言語を削除し、サテライト アセンブリに移動する
ほとんどが C# で記述された .Net 3.5 アプリケーションがあります。これは、.resx ファイルを使用して、文字列、コントロールのサイズと位置などで構成される複数の異なる言語の国際化データを格納します。デフォルトのカルチャ データが他のカルチャ データとほぼ同じ方法でサテライト アセンブリに引き出されるような方法でアプリケーションをコンパイルするにはどうすればよいですか?
ユーザーが 1 つの (既定以外の) 言語でソフトウェアを使用し、bin ディレクトリのカルチャ フォルダーを削除してから、既定の言語にアクセスできるようになる状況を防止しようとしています。
フレームワークの制限によりこれが非現実的または不可能な場合、デフォルト以外の言語でコンパイルして、アプリケーションのデフォルト以外の単一バージョンをユーザーに提供できるようにすることは可能でしょうか?
回答ありがとうございます。
.net - dll が表示されるフォルダーの名前を変更するだけで、ある言語のサテライト リソース アセンブリを別の言語の OS で使用できますか?
ローカライズされたリソースを使用して .NET サテライト アセンブリをコンパイルする場合、アセンブリ自体はそれがどの言語用であるかを認識していますか?それとも、アセンブリが表示されるフォルダーで暗黙的に認識されていますか?
アプリがすべてローカライズされているかどうかをテストするために、すべての文字列が「@」記号で囲まれたローカライズされたアセンブリを作成し、それを EN-GB OS の「en」サブフォルダーにインストールしてアプリをロードし、すべてのシンボルが「@」記号で囲まれているのが見えます。ドイツ語の OS で同じアセンブリを使用できますか?「de」サブフォルダーに配置すると、アプリは引き続きローカライズされますか? または、アセンブリのコンパイルにロケールが埋め込まれているため、適切な場所で見つかったとしてもロードされませんか?
.net - ビルド後にSatelliteアセンブリを別のフォルダにコピーするにはどうすればよいですか?
WPFプロジェクトがあり、衛星アセンブリを使用したローカリゼーションのサポートを追加しました。私は2つのカルチャ、つまりen-USとfr-CAをサポートしています。
プロジェクトをビルドすると、en-USとfr-CAの2つのフォルダーと、それに対応するサテライトアセンブリがフォルダーに含まれます。
問題は、プロジェクトがビルドされた後、bin/debugフォルダーの内容を別のディレクトリにコピーする必要があることです。
ビルド後のイベントを使用しているdllをコピーするには、copy / y "$(TargetPath)" "c:\ Temp \ Plugins \"
en-USとfr-CAの2つのフォルダも"c:\ Temp \Plugins\"にコピーしたいと思います。どうすればいいのですか?ビルド後のイベントでen-US、fr-CAのような名前をハードコーディングしたくないのは、少なくとも30言語のサポートを追加する予定だからです。
ビルド後にSatelliteアセンブリを別のディレクトリにコピーできる一般的な方法はありますか?
**注:Satelliteアセンブリのみが必要です。コピーしたくない他のファイルが、bin/debugフォルダーにたくさんある可能性があります。
c# - resx ファイルを持つ別のアセンブリに保持されている文字列リソースを読み取る際の問題
別のアセンブリの 'resx' ファイルで定義された文字列リソースがあります。そのアセンブリへのプロジェクト参照が WinForm プロジェクトに追加されます。プロジェクト参照が正しく追加され、コーディング時に文字列にアクセスできます。ただし、実行時に、参照する文字列に対して NULL を返します。文字列をメッセージ ボックスにメッセージとして表示しようとしています。
クイック ウォッチでリソース文字列を見ると、「この名前は現在のコンテキストに存在しません」と表示されます。
何がうまくいかないのですか?
asp.net - サテライト アセンブリが ASP.NET アプリによって取得されない
App_GlobalResources フォルダーに Labels.resx を含む「TestResourceApp」という Web プロジェクトがあります。サテライト アセンブリを作成して、別の言語を追加したいと考えています。
サテライト アセンブリを作成するために行った手順を次に示します。デフォルトのテキストは常に表示されます。私は何を間違えましたか?
1) 別のフォルダーに Labels.fr.resx を作成します。
2) リソース ファイルを生成します。
Resgen Labels.fr.resx TestResourceApp.App_GlobalResources.Labels.fr.resources
3) サテライト アセンブリを生成します。
AL /t:lib /embed:TestResourceApp.App_GlobalResources.Labels.fr.resources /out:french.dll /c:fr
4) french.dll を TestResourceApp/bin/fr にコピーします。
web.config で uiculture を auto に設定し、ブラウザーの言語を変更しました。
c# - フォールバック カルチャ "en-US" の "XX.dll" という名前のサテライト アセンブリは、.NET アプリでエラーが見つかりませんでした
オープンソースの .NET アプリケーションをカスタマイズしています。それは完全にうまくコンパイルされます。しかし、フォームとコントロールはデザイナーでの表示を拒否し、次のエラーをスローします:
フォールバック カルチャ "en-US" の "XX.dll" という名前のサテライト アセンブリが見つからなかったか、読み込めませんでした。これは通常、セットアップの問題です。アプリケーションの再インストールまたは修復を検討してください。
多言語アプリケーションであることは承知していますが、追加の言語を削除して、フォーム デザイナーによる簡単なキャプションのカスタマイズに固執したいと考えています。
また、この問題により、コントロールに画像を追加できなくなります。次の行で同じ例外が発生します。
サテライト アセンブリ リソースを無効にするには、何を変更する必要がありますか?
ありがとう...
.net - 複数のプロジェクトのヘルパー/ユーティリティライブラリを使用して肥大化を減らすためのベストプラクティス
さて、私は自分で開発したアプリケーションを持っています。それをプロジェクトAと呼びましょう。共有ライブラリに入れたMicrosoft .NET Frameworkにない関数、これをMyLibと呼びましょう。
現在、プロジェクトB、C、D、EもMyLib(多くのプロジェクト)を使用しています。私の「MyLib」は、4〜5年前からゆっくりと追加されています。
私が今抱えている問題は、MyLibが巨大であるということです。ええと、5MBですが、私はそれを巨大と呼んでいます。
私が持っている質問は、MyLibを使用してプロジェクトをコンパイルし、MyLibから未使用の関数やクラスなどを削除するにはどうすればよいですか?MyLibの1つの小さな静的関数を使用するHelloWorldアプリが、6MBのHelloWorld.exe(ilmergeの後)になるのはかなり残念です。
FOSS>Payware。
c# - 言語が「デフォルト」に設定されていますが、resource.dll が表示されません。
フォームの 1 つを Localization: True に設定し、言語を「デフォルト」のままにしました。
resx を確認したところ、フォームのすべての文字列が含まれていることを確認しました。
だから私はアプリケーションを実行し、デバッグ ディレクトリにサテライト リソース DLL を見つけたいと思っていましたが、そこにはありませんでした。
これは私を驚かせました.. DEFAULT 言語がサテライト DLL としてコンパイルされていないということですか?
言語 (DEFAULT を含む) をサテライト アセンブリとして配布したいと考えています。