問題タブ [servicecontroller]

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

c# - sc.exe を使用して exe をサービスとしてインストールしますか?

実行可能ファイルをWindowsサービスとして実行するためにsc.exeについて読むのに多くの時間を費やしてきましたが、かなり簡単なはずですが、このエラーなしで動作させるにはいくつかの問題があります:エラー1053サービスタイムリーに要求に応答または制御しませんでした。

インストールするサービスを取得しましたが、それはサービスのリストにありますが、開始できません。これは私が基本的な試みを使用しているものです:

私は何を間違っていますか?サービスとして実行しようとしている exe は、サービスとして適切に実行されるようにセットアップする必要がありますか? exeをサービスとして実行できるプログラムが世の中にあるので、そうではないと思います。同じことをしようとしているのですが、どうすればよいですか?

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

c# - services.msc c# からサービス パスを取得する

services.msc からサービス実行可能パスを取得しようとしています

次のコードを書きました。

サービスの実行可能パスがどこにあるのか (あるとしても) 見つかりませんでしたか?

services.msc でパスを確認できるので、コードから取得することも可能だと思います。 services.msc のサービス情報の例 (そこに実行可能パスが存在することを確認してください)

何か案は?

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

vb.net - VB.Net のサービス コントローラーを介して Windows サービスの説明にアクセスできません。

私は私の会社からこのWindowsサービスを持っています:

ここに画像の説明を入力

コードビハインドでサービスの説明を取得したい!しかし、何らかの理由でサービスの説明が返されません。

誰でもこれで私を助けることができます。

ここに私のコードとそれが返すものがあります:

MyService 変数が返すもの。

ここに画像の説明を入力

ここからサービスの説明を取得するにはどうすればよいですか?

よろしく、

編集:

Miki Shahが正しい方向に私を指摘した後の私のコードは次のとおりです!

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

c# - C# 仮想マシンでリモート サービスを開始する

複数の仮想マシンを実行するホストがあり、すべての仮想マシンでローカルで正常に動作するサービスを実行しますが、ホストからリモートで実行しようとするとアクセスが拒否されます。しばらく Google を検索しましたが、ホスト アカウントが仮想マシン アカウントと大きく異なるため、なりすましは機能しません。次のコードを使用してリモート サービスを開始します。

私の質問は次のとおりです。たとえば、そのマシンのユーザー資格情報を与えるだけでリモート サービスを開始できるように、C# アプリを認証する方法はありますか?

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

c# - GUI 経由で Wi​​ndows サービスにアクセスする最良の方法

C# GUI が Windows サービスの機能にアクセスするための最良の方法に興味があります。それは、WCF であれ、ServiceController であれ、その他のオプションであれ、です。

私が何をしているのかを説明します: 規制された時間間隔で、サービスは場所 A から 1 時間分のデータファイルを圧縮し、圧縮されたファイルを場所 B に送信します。これはバックグラウンドで 24 時間 365 日、またはサービスはユーザーによって停止され、誰もログインしていない場合でも実行されます (したがって、サービスが必要です)。ユーザーがいくつかのオプションを使用できるようにする GUI プログラムをプルアップできるようにしたいと思います。

1) 場所を zip
に変更する 2) 場所を zip に変更する
3) 指定された DateTime 範囲の zip プロセスを手動で開始する

これで、zip とタイマーのほとんどの関数がすべてサービス内に格納されます。GUIプログラムのServiceControllerを使用して、サービスとの間で変数を送受信できるかどうか(つまり、フォルダーパス名を文字列、その他のさまざまなデータとして)、またはWCFの作成に時間を費やしてGUIを次のように扱う必要があるかどうか疑問に思っていますクライアントとソースとしての Windows サービス。

GUI はサービスからデータを受信する可能性が高いことに注意してください。ただし、現在圧縮中であるかどうかを示すためだけです。

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

php - サービス: オプションの依存関係

呼び出されたメソッドに応じて他のサービスを呼び出すことができるサービスがあるとします。

ここで、Foobar の foo() メソッドを呼び出すときに、SERVICE_A を Foobar で使用できるようにする必要があります。SERVICE_A と SERVICE_B を Foobar の依存関係として定義し、構築段階でそれらの作成をサービス コンテナーに委任するか、Foobar の setServiceA() メソッドや setServiceB() メソッドなどのセッターを使用して外部から注入するか、サービス コンテナーを現時点で本当に必要なサービスだけを構築できるようにするFoobar。

