Что-то я такого не могу найти, ни здесь ни тут:Есть ли метод, который будет возвращать количество запущенных потоков для шаблона в ZennoPoster'e? Ну или просто что потоки работают или ни одного потока не запущено?
<Task>
<Id>ad9be7fa-5c0a-4301-b1c9-e34038a0adb3</Id>
<Name>Alert</Name>
<IsNewbie>True</IsNewbie>
<IsEnable>True</IsEnable>
<CreateTime>02/01/2016 17:45:00</CreateTime>
<ExecutionSettings>
<Id>23bc1d8f-c2ed-43c7-ba48-6c1d878775da</Id>
<LimitOfThreads>1</LimitOfThreads>
<MaxAllowOfThreads>0</MaxAllowOfThreads>
<DoneSuccesfully>4</DoneSuccesfully>
<DoneAll>1</DoneAll>
<NumberOfTries>0</NumberOfTries>
<LastNumberOfTries>1</LastNumberOfTries>
<Priority>50</Priority>
<Proxy>DoNotUseProxy</Proxy>
<Status>Complete</Status>
<ProxyLabels/>
<ShouldBeExecutedRandomly>False</ShouldBeExecutedRandomly>
<GroupLabels>cmd</GroupLabels>
<GroupStates>Выполнены</GroupStates>
<MaxNumOfSuccesStop>-1</MaxNumOfSuccesStop>
<MaxNumOfFailStop>-1</MaxNumOfFailStop>
<NumOfFailStop>0</NumOfFailStop>
<ShowTask>False</ShowTask>
</ExecutionSettings>
<SchedulerSettings>
<Id>fdd8d4e4-956a-49af-a90f-b1c89ed70c6f</Id>
<StartDate>02/01/2016 17:45:00</StartDate>
<ShedulerOnDate>01/01/0001 00:00:00</ShedulerOnDate>
<EndDate>02/01/2017 17:45:00</EndDate>
<RepetitionCount>1</RepetitionCount>
<ScheduleType>EveryMinutes</ScheduleType>
<RepeatType>FinishAfter</RepeatType>
<ActivateTime>01/01/0001 00:00:00</ActivateTime>
<ActivateWorkTime>01/01/0001 00:00:00</ActivateWorkTime>
<IsActive>False</IsActive>
<NumberOfTries>0</NumberOfTries>
<Minutes>1</Minutes>
<Days>1</Days>
<LastScheduleDate>01/01/0001 00:00:00</LastScheduleDate>
<NextScheduleDate>null</NextScheduleDate>
<IsClearSucces>False</IsClearSucces>
</SchedulerSettings>
<TriggerSettings>
<Id>a8232be5-d916-4d41-b59c-9b194300ee3c</Id>
<CheckFileExistanse>False</CheckFileExistanse>
<CheckFilePath/>
<RemoveCheckFile>True</RemoveCheckFile>
<NumberOfTries>0</NumberOfTries>
<IsClearSucces>False</IsClearSucces>
</TriggerSettings>
<Project>
<ProjectFileLocation>C:\alert.xmlz</ProjectFileLocation>
<ProjectType>Assembly</ProjectType>
</Project>
</Task>
Выше XML файлик, там есть <Status>Complete</Status> в данном случае видно что шаблон завершён, в других случаях там будет другая информация.@rostonix, есть ли метод, который возвращает количество запущенных потоков для шаблона в ZennoPoster'e? Ну или просто что потоки работают или ни одного потока не запущено?
Где располагаются эти логи?Выше XML файлик, там есть <Status>Complete</Status> в данном случае видно что шаблон завершён, в других случаях там будет другая информация.
Это не логи а данные текущего добавленного в ZP шаблона, получить их можно вот так например (ветка со статусом)Где располагаются эти логи?
@rostonix если есть возможность отследить состояние встроенными методами, отпишись, пожалуйста.
string status = string.Empty;
for(int a = 0; a < 10; a++)
{
var yourname = "reger_1";//имя шаблона
var tasks = ZennoPoster.TasksList;
foreach(var task in tasks)
{
var doc = new System.Xml.XmlDocument();
doc.LoadXml("<Task>" + task + "</Task>");
string name;
var nameNode = doc.SelectSingleNode("Task/Name");
if(nameNode != null && nameNode.InnerText.Equals(yourname))
{
name = nameNode.InnerXml;
//ZennoPoster.AddTries(name, 1);
if (Global.Variables.IsProjectMaker) if (!Global.Variables.IsDebugMode) break;
status = doc.SelectSingleNode("Task/ExecutionSettings/Status").InnerText;
//Complete
return status;
}
}
}
А я не разобрался. Что там не так было?разобрался спасибо
разобрался
Не понял я в чём смысл этого кода - он при запущенном не запущенном шаблоне показывает одно - ок. Как проверять тогда?Это не логи а данные текущего добавленного в ZP шаблона, получить их можно вот так например (ветка со статусом)
За код благодарим @rostonixC#:string status = string.Empty; for(int a = 0; a < 10; a++) { var yourname = "reger_1";//имя шаблона var tasks = ZennoPoster.TasksList; foreach(var task in tasks) { var doc = new System.Xml.XmlDocument(); doc.LoadXml("<Task>" + task + "</Task>"); string name; var nameNode = doc.SelectSingleNode("Task/Name"); if(nameNode != null && nameNode.InnerText.Equals(yourname)) { name = nameNode.InnerXml; //ZennoPoster.AddTries(name, 1); if (Global.Variables.IsProjectMaker) if (!Global.Variables.IsDebugMode) break; status = doc.SelectSingleNode("Task/ExecutionSettings/Status").InnerText; //Complete return status; } } }
Вы уверены, что правильно прописали имя шаблона в переменной yourname? Перепроверьте, так как у меня код отрабатывает нормально, но стоит сделать ошибку в названии шаблона и код возвращает ок, как Вы и говорите.Не понял я в чём смысл этого кода - он при запущенном не запущенном шаблоне показывает одно - ок. Как проверять тогда?
string status = string.Empty;
for(int a = 0; a < 10; a++)
{
var yourname = "reger_1";//имя шаблона
var tasks = ZennoPoster.TasksList;
foreach(var task in tasks)
{
var doc = new System.Xml.XmlDocument();
doc.LoadXml("<Task>" + task + "</Task>");
string name;
var nameNode = doc.SelectSingleNode("Task/Name");
if(nameNode != null && nameNode.InnerText.Equals(yourname))// если нашли шаблон
{
name = nameNode.InnerXml;
//ZennoPoster.AddTries(name, 1);
if (Global.Variables.IsProjectMaker) if (!Global.Variables.IsDebugMode) break;
status = doc.SelectSingleNode("Task/ExecutionSettings/Status").InnerText;
//Complete
return status;
}
else throw new Exception("Шаблона с таким именем нет.");
}
}
Ответ Perform, что означает, подскажите, пожалуйста?
//Perform - работает
//Complite - завершен
//Stop - остановлен
//Schedule - запланирован
//WaitPerform - компилится