私のプログラムでは起動時にレジストリキーをチェックしていますが、何らかの形で存在しない場合は、ShellExecuteの助けを借りてアプリケーションフォルダコマンド。このコマンドを実行するときにどのようにconfimationメッセージを受け取るのを避けることができますか。それを行う方法はありますか、それともセキュリティ上の理由から可能ではありませんか?shellexecuteコマンドで.regファイルを実行すると確認メッセージが表示されないようにするには
5
A
答えて
12
/sコマンドラインスイッチを使用します。 (http://support.microsoft.com/kb/82821参照)
+0
そして、Delphiではどうしたらいいですか?私はまだShellExecuteを使用しますか?例を挙げると –
+4
ShellExecuteは正常に動作します。私自身は 'regedit'ではなく' reg import'を使用します。 –
11
可能です。二つの方法があります:
- % WINDIR%\ SYSTEM32 \ regedit.exeを/sの file.reg
- %のWINDIR%\ SYSTEM32 \ reg.exe輸入file.reg
のどちらかだろう自動的にfile.regをレジストリにインポートします。
3
また、あなたは、このリンクにunitEXRegistry.pas
を試すことができます。このunitEXRegistry.pasユニットは、レジストリファイルをエクスポートすることは非常に便利な機能を持っており、また静かにインポート
procedure ImportRegistry;
var
strProgram :String ;
strCommand :String ;
fileOne :String ;
begin
fileOne:=ExtractFilePath(Application.ExeName)+ 'my_Resources\Default.reg';
strProgram := 'REGEDIT' ;
strProgram := strProgram + #0 ;
strCommand := '/SC /C ' + ExtractShortPathName(fileOne) ;
strCommand := strCommand + #0 ;
if ShellExecute(0,nil,@strProgram[1],@strCommand[1],nil,SW_HIDE) <= 32 then
begin
ShowMessage(SysErrorMessage(GetLastError)) ; //if there is any error in importing
end;
end;
、* .regファイルをインポートするためにこれを試してください
01あなたは(静かに)使用することができますインポートする次に procedure exportREgis;
var
texpr : TExRegistry;
begin
texpr:=TExRegistry.Create;
texpr.RootKey:=HKEY_CURRENT_USER;
texpr.OpenKeyReadOnly('\MyKey');
texpr.ExportKey (ExtractFilePath(Application.ExeName)+'ExportedReg.reg');
texpr.Free;
end;
* .regファイルをエクスポート
procedure TForm1.Button1Click(Sender: TObject);
var
texpr : TExRegistry;
begin
texpr:=TExRegistry.Create;
texpr.ImportRegFile('c:\myReg.reg');
texpr.Free;
end;
関連する問題
- 1. リンクをクリックすると確認メッセージが表示されます
- 2. VBE(Alt + F11)を確認する前にマクロが実行されないというメッセージが表示されないWordのセキュリティ警告
- 3. コマンドが実行されないようにする
- 4. Linuxでコマンドを実行しているときに、そのようなファイルやディレクトリのメッセージが表示されない理由
- 5. Windows 10 UWP確認ダイアログが表示されないようにするピン
- 6. 実行タイムアウトエラーメッセージが表示されないようにするにはどうすればよいですか?
- 7. IOIO Mintアプリケーションを実行すると「libcore.io.ErrnoException:open failed:ENOENT」というメッセージが表示されるのはなぜですか?
- 8. "ソースの表示"モードでhtmlを挿入すると、cleditorで "insertHtmlコマンドを実行中にエラーが発生しました"というメッセージが表示される
- 9. Intellijで実行されるコマンドを確認する方法
- 10. R shiny:機能実行中に "loading ..."というメッセージが表示されます
- 11. ユーザーが承認済みをクリックすると、どのように確認メッセージを表示できますか?
- 12. レポートの長さを確認するメッセージを表示しないようにする
- 13. kafkaクライアントプロデューサがJavaでメッセージを送信する前に実行されていることを確認します
- 14. セクションの外側をクリックすると確認メッセージが表示されます
- 15. https.getを確認した後に「メッセージ」が表示されないエラー
- 16. vbscriptがファイル実行時にメッセージを表示する
- 17. キュウリの機能がエクリプスに表示されないように実行する
- 18. MVC3各クリック後に幾何学的な進行として確認メッセージが表示されています
- 19. Drupal commerceカートに入れる確認が表示されない
- 20. スプライトオブジェクトが表示されているかどうかを確認するには?
- 21. スクリーンセーバーが実行されているかどうかを確認するには?
- 22. フルスクリーンアプリケーションが実行されているかどうかを確認するには?
- 23. iphone - 添付ファイルが表示されないようにする
- 24. 確認ボックスが表示されない
- 25. 確認タブが表示されない
- 26. 気流の中でDAGを実行しているときに "Handling signal:ttou"というメッセージが表示される
- 27. Dockerfileのコマンドが実行されていないようです
- 28. Androidで実行されているアプリを確認するにはどうすればよいですか?
- 29. マクロとして表示されないサブを実行するにはどうすればよいですか?
- 30. 中間ページ(Django)でカスタム管理アクションを実行した後に確認メッセージを表示するにはどうすればよいですか?
regファイルを実行しないでください。レジストリAPIを直接使用してください。 –
あなたが与えたアドバイスは貴重だと確信していますが、なぜこのようにしてはならないのか説明してください。もう一つは、実行したいレジストリファイルに、データ認識グリッドコンポーネントによって自動的に挿入されたたくさんのエントリが含まれています。私が手動で書き込もうとすると時間の無駄を意味しませんか? –
たとえば、64ビットシステムでレジストリリダイレクタをどのように処理しますか? –