1

現在、実行するために次のことを実行する必要があるバッチファイルがあります。

  1. SYSWOW64 \ cmd.exeを管理者として開きます(32ビットアプリケーションです)。
  2. cd c:\ mybatchfilelocation \
  3. 次に、バッチファイルbatchfile.batを実行します

管理者としてSYSWOW64\cmd.exeを自動的に開く管理者として1つのバッチを実行し(管理者のユーザー名とパスワードの入力を求めても問題ありません)、batchfile.batを実行できるようにしたいと思います。

実行する前にバッチファイルで/user:machinename \ administorを事前に指定し、パスワードの入力を求めるだけで、これを顧客に展開する必要があり、信頼できない場合に、どこで実行できるかを見てきました。ファイルの編集。入力が必要なときにプロンプ​​トで実行する必要があります。

アップデート

Billのおかげで、SYSWOW64の部分について心配する必要がなくなりました。バッチファイルで管理者としてcmdプロンプトを開き、そのcmdで同じディレクトリにある別のバッチファイルを実行する方法を理解する必要があるだけです。

4

2 に答える 2

1

64ビットWindowsを実行している可能性のあるマシンのcmdシェルスクリプト(バッチファイル)に32ビットDLLを登録するには...

@echo off
setlocal enableextensions
set REGSVR=
if defined PROCESSOR_ARCHITEW6432 (
  set REGSVR=%SystemRoot%\system32\regsvr32.exe
) else (
  set REGSVR=%SystemRoot%\SysWOW64\regsvr32.exe
)
%REGSVR% /s "C:\Path\my dll file.dll"
...
endlocal

アップデート

if定義行はnotを使用しないください。上記のようになります。

于 2013-03-29T00:03:36.090 に答える
0

追加のソフトウェアを含めることはできますか?この目的で使用できるコマンドラインユーティリティいくつかあります。 または、VBScriptを使用してバッチスクリプトを起動することもできます。

Set app = CreateObject("Shell.Application")
app.ShellExecute "C:\Windows\SYSWOW64\cmd.exe", "/c batchfile.bat" _
  , "C:\mybatchfilelocation\", "runas", 1
于 2013-03-25T19:36:41.380 に答える