問題タブ [winapi]

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.

0 投票する
2 に答える
7465 参照

c++ - デバッガーで実行すると、AssignProcessToJobObject が「アクセスが拒否されました」というエラーで失敗する

実行するAssignProcessToJobObjectと、「アクセスが拒否されました」で失敗しますが、デバッガーで実行している場合のみです。どうしてこれなの?

0 投票する
9 に答える
80406 参照

c - 特権命令とは何ですか?

クリーンにコンパイルされるコードをいくつか追加したところ、次の Windows エラーが発生しました。

私はバグハントに出かけようとしていますが、たまたまこのメッセージを生成するために何か愚かなことをしたと思っています。コードは、エラーや警告なしできれいにコンパイルされます。EXE ファイルのサイズは 1,454,132 バイトに増加し、 へODCS.libのリンクが含まれていますが、その他の点では Win32 API の純粋な C であり、DEBUG がオンになっています (Windows 2000 の P4 で実行)。

0 投票する
2 に答える
1054 参照

winapi - Win32 で光学ドライブの機能をプログラムで判断するにはどうすればよいですか?

システムで見つかったハードウェアに基づいてソフトウェアをインストールする展開ツールを作成しようとしています。このツールで、光学式ドライブがライターであるかどうか (書き込みソフトウェアをインストールする必要があるかどうかを判断するため)、または DVD を読み取れるかどうか (プレーヤーをインストールする必要があるかどうかを判断するため) を判断できるようにしたいと考えています。次のコードを使用してみました

ただし、常に CD-ROM で応答します

0 投票する
5 に答える
1323 参照

winapi - systray (通知領域) アイコンに WM_MOUSEWHEEL メッセージを受信させるにはどうすればよいですか?

作成した既存のアプリケーションを拡張して、通知領域のアイコンをホイールでスクロールしてミキサーの音量を設定できるようにしたいと考えています。

私の知る限り、通知領域は WM_MOUSEWHEEL メッセージを受け取りませんが、それでも私が達成したいことを正確に実行するアプリケーションを見つけました ( http://www.actualsolution.com/power_mixer )。WinspectorSpy を使用すると、アプリケーションのフォームが受け取るいくつかの奇妙なメッセージ (0x000003d0 および 0x000003d1) に気付きましたが、それらに関する参照は見つかりませんでした。

目的の機能をどのように実現できるかについて誰か考えがありますか?

0 投票する
3 に答える
237 参照

winapi - アプリケーションが消費しているアドレス空間の量を調べて、ユーザーに報告するにはどうすればよいですか?

私は、20 人余りのコーダー チームの一員として、アプリケーションのメモリ マネージャーを作成しています。メモリ クォータが不足しており、約 700Mb しか使用していないように見えるため、何が起こっているかを確認できる必要があります。フラグメンテーションなど、すべてがどこに向かっているのかを報告できるようにする必要があります。何かアイデアはありますか?

0 投票する
2 に答える
17022 参照

c# - Multiple keyboards and low-level hooks

I have a system where I have multiple keyboards and really need to know which keyboard the key stroke is coming from. To explain the set up:

  1. I have a normal PC and USB keyboard
  2. I have an external VGA screen with some hard-keys
  3. The hard keys are mapped as a standard USB keyboard, sending a limited number of key-codes (F1, F2, Return, + and -)

I have a low-level hook (in C# but actually calling upon Win32 functionality) which is able to deal with the input even when my application is not focused.

The problem is that when using the normal keyboard, some of the mapped key-codes at picked up by the application being driven on the external screen. One of the key-presses sent by the external screen and used for confirmation is VK_RETURN. Unless I can identify the "device" and filter upon it, the user could be performing actions and confirming them on a screen their not even looking at.

How do I know which keyboard was responsible for the key-press?

0 投票する
4 に答える
3315 参照

c++ - WindowsAPIのスパイ/ハイジャック技術

APIスパイ/ハイジャックを使用して、作業中のプロジェクトのいくつかのコア機能を実装することに興味があります。この質問でも言及されていますが、それは実際には話題にならなかったので、これについては独自の質問があればもっと良いと思いました。、

これ、さまざまな手法/ライブラリ( MS DetoursIATパッチ)、またはその他の提案について、できるだけ多くの情報を収集したいと思います。

また、誰かがそのような技術を使用した実際の生産経験を持っているかどうかを知ることは特に興味深いでしょう-彼らは生産コードに対して十分に安定させることができますか、それともこれは厳密に研究のための技術ですか?複数のバージョンのWindowsで正しく機能しますか?バグが発生しやすいですか?

個人的な経験と外部リンクの両方が高く評価されています。

0 投票する
1 に答える
313 参照

winapi - プロセスにロードされたシェル DLL から身を守るには?

GetOpenFileName() を使用して標準の Windows の「ファイルを開く」ダイアログを使用すると、シェルは、カスタムのものを含め、ファイル リストを表示するために必要なさまざまな DLL をロードします。

私のアプリケーションでは、TortoiseCVS がアイコンにオーバーレイを描画するために使用する DLL が GdiPlusShutdown() を呼び出していることがわかりました。そのため、「ファイルを開く」ダイアログを表示した後、TortoiseCVS DLL がアンロードされ、GDI+ がシャットダウンされ、私のグラフィック関数はすべて失敗します!

基本的に、古い DLL がアプリケーションによっていつでもロードされ、その状態に対してランダムな処理を開始できるというのは、非常に悪いことのように思えます。私の場合の回避策は非常に簡単でした。GDI+ がシャットダウンされたことを検出した場合は、GDI+ を再起動するだけです。ただし、これがデバッグできないクライアントのマシンで発生した場合、何が起こっているのかを理解するのははるかに困難でした.

誰でも洞察を提供できますか?これが起こらないようにするにはどうすればよいですか?

0 投票する
1 に答える
378 参照

security - プログラムで作成したユーザーがようこそ画面に表示されないのはなぜですか?

Microsoft が提案するNetUserAdd() API を使用して Windows ユーザー アカウントを作成するプログラムがあります。ユーザーが正常に作成され、そのユーザーとしてログインできます。

ただし、Windows XP では、新しく作成されたユーザーが [ようこそ] 画面に表示されません。ようこそ画面を無効にすると、ユーザー名を直接入力して新しいユーザーとしてログインできます。

作成したアカウントのどのプロパティが原因で、ようこそ画面から除外されますか?

0 投票する
3 に答える
1709 参照

c - 編集ボックスで貼り付けイベントをインターセプトするにはどうすればよいですか?

おそらく値がオブジェクトに転送される前に、編集ボックスで貼り付けイベントをインターセプトするにはどうすればよいですか?