問題タブ [setwindowlong]

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 投票する
1 に答える
327 参照

c++ - winapi: 装飾の削除

これは重複しているように見えますが、最初に聞いてください。これは、デバッグ側の詳細です。hereの方法を使用して、ウィンドウの境界線を削除しようとしています。

これらの機能が機能しなくなる原因は何ですか? を使用してウィンドウを非表示にしShowWindow(Handle, SW_HIDE)ても機能しません。多くの関数を持つ独自の Window クラスを作成したので、ここにコード全体を貼り付けたくありません。

ウィンドウの初期化関数は次のとおりです。

WindowPropsご覧のとおり、作成中のウィンドウに関するさまざまな情報が含まれています。HWNDクラスには、ウィンドウ ハンドラーを指すポインター変数もあります。

メインで試したことがいくつかあります。ここで、sw2 はウィンドウ クラスへのポインターです。

コードをデバッグする場所についての提案が欲しいです。はるかに単純なウィンドウ プロジェクト (Microsoft のサンプル プロジェクト) でテストしたので、関数が機能することはわかっています。

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

winapi - VB6 SetWindowLong が Windows 7 64 ビットで更新の問題を引き起こす

私はまだサポートしており、GetWindowLong と SetWindowLong を利用して設定に応じて実行時に ControlBox を削除する古い vb6 アプリケーションをサポートしています。これはすべての 32 ビット システムでうまく機能しますが、64 ビット システムで実行すると、メイン ウィンドウが適切に更新されなくなります。問題は、TextBox、ListBox、または CommandButton などの入力コントロールにあるようです。特定のウィンドウに覆われた後、フォーカスを受け取るまで表示されず、境界線が正しく表示されません。

MSDN のドキュメントhttp://msdn.microsoft.com/en-us/library/ms633591%28v=vs.85%29.aspxを読みましたが、これらの関数は互換性を保つために ...WindowLongPtr 関数に取って代わられていると書かれています32 ビット システムと 64 ビット システムの両方で使用できます。私が読むことができたすべてのものから、実際には、異なるプラットフォームで実行するのではなく、32 ビット バージョンと 64 ビット バージョンの両方をコンパイルすることについて話していることがわかりました。宣言をから変更しようとしました

しかし、「user32 に DLL エントリ ポイント GetWindowLongPtrA が見つかりません」というエラーが表示されます。そこで、エイリアスを「... WindowLongA」のままにしてみましたが、それが実行され、予想どおり、更新の問題に違いはありません。

他の誰かがこれを見たことがありますか、何か提案がありますか?

コードの使用方法のサンプルを次に示します。

ありがとう

dbl

0 投票する
0 に答える
213 参照

c++ - WNDPROC CALLBACK での LuaRef Call のクラッシュ


こんにちは、みんな。
lua をサポートするオーバーレイがあります。
いくつかの WndProc コールバックを作成する必要があるため、SetWindowLong を使用してターゲット ウィンドウの WndProc をフックし、古いウィンドウを保存しました。

func を wndCall Vector(LuaRef) に保存するコールバックを追加するためのグローバル関数を作成しました
Lua 部分は正常に動作しています。WM_KEY... イベントのメッセージが正常に表示されます。
唯一の問題は次のとおりです。いくつかのボタンまたはスパムコマンドを押したままにすると、ランダムエラーでクラッシュしました:(
CALLBACKが1回のティックで複数回ヒットし、LuaStateまたはidkで何かが壊れたためだと思います。
解決策またはいくつかを見つけるのを手伝ってくださいWndProc 関数の追加チェック。

0 投票する
0 に答える
49 参照

c# - SetWindowLong クリック可能なフォーム要素

SetWindowLongフォームをクリックしてオーバーレイを表示するために使用します。クリック可能なボタンといくつかの要素を作成したいのですが、フォームはオーバーレイであるため、まだ見えません。

私のオンロード機能:

その他のセクション:

ボタンに何が起こっているのか、どうすればこれを機能させることができますか?

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

go - Win32 API (メモ帳、Word、Outlook、Chrome など) を使用して開いたアプリケーションのウィンドウを管理するにはどうすればよいですか?

Win32 API を使用して実行するアプリケーションの wndproc 関数をどのように管理できますか? 私が使用するソフトウェア言語は Go です。

複数の方法を試しましたが、できませんでした。手伝ってくれますか?

Microsoft Spy++でメモ帳アプリのHANDLE(HWND)値を学習しています

次に、SPY ++ を介して Notepad ++ で変更を監視します。

Spy ++ と同じように、私が書いたカスタム WNPROC 関数の管理を手伝ってください。

方法 2: