You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
資料現物とかは以下 PowerPoint のファイル http://sdrv.ms/12Gh11k ソースとかはこちら https://github.com/kazuk/SimpleILer/ 比較的簡単(当社比)なコードで、 MSIL を逆アセンブル、制御フロー解析、データフロー解析をやっています。 コアロジックは Msil クラス に実装されていて、上から順に ILInstructions で命令の切り出し、GetRuns で基本ブロックに分解、PopulateControlFlowPath で制御フローパスの列挙、 SimulateEvalStack で評価スタックのシミュレーションをやり、結果として各 IL 命令のデータ依存グラフが得られます。 基本ブロック 簡単に言えば、制御構造単位での命令列です。基本ブロックでは末尾を除いて制御フロー命令が無いようになっています。また、基本ブロ
Resource Page Description Framework Design Studio is a set of tools for reusable library designers. The package contains a GUI tool for viewing, reviewing, and comparing versions of managed APIs. It also contains a command line tool for generating API diff reports. Simple user guide explaining the basics of the tool is included in the setup. The software is provided as is and support is very limit
マーチン・ファウラー先生の黒いDSL本(翻訳版)が5月2日に発売されました。遅ればせながら私も最近購入して熟読しているところです。 この本が示すDSLの種類や内容は、あくまでもオブジェクト指向というコンテキストにおいてのものであり、関数型言語によるDSL開発については一切言及はありませんが、まえがきの「本書に欠けていること」の中で「"関数型言語でのDSL"に関する言及はないので、ご了承ください。」というようなお断りがあり、好感が持てます。マーチン・ファウラー先生に限らず、オブジェクト指向の大御所たちも最近の関数型言語流行の流れにはとても敏感になっているようです。実際、ことDSLに関して言うなら、モナディックなパーサ・コンビネータの存在など、確かに関数型言語の方が有利になる点もいくつかあるし、それらについて書籍内に言及がないことを説明するのは良いことだと思う。この本で示されている考え方やパタ
.NET プロファイリング 高レベル ラッパー クラスによるプロファイラの容易な記述 Joachim H. Frohlich and Reinhard Wolfinger この記事で取り上げる話題: 低レベルの CLR プロファイリング API の内部処理 サンプルのプロファイラ ターゲット アプリケーションの概要 高レベル プロファイリング API の作成 高レベルおよび低レベル API のブリッジ この記事で使用する技術: .NET Framework、COM、C++ この資料は、Microsoft Windows コード ネーム "Longhorn" の Pre-PDC ビルドを基に執筆されており、ここに記載されている情報は変更になることがあります。 サンプルコードのダウンロード: NETProfiling.exe (304KB) 翻訳元: Write Profilers With
In Visual Studio 2022 17.10 Preview 2, we’ve introduced some UX updates and usability improvements to the Connection Manager. With these updates we provide a more seamless experience when connecting to remote systems and/or debugging failed connections. Please install the latest Preview to try it out. Read on to learn what the Connection ...
In Visual Studio 2022 17.10 Preview 2, we’ve introduced some UX updates and usability improvements to the Connection Manager. With these updates we provide a more seamless experience when connecting to remote systems and/or debugging failed connections. Please install the latest Preview to try it out. Read on to learn what the Connection ...
すべての Microsoft 製品 Global Microsoft 365 Teams Copilot Windows Surface Xbox セール 法人向け サポート ソフトウェア Windows アプリ AI OneDrive Outlook Skype OneNote Microsoft Teams PC とデバイス Xbox を購入する アクセサリ VR & 複合現実 エンタメ Xbox Game Pass Ultimate Xbox とゲーム PC ゲーム Windows ゲーム 映画とテレビ番組 法人向け Microsoft Cloud Microsoft Security Azure Dynamics 365 一般法人向け Microsoft 365 Microsoft Industry Microsoft Power Platform Windows 365 開発者
JSIL is a compiler that transforms .NET applications and libraries from their native executable format - CIL bytecode - into standards-compliant, cross-browser JavaScript. You can take this JavaScript and run it in a web browser or any other modern JavaScript runtime. Unlike other cross-compiler tools targeting JavaScript, JSIL produces readable, easy-to-debug JavaScript that resembles the code a
概要 .NET Framework のバージョンが上がるたびに色々と追加され、 今や、動的コード生成にもさまざまなやり方が。 ということで、並べて比較してみたいと思います。 「動的 = リフレクション = むちゃくちゃ遅い」というイメージをもたれる方も多いと思いますが、 実際のところ、1度生成したコードをキャッシュしておくなどの工夫をすれば、意外と許容範囲なパフォーマンスが得られます。 (GUI の描画部分やネットワーク通信部分の遅延と比べれば、演算部分の数倍程度の差は取るに足らない場合が多く、 過剰に気にする必要はありません(もちろん、状況次第)。) 比較コード含めたソースコード一式: DynamicPerformance.zip ポイント 毎回リフレクションを呼び出すのはやっぱりかなり(2~3桁)遅い。 キャッシュ機構を使えば、静的なコードの数倍程度までは速くできる。 C# 4.0 の
引き続き属性設定の実装の仕方のサンプルです。 #region Emitのサンプル3 public class EmitSample3 : IExecutable{ [AttributeUsage(AttributeTargets.Class)] public class IsDynamicTypeAttribute : Attribute{ } [AttributeUsage(AttributeTargets.Class)] public class CreatorAttribute : Attribute{ public CreatorAttribute(string name){ CreatorName = name; } public string CreatorName{ get; set; } } private static readonly string ASM_NAME =
引き続きプロパティの実装の仕方のサンプルです。 #region Emitのサンプル2 public class EmitSample2 : IExecutable{ public void Execute(){ ////////////////////////////////////////////////////////////////// // // プロパティ付きの型を作成. // // // 0.これから作成する型を格納するアセンブリ名作成. // AssemblyName asmName = new AssemblyName{Name="DynamicTypes"}; // // 1.AssemlbyBuilderの生成 // AppDomain domain = AppDomain.CurrentDomain; AssemblyBuilder asmBuilder = doma
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く