mono.cecil

    0

    1答えて

    私はソースコードにアクセスできないプログラムのアセンブリを持っていて、生成に使用されたコンパイラによって指定された順序を使用する代わりに、そのクラスをアセンブリ内の完全修飾名でアルファベット順にソートしたいそれ。 Mono.Cecilを使用しようとしましたが、IEnumerableのため、ModuleDefinition.Typesプロパティ内のクラスの順序を変更できないようです。 アセンブリモジ

    2

    1答えて

    私の経験から、Mono.Cecilのドキュメントは半稀であり、どこにも答えが見つからないようです。 Unity3DゲームのDLLの1つを修正して新しいクラスを追加しようとしていて、そのクラスに「Update」というメソッドを挿入します。いったん完了したら、IL命令を挿入して、Input.GetKeyDown boolをunityEngineから呼び出したいとします。しかし、私はそれを実際にどのよう

    0

    1答えて

    もっと怠け者になるために、同じコードを書いて同じことをしたいので、テストを行いました。いくつかの属性を使い、mon.cecilを使って.dllファイルにilコードを挿入したいだけです。そして、次の詳細である: これらをコーディングする場合: [FillProperty("Counter")] public int Counter { get; set; } を注入した

    3

    1答えて

    ILリライティングを出力アセンブリに適用するカスタムmsbuildタスクを作成します。 私はすでにPostSharpを使用しており、今では書き換え機能を拡張しようとしています。 いくつかの特殊なケースでは、Mono.Cecilを使用して、プロキシタイプをアセンブリに書き換えます。これは今すぐ問題ありません。 しかし、私は実際のビルドとPostSharp変換の間のビルドプロセスをインターセプトして、

    5

    1答えて

    Mono.Cecilを使用して、Regex.CompileToAssembly()で生成されたアセンブリを読み取っています。型を反復処理すると、ルート名前空間には<Module>という名前の型が1つあります。型には基本型がありません。このタイプは何ですか?これはMono.Cecilアーティファクトなのか、それとも.NETアセンブリの実際の部分なのでしょうか?それはどのような役割を果たしますか?

    13

    1答えて

    私のプロジェクトで静的コンストラクタに関するいくつかの問題がありました。自分のリソースの復号化メソッドを呼び出すために、静的なコンストラクタをタイプ ""に追加する必要があります。 gifの下に、私が遭遇する問題が表示されます。 また、コードスニペットも含めます。 cctorを作成するための コード: MethodDefinition method = new MethodDefinition(

    0

    1答えて

    選択されたメソッドですべてのMethodDefinition.Body.Variablesを一覧表示しようとすると、奇妙な問題が発生しました。ループを完了する前にいくつかスキップするようです。私はこの方法が言っ内のすべての変数を参照するために使用する必要がある任意のフィルタがありますか?(それらのすべては、ローカル変数です) MethodDefinition example = module.Ge

    5

    1答えて

    Mono.Cecilを使用して新しいカスタム属性タイプを作成し、それを既存のタイプに追加します。 これを実証するため、「SampleType」と呼ばれるタイプの「Sample」という名前の既存DLLがあります。 Mono.Cecilを使用して、 "NewAttribute"という名前の "Sample"に新しいタイプのウィーブを作成し、この属性を "SampleType"に追加したいとします。 コ

    11

    1答えて

    IKVM.Reflection.Emitには、「.NET 1.1、.NET 2.0、および.NET 4.0アセンブリの読み取りと出力が可能です(.NET 2.0 )。 " Mono.Cecilは同じですか?このユースケースのためにそれらは交換可能ですか?彼らはどちらも最近サポートされていますか?それらの主要な違いは何ですか?

    1

    1答えて

    2つのアセンブリがあります。 「patchsrc.exe」と「アセンブリ-CSharp.dll」 私はAssembly-CSharp.dll::Class::Method() からpatchsrc.exe::TXDLLLoader.Program::Main() からすべてのIL-命令と、すべてのIL-手順を取得、私は最初のコードからオペコードを「RET」を除去し、その後にそれらをマージ1つの機能