問題タブ [shellexecuteex]

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

c++ - ShellExecuteEx による起動が UAC によってキャンセルされたかどうかを検出する方法

ShellExecuteEx を使用して exe を起動します。

起動が UAC によってキャンセルされたかどうかを検出するにはどうすればよいですか? この場合、ShellExecuteEx は成功します (hInstApp = 42、GetLastError は 0 を返します)。

ありがとう

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

c++ - ShellExecuteEx 関数を使用して起動すると、Install-Shield ウィンドウが最前面に表示されない

以下のコードを使用して、install-shield で作成された setup.exe を起動しようとしています。

問題は、起動したインストーラー ウィンドウが一番上に表示されないことです。どんな助けでも大歓迎です。

ありがとう

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

c - ShellExecuteEx を使用してパス変数を永続的に設定する

私はこのコードを思いつきます。正しく実行され、true が返されます。ただし、パス変数の値は変更されません。このように入力すると --> cmd で setx Path "C:\Program Files\Java\jdk1.7.0_02\bin\" と入力すると、動作して Path 値が変更されます

ここにコードがあります

ここで何が問題になりますか??

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

c++ - ShellExecuteInfo によるプロセスの昇格 - 無限シェル?

この記事に従ってプロセスを昇格させましたが、以下のコード (現在はほぼコピー) では、デバッグ時に無限の数のシェルが作成されます。それが発生する行が示されます。

ここでMSDNの記事を見てきましたが、これは私に多くの洞察を与えていません. 私が間違っていることを教えてください。

私はc ++が初めてです。

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

delphi - EXE から EXE から EXE を実行する

App1.exe、App2.exe、App3.exe の 3 つのプログラムがあります。それぞれは互いに独立して実行できますが、App2.exe は ShellExecuteEx を使用して App3.exe を実行し、App1.exe は ShellExecuteEx を使用して App2.exe を実行する場合があります (これにより、App3 が実行される場合があります)。App3 にはオプションのコマンド ライン パラメーターがあり、使用すると GUI は表示されませんが、自動的に出力ファイルを生成して閉じます。App2 がコマンド ライン パラメーターを渡して App3 を実行すると問題なく動作しますが、App1 がコマンド ライン パラメーターを渡して App3 を実行する App2 を実行すると、App3 の ShellExecuteEx は true を返しますが、GUI は表示され、出力ファイルは作成されません。
なぜこれが起こるのか分かりますか?Windows XP では動作しますが、Vista または 7 では動作しません。CreateProcess() も使用してみましたが、同じ結果が得られました。3 つのアプリはすべて同じフォルダーにあります。

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

winapi - Win32: Windows エラー レポート ダイアログで TerminateProcess が失敗する

ShellExecuteEx を使用してクラッシュする別のプログラム (「B」) を呼び出すプログラム (「A」) に取り組んでいます。プログラム A は B のクラッシュを検出でき、TerminateProcess を使用して B を強制終了できます。

ただし、B がクラッシュすると (および A が終了する前に)、Windows の「プログラム B が動作を停止しました」というダイアログ (WerFault.exe) が表示されます。したがって、A は B を強制終了できますが、B が失敗するたびに WerFault.exe のインスタンスが残ります。

WER API を使用して WerAddExcludedApplication を呼び出し、B を除外リストに追加することで、多少の喜びが得られるのではないかと考えました。ただし、「動作が停止しました」ダイアログを変更して、「閉じる」と「デバッグ」のみを提供し、「オンラインで解決策を確認する」を省略するだけです。

WerFault.exe を呼び出さずに B をクラッシュさせる方法はありますか? (Windows 7)。

このスレッドを見ました: WER ダイアログを取得せずに Windows-7 でプロセスをクラッシュさせるには? . ただし、その意図は、WER を無効化または却下する方法ではなく、WER が常に呼び出されるようにすることでした。

提案?

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

windows - Windows 8 で管理者権限を持つ Delphi 外部 exe が最小化される

マニフェストで管理者権限を要求するコマンド ライン ヘルパー プログラムを実行すると、Windows 8 ユーザー アカウント制御 (UAC) ポップアップが最小化されるという問題があります。UAC ポップアップ ウィンドウが Windows タスクバーで黄色に点滅するだけで、ユーザー エクスペリエンスが混乱します。

最小化された UAC

タスクバー アイコンをクリックすると、UAC アラートに次のように表示されます。

UACアラート

Windows 7 では、UAC アラートは最小化されず、最前面に表示されます。Windows 8 でこれを修正する方法について何か考えはありますか?

参考までに、私のメイン アプリケーションはユーザー権限で実行され、ヘルパー プログラムを で実行しShellExecuteExます。を に設定していShellExecuteExます。TShellExecuteInfo.nShowSW_SHOW