Accueil > > > RECUPERATION DES INFOS DES TASKS SCHEDULED
RECUPERATION DES INFOS DES TASKS SCHEDULED
Information sur la source
Description
Ce code est assez basic mais il peut s'averer tres utile dans une société ou l'on doit s'assurer de la bonne execution de taches planifiée de maintenance ou de sauvegarde... Ce code s'execute quotidiènement et ennoi un mail rappelant les tache qui se sont executées la veille avec en rouge les eventuel probèmes
Source
- ublic static DataTable FindScheduledTask(string sTaskName)
- {
- //Debut Declaration
- string strDirFichier = "C:\\WINDOWS\\TASKS\\SchedLgU.Txt"; //Dir Fichier log tahce plani
- FileStream fs = new FileStream(strDirFichier, FileMode.Open); //ouverture fichier log
- StreamReader sr = new StreamReader(fs, true); //Lecture
- int iPosition; //Pointeur recherche de caratère dans ligne
- int iIndex1; //Index de debut de mot
- int iIndex2; //Index de fin de mot
- int iLenIndex; //Longueur du mot
- string sLigne; //Ligne lue
- string sLigneJobName; //Nom de la tache recupérée dans ligne
- string sLigneProgName; //Nom du programme recup
- string sLigneCodeSortie; //Code Sortie recup
- DateTime dtLigneDateFin; //Date Exec recup
- DataTable dt = new DataTable(); //Tableau retourné
- DataRow drNew; //Datarow d'insertion sur dt
- DataView dv = new DataView(dt); //DataView de lecture de dt
-
- dt.Columns.Add("Job", typeof(string)); //Création structure de dt
- dt.Columns.Add("Prog", typeof(string));
- dt.Columns.Add("Type", typeof(string));
- dt.Columns.Add("DateFin", typeof(string));
- dt.Columns.Add("Sortie", typeof(string));
- sLigne = sr.ReadLine();
-
- while (sLigne!=null) //Tant que il y a des lignes de log
- {
- iPosition = sLigne.IndexOf(sTaskName); //Verif si ligne consernant la tache
- if (iPosition != -1)
- {
- sLigneJobName = sTaskName; //Recup du nom de la tache
-
- iIndex1 = sLigne.IndexOf("(") + 1; //Recup du nom du programme
- iIndex2 = sLigne.IndexOf(")");
- iLenIndex = iIndex2 - iIndex1;
- sLigneProgName = sLigne.Substring(iIndex1,iLenIndex);
-
- //Contôle d'avertissement
- iPosition = sLigne.IndexOf("AVERTISSEMENT");
- if (iPosition != -1)
- {
- dtLigneDateFin = System.DateTime.Parse(sLigne.Substring(iIndex2 + 1, 19));
- int i = DateTime.Compare(dtLigneDateFin.Date, DateTime.Now.Date.AddDays(-1));
- if (i == 0)
- {
- drNew = dt.NewRow();
- drNew["Job"] = sLigneJobName;
- drNew["Prog"] = sLigneProgName;
- drNew["Type"] = "AVERTISSEMENT";
- drNew["DateFin"] = dtLigneDateFin;
- drNew["Sortie"] = "NON TERMINEE";
- dt.Rows.Add(drNew);
- }
- }
- //Fin Contôle d'avertissement
-
- else
- {
- sLigne = sr.ReadLine(); //Ligne suivante
-
- iPosition = sLigne.IndexOf("Quitté"); //Si Conserne Tache Quittée
- if (iPosition != -1)
- {
- dtLigneDateFin = System.DateTime.Parse(sLigne.Substring(9));
- int i = DateTime.Compare(dtLigneDateFin.Date, DateTime.Now.Date.AddDays(-1));
- if (i == 0)
- { //recup du code sortie
- sLigne = sr.ReadLine();
- iIndex1 = sLigne.IndexOf("(") + 1;
- iIndex2 = sLigne.IndexOf(")");
- iLenIndex = iIndex2 - iIndex1;
- sLigneCodeSortie = sLigne.Substring(iIndex1, iLenIndex);
-
- //memo dans tableau
- drNew = dt.NewRow();
- drNew["Job"] = sLigneJobName;
- drNew["Prog"] = sLigneProgName;
- drNew["Type"] = "Quitté";
- drNew["DateFin"] = dtLigneDateFin;
- drNew["Sortie"] = sLigneCodeSortie;
- dt.Rows.Add(drNew);
- //Fin memo dans tableau
- }
- }
- else
- {
- iPosition = sLigne.IndexOf("Démarré"); //Si Conserne Tache Démarré
- if (iPosition != -1)
- {
- dtLigneDateFin = System.DateTime.Parse(sLigne.Substring(10));
- int i = DateTime.Compare(dtLigneDateFin.Date, DateTime.Now.Date.AddDays(-1));
- if (i == 0)
- {
- //memo dans tableau dt
- drNew = dt.NewRow();
- drNew["Job"] = sLigneJobName;
- drNew["Prog"] = sLigneProgName;
- drNew["Type"] = "Démarré";
- drNew["DateFin"] = dtLigneDateFin;
- dt.Rows.Add(drNew);
- // Fin memo dans tableau
- }
- }
- }
- }
- }
-
- sLigne = sr.ReadLine();
- }
- sr.Close();
- fs.Close();
- return (dt);
- }
ublic static DataTable FindScheduledTask(string sTaskName)
{
//Debut Declaration
string strDirFichier = "C:\\WINDOWS\\TASKS\\SchedLgU.Txt"; //Dir Fichier log tahce plani
FileStream fs = new FileStream(strDirFichier, FileMode.Open); //ouverture fichier log
StreamReader sr = new StreamReader(fs, true); //Lecture
int iPosition; //Pointeur recherche de caratère dans ligne
int iIndex1; //Index de debut de mot
int iIndex2; //Index de fin de mot
int iLenIndex; //Longueur du mot
string sLigne; //Ligne lue
string sLigneJobName; //Nom de la tache recupérée dans ligne
string sLigneProgName; //Nom du programme recup
string sLigneCodeSortie; //Code Sortie recup
DateTime dtLigneDateFin; //Date Exec recup
DataTable dt = new DataTable(); //Tableau retourné
DataRow drNew; //Datarow d'insertion sur dt
DataView dv = new DataView(dt); //DataView de lecture de dt
dt.Columns.Add("Job", typeof(string)); //Création structure de dt
dt.Columns.Add("Prog", typeof(string));
dt.Columns.Add("Type", typeof(string));
dt.Columns.Add("DateFin", typeof(string));
dt.Columns.Add("Sortie", typeof(string));
sLigne = sr.ReadLine();
while (sLigne!=null) //Tant que il y a des lignes de log
{
iPosition = sLigne.IndexOf(sTaskName); //Verif si ligne consernant la tache
if (iPosition != -1)
{
sLigneJobName = sTaskName; //Recup du nom de la tache
iIndex1 = sLigne.IndexOf("(") + 1; //Recup du nom du programme
iIndex2 = sLigne.IndexOf(")");
iLenIndex = iIndex2 - iIndex1;
sLigneProgName = sLigne.Substring(iIndex1,iLenIndex);
//Contôle d'avertissement
iPosition = sLigne.IndexOf("AVERTISSEMENT");
if (iPosition != -1)
{
dtLigneDateFin = System.DateTime.Parse(sLigne.Substring(iIndex2 + 1, 19));
int i = DateTime.Compare(dtLigneDateFin.Date, DateTime.Now.Date.AddDays(-1));
if (i == 0)
{
drNew = dt.NewRow();
drNew["Job"] = sLigneJobName;
drNew["Prog"] = sLigneProgName;
drNew["Type"] = "AVERTISSEMENT";
drNew["DateFin"] = dtLigneDateFin;
drNew["Sortie"] = "NON TERMINEE";
dt.Rows.Add(drNew);
}
}
//Fin Contôle d'avertissement
else
{
sLigne = sr.ReadLine(); //Ligne suivante
iPosition = sLigne.IndexOf("Quitté"); //Si Conserne Tache Quittée
if (iPosition != -1)
{
dtLigneDateFin = System.DateTime.Parse(sLigne.Substring(9));
int i = DateTime.Compare(dtLigneDateFin.Date, DateTime.Now.Date.AddDays(-1));
if (i == 0)
{ //recup du code sortie
sLigne = sr.ReadLine();
iIndex1 = sLigne.IndexOf("(") + 1;
iIndex2 = sLigne.IndexOf(")");
iLenIndex = iIndex2 - iIndex1;
sLigneCodeSortie = sLigne.Substring(iIndex1, iLenIndex);
//memo dans tableau
drNew = dt.NewRow();
drNew["Job"] = sLigneJobName;
drNew["Prog"] = sLigneProgName;
drNew["Type"] = "Quitté";
drNew["DateFin"] = dtLigneDateFin;
drNew["Sortie"] = sLigneCodeSortie;
dt.Rows.Add(drNew);
//Fin memo dans tableau
}
}
else
{
iPosition = sLigne.IndexOf("Démarré"); //Si Conserne Tache Démarré
if (iPosition != -1)
{
dtLigneDateFin = System.DateTime.Parse(sLigne.Substring(10));
int i = DateTime.Compare(dtLigneDateFin.Date, DateTime.Now.Date.AddDays(-1));
if (i == 0)
{
//memo dans tableau dt
drNew = dt.NewRow();
drNew["Job"] = sLigneJobName;
drNew["Prog"] = sLigneProgName;
drNew["Type"] = "Démarré";
drNew["DateFin"] = dtLigneDateFin;
dt.Rows.Add(drNew);
// Fin memo dans tableau
}
}
}
}
}
sLigne = sr.ReadLine();
}
sr.Close();
fs.Close();
return (dt);
}
Historique
- 10 juillet 2007 08:13:21 :
- Je modifie les mots clé car il était introuvable...
- 10 juillet 2007 08:58:42 :
- ...
- 27 août 2007 15:36:58 :
- Modif titre
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Réception de mail [ par PetitJean ]
Bonjour, J'ai compris comment envoyer un mail avec la classe smtpmail mais je n'arrive pas à trouver comment réceptionner des mails sur un serveur POP
barre des taches [ par CrAShGuN ]
Je voudrais savoir comment on fait pour mettre une application C# dans la barre des tâches de windows, c'est-à-dire mettre une petite icône juste à cô
envoyer un mail avec le programme win par défaut [ par zouzounet ]
Bonjour :)Je débute en c# et j'aimerais savoir comment je peux configurer mon linklabel pour qu'avec un click dessus ça lance un mail avec le programm
Récuperer mail dans une page html [ par Kain13 ]
Bonjour,Comment vérifier si lors d'un traitement d'un formulaire, l'utilisateur a bien mis une adresse mail valide : Pseudo@FAI.comJe sais le faire en
envoie d'e-mail en C# pour PPC [ par kalakalaboubou ]
Bonjour a toustout d'abord merci pour les reponses precedantes elle m'ont ete d'une aide incroyable.c'est bon de savoir qu'on peux compter sur vous.en
System.Web manquant [ par rafni ]
je suis en train d'essayer de faire une applic ou je dois envoyer un mail, j'ai donc fais un using System.Web.Mail mais le compilo ne trouve pas l'ass
mail [ par JCpp ]
Je n'arrive pas à m'envoyer un E-MailPourtant, j'ai suivis toute la procédure.J'ai ajouté system.Web.dll dans Add ReferenceJ'ai mi : using System.Web.
Calculer la hauteur d ela barre des taches [ par Cameleon69 ]
Je cherche comment calculer la hauteur de la barre des taches ou sa largeur si elle est sur les cotés.Je ne vois pas comment faire, quelqu'un a t-il u
Masquer barre des tâches [ par giorgio08 ]
Bonjour a tous j'aurais voulu savoir comment faire pour masquer la barre des taches de windows en dessous lorsque je lance mon application => je vo
Envoi de mail [ par vincir ]
Bonjour, Je souhaiterais envoyer un nombre assez important de mail aux abonnés à ma newsletter (environ 1000). J'ai donc ecrit un petit programme en
|
Derniers Blogs
MBA : POURQUOI FAIRE ET COMMENT LE CHOISIR ?MBA : POURQUOI FAIRE ET COMMENT LE CHOISIR ? par ROMELARD Fabrice
Formation initiale Durant la formation, le découpage classique est le suivant (je donnerai les équivalences Suisse lorsque je les connaîtrais) : Ecole primaire jusqu'au Collège : Formation générale permettant d'obtenir les méthodes...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice Y'A DES ERREURS QUI PEUVENT RENDRE LE DéVELOPPEUR VIOLENTY'A DES ERREURS QUI PEUVENT RENDRE LE DéVELOPPEUR VIOLENT par Aleks
Quand on a ce genre d'erreur sans log :
Et bas on a juste envie de choper le gas de Microsoft qu'a développé ça et lui foutre des baffes de Coboye ! ...
Cliquez pour lire la suite de l'article par Aleks [HYPER-V 3] PRéSENTATION DES COMMANDLETS POWERSHELL[HYPER-V 3] PRéSENTATION DES COMMANDLETS POWERSHELL par Pierrick CATRO-BROUILLET
Avec la sortie prochaine de la Beta Consumer Preview de Windows 8, j'avais envie de revenir sur une des fonctionnalités que j'attends le plus et que, en bon geek que je suis, j'utilise déjà : Hyper-V 3 ainsi son module PowerShell.
Il y a déjà pléthor...
Cliquez pour lire la suite de l'article par Pierrick CATRO-BROUILLET IIS7 - COMPRESSION GZIPIIS7 - COMPRESSION GZIP par cyril
La compression GZIP permet d'améliorer les performances de navigation en compressant ce qu'envoie le serveur à un client. Pour comprendre comment cela fonctionne, regardons ce qu'il se passe au niveau HTTP lorsqu'un client tente d'accéder à une ress...
Cliquez pour lire la suite de l'article par cyril SHAREPOINT 15 TECHNICAL PREVIEW MANAGED OBJECT MODEL SOFTWARE DEVELOPMENT KITSHAREPOINT 15 TECHNICAL PREVIEW MANAGED OBJECT MODEL SOFTWARE DEVELOPMENT KIT par Matthew
http://www.microsoft.com/download/en/details.aspx?id=28768&utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+MicrosoftDownloadCenter+(Microsoft+Download+Center) ...
Cliquez pour lire la suite de l'article par Matthew
Logiciels
Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning Academy System (17.1.3.0)ACADEMY SYSTEM (17.1.3.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System COLLECTOR PLUS (3.00B)COLLECTOR PLUS (3.00B)COLLECTOR PLUS version 3.00B est un logiciel utilisant une base de données alimentée par :
- L... Cliquez pour télécharger COLLECTOR PLUS PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V7.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO LettresFaciles 2011 (8.0.0.1)LETTRESFACILES 2011 (8.0.0.1)LettresFaciles est un logiciel facilitant la création et la rédaction de lettres types.
Son inte... Cliquez pour télécharger LettresFaciles 2011
|