ancora fix IOB-MAN
This commit is contained in:
+46
-21
@@ -174,7 +174,8 @@ namespace IOB_MAN
|
||||
private void apriChild()
|
||||
{
|
||||
// preventivamente CHIUDO TUTTO
|
||||
closeAllChild(true);
|
||||
forceKillByName(TargetName);
|
||||
//closeAllChild(true);
|
||||
Thread.Sleep(250);
|
||||
// avvio i child
|
||||
foreach (var item in ArgsList)
|
||||
@@ -182,7 +183,7 @@ namespace IOB_MAN
|
||||
startChildProc(item);
|
||||
}
|
||||
numProcAvviati = ArgsList.Count;
|
||||
numProcRunning = numProcAvviati;
|
||||
updateNumRunning();
|
||||
}
|
||||
|
||||
private void apriChildSel()
|
||||
@@ -202,11 +203,12 @@ namespace IOB_MAN
|
||||
}
|
||||
}
|
||||
}
|
||||
updateNumRunning();
|
||||
updateStatus();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Apro un child x fare udpate con parametro che impedisca avvio IOB
|
||||
/// Apro un child x fare update con parametro che impedisca avvio IOB
|
||||
/// </summary>
|
||||
private void apriOneUpdate()
|
||||
{
|
||||
@@ -230,6 +232,7 @@ namespace IOB_MAN
|
||||
this.Close();
|
||||
}
|
||||
}
|
||||
updateNumRunning();
|
||||
}
|
||||
|
||||
private void AutoUpdater_ApplicationExitEvent()
|
||||
@@ -261,6 +264,7 @@ namespace IOB_MAN
|
||||
// chiude tutto
|
||||
closeAllChild(false);
|
||||
//apriChild();
|
||||
updateNumRunning();
|
||||
updateStatus();
|
||||
}
|
||||
|
||||
@@ -322,6 +326,7 @@ namespace IOB_MAN
|
||||
loadConfig();
|
||||
// apertura
|
||||
apriChild();
|
||||
updateNumRunning();
|
||||
updateStatus();
|
||||
}
|
||||
|
||||
@@ -330,6 +335,7 @@ namespace IOB_MAN
|
||||
// chiude tutto
|
||||
closeAllChild(true);
|
||||
apriChild();
|
||||
updateNumRunning();
|
||||
updateStatus();
|
||||
}
|
||||
|
||||
@@ -364,7 +370,14 @@ namespace IOB_MAN
|
||||
if (processList.Length > 0)
|
||||
{
|
||||
Process p = myGetProcByID(processList, item.pID);
|
||||
needRem = p.HasExited;
|
||||
if (p != null)
|
||||
{
|
||||
needRem = p.HasExited;
|
||||
}
|
||||
else
|
||||
{
|
||||
needRem = true;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -382,7 +395,6 @@ namespace IOB_MAN
|
||||
item2rem.Add(item);
|
||||
}
|
||||
item.isRunning = false;
|
||||
numProcRunning--;
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -433,10 +445,6 @@ namespace IOB_MAN
|
||||
IList<iobAdapt> allItems = (IList<iobAdapt>)ElencoIOB.List;
|
||||
bool needRem = false;
|
||||
|
||||
#if false
|
||||
numProcRunning = numProcAvviati;
|
||||
#endif
|
||||
|
||||
// 2020.02.01 passato chiamata specifica x leggere in 1 sola volta TUTTO elenco processi (x nome)...
|
||||
Process[] processList = Process.GetProcessesByName(TargetName);
|
||||
|
||||
@@ -489,6 +497,7 @@ namespace IOB_MAN
|
||||
}
|
||||
}
|
||||
}
|
||||
updateNumRunning();
|
||||
updateStatus();
|
||||
}
|
||||
|
||||
@@ -496,6 +505,8 @@ namespace IOB_MAN
|
||||
{
|
||||
// se tolgo autorestart --> imposto NUOVA scadenza x forzare check
|
||||
tOutAutocheck = 60 * utils.CRI("autoRestartTimeoutMin") * (1000 / (utils.CRI("checkPeriod")));
|
||||
txtTOutAutoCheck.Visible = !chkAutoRestart.Checked;
|
||||
btnMoreTOut.Visible = !chkAutoRestart.Checked;
|
||||
// fa subito controllo riavvio...
|
||||
processAutoRestart();
|
||||
}
|
||||
@@ -579,6 +590,7 @@ namespace IOB_MAN
|
||||
}
|
||||
catch
|
||||
{ }
|
||||
updateNumRunning();
|
||||
}
|
||||
|
||||
private void closeTimers()
|
||||
@@ -722,11 +734,11 @@ namespace IOB_MAN
|
||||
|
||||
private void ElencoIOB_AddingNew(object sender, System.ComponentModel.AddingNewEventArgs e)
|
||||
{
|
||||
//updateStatus();
|
||||
}
|
||||
|
||||
private void ElencoIOB_ListChanged(object sender, System.ComponentModel.ListChangedEventArgs e)
|
||||
{
|
||||
updateNumRunning();
|
||||
}
|
||||
|
||||
private void forceCheckTimer_Tick(object sender, EventArgs e)
|
||||
@@ -1127,7 +1139,6 @@ namespace IOB_MAN
|
||||
{
|
||||
ElencoIOB.Insert(indice, newIob);
|
||||
}
|
||||
numProcRunning++;
|
||||
utils.lgInfo($"Avviato child process per {procArg} | pid: {p.Id}");
|
||||
}
|
||||
|
||||
@@ -1163,6 +1174,21 @@ namespace IOB_MAN
|
||||
apriOneUpdate();
|
||||
}
|
||||
|
||||
private void updateNumRunning()
|
||||
{
|
||||
// ricalcolo running...
|
||||
numProcRunning = 0;
|
||||
// ciclo su row selezionate
|
||||
foreach (DataGridViewRow riga in dgvManagedItems.Rows)
|
||||
{
|
||||
// verifico che sia già chiuso...
|
||||
if (((iobAdapt)ElencoIOB[riga.Index]).isRunning)
|
||||
{
|
||||
numProcRunning++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private async Task updateProgBarAsync()
|
||||
{
|
||||
await Task.Run(() => performBarAdvance()).ConfigureAwait(false);
|
||||
@@ -1196,31 +1222,30 @@ namespace IOB_MAN
|
||||
tsslNumProc.ForeColor = Color.OrangeRed;
|
||||
hlRestart = true;
|
||||
}
|
||||
// se NON checked aggiorno contatore...
|
||||
if (!chkAutoRestart.Checked)
|
||||
{
|
||||
tOutAutocheck--;
|
||||
txtTOutAutoCheck.Text = $"{(tOutAutocheck / (1000 / (utils.CRI("checkPeriod"))))}";
|
||||
}
|
||||
// se è variato...
|
||||
if (hlRestart != lastHlRestart)
|
||||
{
|
||||
tOutAutocheck = 60 * utils.CRI("autoRestartTimeoutMin") * (1000 / (utils.CRI("checkPeriod")));
|
||||
lastHlRestart = hlRestart;
|
||||
// fix autorestart...
|
||||
if (hlRestart)
|
||||
{
|
||||
chkAutoRestart.ForeColor = System.Drawing.Color.Red;
|
||||
chkAutoRestart.Text = "Auto Restart!!!";
|
||||
txtTOutAutoCheck.Visible = true;
|
||||
btnMoreTOut.Visible = true;
|
||||
// se NON checked aggiorno contatore...
|
||||
if (!chkAutoRestart.Checked)
|
||||
{
|
||||
tOutAutocheck--;
|
||||
txtTOutAutoCheck.Text = $"{(tOutAutocheck / (1000 / (utils.CRI("checkPeriod"))))}";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
chkAutoRestart.ForeColor = DefaultForeColor;
|
||||
chkAutoRestart.Text = "Auto Restart";
|
||||
txtTOutAutoCheck.Visible = false;
|
||||
btnMoreTOut.Visible = false;
|
||||
}
|
||||
txtTOutAutoCheck.Visible = !chkAutoRestart.Checked;
|
||||
btnMoreTOut.Visible = !chkAutoRestart.Checked;
|
||||
}
|
||||
}), "");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user