-2

C++を使用してWindowsサービスを機能させようとしています。このサービスは、現時点で特別なことは何もしません。サービスが実行するコードは

int main(int argc, char** argv) {

    if (argc != 1) return -1;

    ofstream fTestFile;
    fTestFile.open("C:\\ABC\\ServiceTest.txt", ios::app);

    fTestFile << "argc=" << argc << endl;
    for (int i=0;i <argc;i++)
        fTestFile << "argv " << i << "=: " <<argv[i] << endl;

    for (int i=0; i<100000; i++) {
        fTestFile << i << ",";
        if (i % 50 == 0) fTestFile << "\n";
        Sleep(10);
    }
    fTestFile << "\n";
    return 0;
}

このサービスの services.msc で [開始] をクリックすると、サービスは開始しようとしますが、(1053 エラー、応答に時間がかかりすぎます) で失敗します。servicetest.txt ファイルには、デバッグ ステートメントや 2663 までの数字など、いくつかのデータが表示されます。

私が見逃しているステップはありますか、どんな助けでも大歓迎です。

ありがとうございました

4

1 に答える 1

0

サービスは、サービス マネージャー (services.exe) と通信して、現在の状態を報告および更新する必要があります。

ここを読むhttp://msdn.microsoft.com/en-us/library/windows/desktop/ms687414%28v=vs.85%29.aspx

于 2012-04-04T02:15:57.093 に答える