В моем приложении Windows у меня есть одна функция, которую я должен запускать каждые 6 секунд. Итак, я использую панель инструментов System.windows.forms.Timer
-> Установите ее интервал 6000 мс и вызовите эту функцию на этом таймере.
private void tmrConnectionStatus_Tick(object sender, EventArgs e)
{
CheckClientConnectinStatus();
}
он работает отлично, но когда я вызываю другое приложение Windows с помощью функции ниже. Он не работает до тех пор, пока или если я не вернусь из этого приложения в основное приложение
clsLogs.LogEvent(3, "==============Call to PNS ==============");
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.FileName = strVendorfile; //Vendors exe
startInfo.Arguments = ""; //CSV file path
clsLogs.LogEvent(1, "SmartTracker to PRINT-N-SPECT:" + System.DateTime.Now);
objProcess = Process.Start(startInfo);
Lable:
Process[] appProc;
string strModName, strProcName;
strModName = Process.GetCurrentProcess().MainModule.ModuleName;
strProcName = "PnS";
appProc = Process.GetProcessesByName(strProcName);
if (appProc.Length > 0)
{
Thread.Sleep(5000);
goto Lable;
}
Я хочу знать, есть ли способ использовать таймер или другой метод, с помощью которого можно непрерывно работать в фоновом режиме, даже если я сосредоточен на другом приложении.