2017-06-07 2 views
0

Windowsサービスを作成するためにC#を使用しましたが、インストール後に動作しません。 これはログに何も表示されないため、解決するためのエラーが分かりません。 Error which is appearedWindowsサービスが起動していません

これが私のスタートイベント

 protected override void OnStart(string[] args) 
     { 
      StartSynchro(); 
     } 
     public void StartSynchro() 
     { 
      while (!System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable()) 
      { 
       System.Threading.Thread.Sleep(TimeSpan.FromHours(1)); 

      } 
      GoogleDriveHandler driveHandler = new GoogleDriveHandler(); 
      List<Google.Apis.Drive.v3.Data.File> onlineFiles = driveHandler.getFiles(); 
      Google.Apis.Drive.v3.Data.File onlineVerCSVFile = onlineFiles.Where(c => c.Name == GoogleDriveHandler.onlineVerCSV).First(); 
      onlineFiles.Remove(onlineVerCSVFile); 
      List<KeyValuePair<string, string>> result = Helper.ReadFromMemoryStream(driveHandler.downloadfile_GetStream(ref onlineVerCSVFile)); 
      List<string> corspondingVer = new List<string>(); 
      foreach (var onlineFile in onlineFiles) 
      { 
       corspondingVer.Add(result.Find(c => c.Key == onlineFile.Name).Value); 
      } 

      List<Google.Apis.Drive.v3.Data.File> fileToDownload = LocalClasses.LocalFilesInfo.getFilesToDwonload(onlineFiles, corspondingVer, ref driveHandler); 
      driveHandler.StartDownloading(fileToDownload); 
      return; 
     } 
+3

どのようにOnStartオーバーライドはどのように見えますか? –

+1

例外の詳細については、イベントビューアを参照してください。 –

+0

@AlexK。イベントビューアはどういう意味ですか? –

答えて

1

それは可能な限り迅速にWindowsサービスを開始する方が良いでしょうです。次のように、初期化コードを別のスレッドに移動することができます。

protected override void OnStart(string[] args) 
{ 
    Task.Run(() => StartSynchro()); 
} 
+0

に接続できませんでしたが、私は他の問題があります。どのようにしてこのWindowsサービスのユーザー文書にディレクトリを作成できますか? –

+0

管理者権限でWindowsサービスを起動すると、その操作を行うことができます。 – ashin

関連する問題