問題タブ [rundll32]

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 に答える
3104 参照

windows-7 - Windows 7 で RunDLL32 プロセスが早期に終了するのはなぜですか?

Windows XP と Vista では、次のコードを実行できます。

つまり、ユーザーがモデム コントロール パネル ウィンドウを閉じるまで、WaitForSingleObject は戻りません。

Windows 7 では、同じコードである WaitForSingleObject がすぐに戻ります (戻りコード 0 は、オブジェクトが要求された状態を通知したことを示します)。

同様に、コマンド ラインで実行すると、XP と Vista で実行できます。

また、コントロール パネル ウィンドウが閉じられるまでコマンド プロンプトに制御が戻りませんが、Windows 7 ではすぐに戻ります。

これは RunDll32 の変更ですか? MS が UAC のために Windows 7 の RunDll32 にいくつかの変更を加えたことを私は知っています。これらの実験から、これらの変更の 1 つは、ウィンドウを表示するための追加のプロセスを生成し、元のプロセスを終了できるようにすることが含まれているように見えます。これが事実ではないかもしれないと私に思わせる唯一のことは、プロセスの作成と破棄を示すプロセスエクスプローラーを使用して、呼び出された rundll32 プロセス自体を超えて追加の作成が見られないことです。

これを解決できる他の方法はありますか?コントロールパネルウィンドウが閉じられるまで、関数が返されないようにしたいだけです。

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

windows-7 - rundll32 user32.dll を使用して、ユーザーの環境が変更されたことを示す

Windows 7 で環境変数を変更する機能がありません。ただし、レジストリ設定を変更する権限が付与されています。たとえば、変更できます: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment キー: システムの pathEnv の末尾に追加される BPATH。

しかし、変更を加えても、次の再起動まで変更は有効になりません。

「PATH」が後続のプログラムとウィンドウで常に更新されるように、BPATH の変更を通知できる「常にインストールされる」コマンド ラインを見つけたいと思います。

条件:

  1. システムの詳細タブからではなく、レジストリを介してのみパスとbpathを編集できます...
  2. 標準の Windows 7 インストールに含まれていないソフトウェアはインストールしたくありません。
  3. 通常、これは PowerShell プロンプトの CMD プロンプトから実行する必要があります。
0 投票する
1 に答える
66072 参照

rundll32 - Rundll32 を使用して DLL 関数を実行するには?

ShellExecute ドキュメントを参照として使用する:

コマンドラインから次を実行します。

これにより、例外エラーが発生します。

これが何を意味するのかわかりません:

しかし、説明では、ハンドル (HWND) と、NULL で終わる文字列へのポインター (LPCTSTR) が言及されていますが、非常に紛らわしいです。

どんな助けでも大歓迎です。私ももっと学びたいので、参考文献(本、ウェブリンクなど)も素晴らしいです!

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

qt - FileProtocolHandlerまたはurl.dllからエラーレベルを取得する方法はありますか?

私のプログラムの1つで、rundll32.exe url.dll,FileProtocolHandler c:\path\to\a.fileファイルを開くために使用しています。このファイルを開くことができなかった場合のエラーを処理したいのですが、エラーがあったかどうかを確認する方法がわかりません。それが私のコードです:

startDetached()rundll32.exeを含むプロセスを開くのに常に成功するため、常にtrueを返すようになりました。では、ファイルが見つかった/開いた可能性があるかどうかをどのように知ることができますか?

テスト用に*.batファイルのerrorlevel-thingsを試しました。

しかし、エコーされるものは何もありません。また、%ERRORLEVEL%を読み取ろうとしましたが、ファイルが存在しない場合でも、エラーレベルは0のままです。

誰かがこれに対処する方法を見つける方法を知っていますか?

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

winapi - rundll2呼び出し可能関数を実装する方法は?

rundll32で呼び出すことができる関数もエクスポートするexeを作成しようとしています。これは可能ですか?もしそうなら、なぜそれはこのように機能しないのですか?

私はこれに関するMicrosoftのアドバイスに厳密に従った。

しかし、

rundll32がクラッシュ/DEPが起動します。

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

win64 - rundll32.exe equivalent for 64-bit DLLs

Is there an equivalent of rundll32.exe for calling 64-bit DLLs?

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

windows - Rundll32を使用してマウスボタンを交換するにはどうすればよいですか?

同じ答えが欲しいので、別のフォーラムからの質問を繰り返しています。

MSDNのSwapMouseButton関数から。

コマンドプロンプトからrundll32.exeを介してブールデータをuser32.dllから実行するコマンドのブール型引数に渡すにはどうすればよいですか?

CMD(コマンドプロンプト)からこれを実行しようとしています

ここにアスタリスクがあるのは、議論が進むべき場所です。すでに引数なしで実行し、マウスの左ボタンと右ボタンを入れ替えました(ブール引数のデフォルトのエントリはTRUEのようです)。今、私はそれを元に戻したいです。ただし、引数にFALSEを渡すためにこれらのそれぞれを試しましたが、どれも機能しませんでした(マウスボタンを通常に戻すものはありません)。

  • F
  • f
  • false
  • 誤り
  • FALSE
  • 「偽」
  • 「偽」
  • 「FALSE」
  • 0
  • -1

必要に応じて議論を渡すのを手伝ってください。前もって感謝します。

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

java - rundll32呼び出しから結果をキャプチャする方法は?

私はJavaのこの古いバグ/欠落機能に噛まれてきました:

http://bugs.sun.com/view_bug.do;jsessionid=b2ac8ea11f05c16d948e24d36fb5?bug_id=4673406

重要なのは、Javaの標準の印刷ダイアログの[プロパティ]ボタンは、Windowsでは常に無効になっているように見えることです。このボタンは、PrintService.getServiceUIFactory()がnullではないものを返した場合にのみ有効になります。残念ながら、Win32PrintServiceインスタンスは常にnullを返します。いつも。

グーグルで検索すると、rundll32を呼び出すことで、Windows独自の印刷プロパティダイアログを呼び出すことができることがわかりました。

これを使用して、Win32PrintServiceのバグ/欠落機能を回避できることを願っています。ただし、PrintUIEntryダイアログでユーザーの選択を照会する方法がわかりません。

つまり、上記のrundll32呼び出しの結果を取得するにはどうすればよいですか?(C / JNIで何かを記述し、Windows APIを直接使用する必要がある場合は、そうしてください。ただし、そうではありません。)

または、この問題を解決するためのより良い方法はありますか?

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

c - Win32 APIを使用して文字列をDLLに渡すにはどうすればよいですか?

このソースを使用して(MinGWで)ビルドされたDLLにRundll32から文字列(またはchar *)を渡そうとしています:

これを実行すると、ランダムにクラッシュします。これが私がそれを実行する方法です。

hello()でブレークポイントを設定しようとしましたが、「コンテンツ」はかなりランダムなようです。rundll32からの引数を間違った方法で渡していますか?

引数がなくても問題なく動作します。