問題タブ [pinvoke]
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# - C# でファイル記述子へのパイプ接続を開く
ファイル記述子 3 からクライアント プログラムからメッセージを読み取る従来のアプリがあります。これは外部アプリであるため、これを変更することはできません。クライアントは C# で記述されています。C# で特定のファイル記述子への接続を開くにはどうすればよいですか? AnonymousPipeClientStream() のようなものを使用できますか? しかし、接続先のファイル記述子をどのように指定すればよいのでしょうか?
.net - C#を使用してWindowsに接続し、Windows7の新機能を作成する
来たるWindows7の本当に便利なUI機能を見たところです(http://www.gizmodo.com.au/2008/10/windows_7_walkthrough_boot_video_and_impressions-2.htmlにアクセスし、「新しいウィンドウのサイズ変更のスーパーサイエンティフィックビデオ」というタイトルのビデオまでスクロールしてください。特徴)
簡単に言うと、タイトルバーの横にあるウィンドウを画面の上部にドラッグして最大化し、下にドラッグして復元し、画面の左端または右端にドラッグして、突き合わせた位置にスナップさせることができます。ドラッグした端に対して、画面の半分を占めるようにサイズを変更しました。
「似たような」ことをするキーボードベースのアプリがたくさんあることはわかっていますが、上記のようなシンプルで便利なマウスベースのプログラムは見たことがありません。あなたが1つを知っている(またはそれを書くのに十分賢い)なら、URLを投稿してください:)
とにかく、これを行うための小さなアプリを作成したい場合は、質問があります。
これを行うために小さなアプリを作成しようとした場合、.NETアプリとして作成できますか?Windowsのウィンドウのドラッグアンドドロップ処理にフックすることはかなり低レベルであり、C#.NETで実行できることではないかもしれません。
昼休みにこのような小さなアプリをノックアウトできる賢い人はいますか?;)少なくともWindows 7の発売前は、Windows7の機能を模倣したものは非常に人気があると確信しています。
編集: AeroSnapの連中(http://www.aerosnap.de/index_eng.htm)は、この機能を実装し、ダウンロード数で判断すると、人気のある機能でした。
c# - WPFでウィンドウを前面に持ってくる
WPF アプリケーションをデスクトップの前面に表示するにはどうすればよいですか? これまでのところ、私は試しました:
どれもジョブを実行していません (Marshal.GetLastWin32Error()
これらの操作が正常に完了したことを示しており、各定義の P/Invoke 属性には がありますSetLastError=true
)。
新しい空の WPF アプリケーションを作成SwitchToThisWindow
し、タイマーを使用して呼び出すと、期待どおりに機能するため、元のケースで機能しない理由がわかりません。
編集:グローバルホットキーと組み合わせてこれを行っています。
c# - ビジュアル スタイルを使用してタスク バー ボタンを描画するにはどうすればよいですか?
DeskBand ツールバーを作成しました。タスク バー ボタンとしてスタイルのビジュアル スタイルを持つボタンをツールバーに表示したいと考えています。
.NET では、VisualStyleRenderer を使用してタスクバーの背景をレンダリングできますが、ボタンをレンダリングする方法があります。
パスや画像を描画してボタンの外観をエミュレートするのではなく、Visual Styles を使用してボタンを描画するために使用できる Win32 API はありますか?
pinvoke - P/Invoking 中に DLL が見つからない場合、欠落している特定のアンマネージ DLL に関するメッセージを取得するにはどうすればよいですか?
アンマネージ ライブラリ (「A.dll」など) にリンクし、そのライブラリが別のライブラリ (「B.dll」) にリンクしているときに、B.dll が見つからない場合、読み込みに失敗したという実行時エラー メッセージが表示されます。 「B.dll」。
しかし、マネージ コードから 'A.dll' に P/Invoke を実行すると、次の形式の一般的な例外が発生します。
未処理の例外: System.DllNotFoundException: DLL 'A.dll' を読み込めません: 指定されたモジュールが見つかりませんでした。
マネージ コードから p/invoking するときに、ロードに失敗した特定のアンマネージ dll ファイルを特定するエラー メッセージを取得するにはどうすればよいですか?
c# - アセンブリから動的に読み込まれたインターフェイスを操作し、そのメンバーを呼び出す方法
このように、アセンブリをロードして、特定のインターフェイスを実装するすべての型を取得するためのコードがいくつかあります (asm が有効でロードされたアセンブリであると仮定します)。
これらのオブジェクトのインスタンスを作成し、オブジェクトのメソッドとプロパティを呼び出す必要があります。そして、後で使用できるように、作成されたオブジェクトへの参照を配列に格納する必要があります。
c# - libFLAC を使用して c# で FLAC タグを読み取る方法
libFLAC ライブラリ用の .net c# ラッパーはありますか? そうでない場合、.net フレームワークの C# アプリケーションで libFLAC を使用して FLAC タグを読み取るにはどうすればよいですか? どちらでもない場合、c# で flac タグを読み取るための他のオープンソース ライブラリはありますか?
ありがとう!
c# - C#でp / invokeを使用して配列にポインターを渡すにはどうすればよいですか?
C API署名の例:
void Func(unsigned char* bytes);
Cでは、配列へのポインターを渡したい場合、次のことができます。
上記のAPIをP/Invokeに変換して、C#バイト配列へのポインターを渡すことができるようにするにはどうすればよいですか?
c# - C#でp/invokeを使用して参照パラメータ(&)(ポインタではない)を渡すにはどうすればよいですか?
C++ API プロトタイプがあります
C# で P/Invoke に変換するにはどうすればよいですか?
私が知っていることから、私が使用する場合
の場合、関数は値の代わりに int へのポインターを受け取ります。
dll - dllimport は、DLL が PATH にあるにもかかわらず、dll を見つけることができませんでした
[Dllimport("DllName.dll")] を使用すると、dll へのパスがプロセスの PATH 環境変数に存在することが確実な場合でも、「DllName.dll が見つかりませんでした」というメッセージが表示されます。