最初のオプションは、どちらかが呼び出されなくても SERVICE_A と SERVICE_B の両方が作成されるため、私には適切ではないようです。2 番目のオプションは、サービス インフラストラクチャを外部に公開するため、明らかに間違っています。3 番目のオプションは、サービスがサービス コンテナー全体に依存するようになり、コードのテストが困難になるなどの理由から、あまり良くありません。

私の質問は、サービスの依存関係を遅延ロードする方法はありますか?

0 投票する
7 に答える
112856 参照

windows - 新しい Windows サービスがインストールされ、開始に失敗する: 「システム エラー 2 ... 指定されたファイルが見つかりません」

他のいくつかのカスタム .Net Windows サービスを正常にインストールしました。私が最近書いた新しいものは他のものと非常に似ていて、エラーなしでインストールされましたが、サービスコントローラーで起動すると、エラーダイアログで起動できませんでした:システムエラー2 ...システムは指定されたファイルを見つけることができません.

時間と驚きの末、私が考えることができたこのサービスの大きな違いは、パスと実行可能ファイルの名前が、私の他のどのサービスよりも少なくとも 10 文字長いということだけでした。パスと .exe 名の両方を短縮して再インストールすると、サービスは正常に実行されました: エラーはありません! 以前のパス、サービス、または .exe 名が長すぎたとしか思えません。

また、win API 呼び出しを介してサービス コントローラーへのサービスのインストール/アンインストールを処理するために、私の exe に組み込まれている借用した「サービス ドライバー」コードを使用したことに言及することは適切です。そのサービス ドライバ モジュール内に文字制限が隠されている可能性があります。

超えたパスまたはサービス名にシステム バインドされた文字制限があるかどうかを確認するための Windows 関連のドキュメントが見つかりませんでした。時間が許せばサービス ドライバーを掘り下げて、それが問題であるかどうかを確認します。その間、私はどんな洞察も歓迎します。

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

c# - 開始保留中のステータスでクラッシュするコマンドを実行するC#

C# で button_click 関数を作成しています。この関数では、executeCommand を使用してサービスと通信します。

ある時点でプログラムがクラッシュし、サービスが開始/停止保留中の状態にあるため、executecommand を呼び出すことができません。私は何をしますか?関数は同じ xml ファイルを書き込む必要があるため、サービスを停止/開始する必要があります。

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

c#-4.0 - UAC を有効にして、ServiceController と services.msc を使用してサービスを制御する

製品を構成するサービスを管理するアプリケーションに取り組んでいます。これまで、このアプリケーションは昇格で開始されることが予見されていました (そのため、ユーザーは UAC プロンプトを確認する必要がありました)。サービスの停止の開始など、ほとんどの操作では、昇格は必要ないように見えました。

アプリケーションは通常、ローカルの Administrators グループのメンバーによって実行されます。これらのユーザーは services.msc を開始でき、サービスを開始および停止できます。だから私はそれが「うまくいく」と思っていました:

「アクセス拒否」例外で失敗します。だから私は追加しました

Demand は成功しますが、Start はまだ失敗します。

ServiceController と StackExchange のセキュリティに関する問題について、多くの質問 (および回答) を読みました。多くの回答は、昇格が必要であることを示唆しています。私 (私はローカル管理者グループのメンバーです) は services.msc の使用を開始および停止できるので、購入しないでください。

では、services.msc はどうなっていますか?私のコードはどうなっていますか? UAC を有効にしていますが、無効にしたくありません。サービスを開始または停止するために、昇格は必要ありませんよね? そうしないと、services.msc にも昇格が必要になりますか? (私の同僚は、services.msc に「動作させる」「特別なコード」が含まれていることを提案しました。私もそれを購入しません)。

回答ありがとうございます。

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

c# - ワークグループ コンピューターのリモート ホストの Windows サービスにリモート アクセスするにはどうすればよいですか?

Windows サービスの操作に使用するアプリケーションを作成しています。私のコンピューターはワークグループに属しています。しかし、マシンにアクセスできませんでした。LogonUser() を使用して偽装を試みました。しかし、機能していません。リモート デスクトップ接続を使用して操作できますが、プログラムでアクセスできませんでした。