2014-03-02から1日間の記事一覧

常に管理者権限で実行する

OS

[OS] Win8の場合。 ショートカットを右クリック->プロパティ->ショートカットタブ->詳細設定ボタンで管理者として実行のチェックを入れる。 Win7の場合はこちら。 常に管理者権限で実行する - UACに関連する設定 - Windows7の設定

構造体を明示的に定義する

C#

[C#][StructLayout(LayoutKind.Explicit)]で 全てのメンバ変数に対して明示的に位置を指定となる。 [StructLayout(LayoutKind.Explicit)] unsafe struct ImageData { [FieldOffset(0)] public int Width; [FieldOffset(4)] public int Height; [FieldOffset…

マーシャリングとは非.NETのデータ構造を.NETのオブジェクトに変換すること(もしくはその逆)

COM

マーシャリングは…非.NETのデータ構造を.NETのオブジェクトに変換すること(もしくはその逆)です。 .NETの全てのオブジェクトはガーベージコレクタによりメモリ管理されています。そのため、.NETのオブジェクトのことをマネージドオブジェクト、そこで使わ…

CStringからBSTRを作るにはAllocSysString()/SetSysString()を使う

Microsoft Foundation Class(MFC)には BSTR をラップするヘルパー クラスがありません。代わりに、別の方法で BSTR と MFC の CString クラス間の変換が簡単に行えます。次のように BSTR を CString コンストラクタに渡すだけで BSTR を CString に変換で…