リモートマシン上のC#で書かれたWindowsサービスをインストールする最良の方法は、実行するユーザ名とパスワードを入力する必要があります?指定されたユーザ名を使用してリモートマシンにWindowsサービスをインストール
私は、統合テストの一環としてMSBuildから実行する予定です。
編集:私はmsiを持っていないので、作成したくありません。
リモートマシン上のC#で書かれたWindowsサービスをインストールする最良の方法は、実行するユーザ名とパスワードを入力する必要があります?指定されたユーザ名を使用してリモートマシンにWindowsサービスをインストール
私は、統合テストの一環としてMSBuildから実行する予定です。
編集:私はmsiを持っていないので、作成したくありません。
SCコマンドを使用できます。
sc.exe \\remotecomputer create newservice binpath= C:\Windows\System32\Newserv.exe start= auto obj= DOMAIN\username password= pwd
(等号記号が重要なの後のスペースに注意してください)
Creates a service entry in the registry and Service Database.
SYNTAX:
sc create [service name] [binPath= ] <option1> <option2>...
CREATE OPTIONS:
NOTE: The option name includes the equal sign.
type= <own|share|interact|kernel|filesys|rec>
(default = own)
start= <boot|system|auto|demand|disabled>
(default = demand)
error= <normal|severe|critical|ignore>
(default = normal)
binPath= <BinaryPathName>
group= <LoadOrderGroup>
tag= <yes|no>
depend= <Dependencies(separated by/(forward slash))>
obj= <AccountName|ObjectName>
(default = LocalSystem)
DisplayName= <display name>
password= <password>
Powershellから呼び出されたWMIから呼び出されたInstallutilは、1つの方法です。
私たちは、リモートマシン上ですべてを行うためにPsExecを使用するために使用されます。 この時点で私はPowerShell Remotingと呼ばれる他の解決策を見ましたが、自分自身を試していません。
ローカルまたはリモートマシンにWindowsサービスをインストール/アンインストール/開始/停止させるユーティリティをチェックする価値があります。必要な機能がある場合は、私に知らせてください(コメント/ githubの問題またはPMと私は喜んで義務づけます)。
@Rajはもっと示唆したように、それは、WMIは、.NETから呼び出す使用しています。
好奇心から、それはSCとどのように違うのですか? – Grzenio
本当に有望ですが、私はそれを支払う必要がありますか? – Grzenio
Windowsに含まれている、おそらくResource Kitに、コマンドプロンプトを起動し、scがインストールされているかどうかを確認するためにscを入力します。 –
確かにそれは私のマシン上にあった、歓声。 – Grzenio