OVH Cloud OVH Cloud

Tasks Scheduler : flags

8 réponses
Avatar
Gloops
Bonjour,

Grâce au tuyau fourni par Jacques 93 l'autre jour, j'ai pu peaufiner un
gestionnaire de tâches.

http://www.mvps.org/emorcillo

Je suis en train de regarder ça de plus près, et je suis intrigué par
les flags.

Dans le projet on a :

Enum TaskFlags
Interactive = &H1
DeleteWhenDone = &H2
Disabled = &H4
StartOnlyIfIdle = &H10
KillOnIdleEnd = &H20
DontStartIfOnBatteries = &H40
KillIfGoingOnBatteries = &H80
RunOnlyIfDocked = &H100
Hidden = &H200
RunIfConnectedToInternet = &H400
RestartOnIdleResume = &H800
SystemRequired = &H1000
RunOnlyIfLoggedOn = &H2000
End Enum

Or, dans la doc sur le site Microsoft, tout ce que j'ai trouvé, c'est :

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/taskschd/taskschd/task_trigger.asp

The GetTaskFlags method returns one of the following values.

| Return code Description
| S_OK The operation was successful.
| E_INVALIDARG The arguments are not valid.
| E_OUTOFMEMORY Not enough memory is available.

Bon, alors quoi, ce n'est pas la bonne doc que j'ai visée ?

Dommage, RunIfConnectedToInternet, ce n'est pas d'avance inintéressant.

8 réponses

Avatar
Jean-Marc
"Gloops" a écrit dans le message de
news:4367b586$0$27409$
Bonjour,

Grâce au tuyau fourni par Jacques 93 l'autre jour, j'ai pu peaufiner un
gestionnaire de tâches.

http://www.mvps.org/emorcillo

Je suis en train de regarder ça de plus près, et je suis intrigué par
les flags.

Dans le projet on a :

Enum TaskFlags
Interactive = &H1
DeleteWhenDone = &H2
Disabled = &H4
StartOnlyIfIdle = &H10
KillOnIdleEnd = &H20
DontStartIfOnBatteries = &H40
KillIfGoingOnBatteries = &H80
RunOnlyIfDocked = &H100
Hidden = &H200
RunIfConnectedToInternet = &H400
RestartOnIdleResume = &H800
SystemRequired = &H1000
RunOnlyIfLoggedOn = &H2000
End Enum

Or, dans la doc sur le site Microsoft, tout ce que j'ai trouvé, c'est :




http://msdn.microsoft.com/library/default.asp?url=/library/en-us/taskschd/taskschd/task_trigger.asp

The GetTaskFlags method returns one of the following values.

| Return code Description
| S_OK The operation was successful.
| E_INVALIDARG The arguments are not valid.
| E_OUTOFMEMORY Not enough memory is available.

Bon, alors quoi, ce n'est pas la bonne doc que j'ai visée ?

Dommage, RunIfConnectedToInternet, ce n'est pas d'avance inintéressant.




Hello Gloops,

Il ne faut pas confondre les flags de task, qui sont bien ceux auquels tu
fais référence et les flags d'un WorkItem, qui sont ceux indiqués ici:

http://msdn.microsoft.com/library/en-us/taskschd/taskschd/ischeduledworkitem_setflags.asp


--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ;
Avatar
Jacques93
Bonsoir Gloops
Gloops a écrit :
Bonjour,

Grâce au tuyau fourni par Jacques 93 l'autre jour, j'ai pu peaufiner un
gestionnaire de tâches.

http://www.mvps.org/emorcillo

Je suis en train de regarder ça de plus près, et je suis intrigué par
les flags.

Dans le projet on a :

Enum TaskFlags
Interactive = &H1
DeleteWhenDone = &H2
Disabled = &H4
StartOnlyIfIdle = &H10
KillOnIdleEnd = &H20
DontStartIfOnBatteries = &H40
KillIfGoingOnBatteries = &H80
RunOnlyIfDocked = &H100
Hidden = &H200
RunIfConnectedToInternet = &H400
RestartOnIdleResume = &H800
SystemRequired = &H1000
RunOnlyIfLoggedOn = &H2000
End Enum



Tiens, quand j'avais téléchargé le projet (il y a 1 an ou 2 je ne sais
plus), les 2 dernières n'étaient pas là ...

Or, dans la doc sur le site Microsoft, tout ce que j'ai trouvé, c'est :

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/taskschd/taskschd/task_trigger.asp



C'était la page d'à côté, enfin presque ;-) . Eduardo Morcillo n'a pas
gardé les noms de constantes des fichiers include (.h) de C/C++, ce qui
ne facilite pas la recherche sur MSDN :

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/taskschd/taskschd/ischeduledworkitem_setflags.asp


The GetTaskFlags method returns one of the following values.

| Return code Description
| S_OK The operation was successful.
| E_INVALIDARG The arguments are not valid.
| E_OUTOFMEMORY Not enough memory is available.

Bon, alors quoi, ce n'est pas la bonne doc que j'ai visée ?

Dommage, RunIfConnectedToInternet, ce n'est pas d'avance inintéressant.



Dommage, vraiment dommage :

TASK_FLAG_RUN_IF_CONNECTED_TO_INTERNET
The work item runs only if there is currently a valid Internet connection.

*Note* This feature is currently not implemented.

Pas de chance... :-D
Mais peut être à vérifier, depuis ça l'a peut être été ...

--
Cordialement,

Jacques.
Avatar
Gloops
Ah, effectivement, ça me paraît ressembler bien plus.

Je commençais à me dire que j'avais du mal à faire la différence entre
tâche et élément de travail, lorsque j'ai lu ceci sur work item dans le
glossaire :

Currently tasks are the only valid type of work item.

Donc, tout s'explique :)

Bon, tu connaissais cette page, c'est bien, merci ...
Pour la trouver avec les moteurs de recherche, j'aurais dû m'y prendre
comment ?
________________________________________
Jean-Marc a écrit, le 01/11/2005 20:00 :

Hello Gloops,

Il ne faut pas confondre les flags de task, qui sont bien ceux auquels tu
fais référence et les flags d'un WorkItem, qui sont ceux indiqués ici:

http://msdn.microsoft.com/library/en-us/taskschd/taskschd/ischeduledworkitem_setflags.asp




Avatar
Gloops
Jacques93 a écrit, le 01/11/2005 20:14 :
SystemRequired = &H1000
RunOnlyIfLoggedOn = &H2000
End Enum




Tiens, quand j'avais téléchargé le projet (il y a 1 an ou 2 je ne sais
plus), les 2 dernières n'étaient pas là ...



D'ailleurs, justement, je cherchais à savoir ce que signifiait
"SystemRequired". A ce que je vois sur la page indiquée, ça correspond à
la case "Mettre l'ordinateur en éveil pour exécuter cette tâche".

Bon, sur le formulaire j'ai traduit les deux intitulés qui comportaient
des fautes de frappe les rendant incompréhensibles, mais là je vais
peut-être laisser en Anglais, ça prendra moins de place à l'écran :)

N'empêche, entre de l'Anglais qu'on ne comprend pas et de l'Anglais
qu'on comprend, il y a une différence. :)


Or, dans la doc sur le site Microsoft, tout ce que j'ai trouvé, c'est :

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/taskschd/taskschd/task_trigger.asp





C'était la page d'à côté, enfin presque ;-) . Eduardo Morcillo n'a pas
gardé les noms de constantes des fichiers include (.h) de C/C++, ce qui
ne facilite pas la recherche sur MSDN :

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/taskschd/taskschd/ischeduledworkitem_setflags.asp



Ah, la même page que celle de Jean-Marc, en ajoutant dans l'URL
"default.asp?url=/"

Peut-être que ça dépend des arguments dans le moteur de recherche.

Enfin avec "TaskFlags", y en a pas connaître ...

Dommage, vraiment dommage :

TASK_FLAG_RUN_IF_CONNECTED_TO_INTERNET
The work item runs only if there is currently a valid Internet connection.

*Note* This feature is currently not implemented.

Pas de chance... :-D
Mais peut être à vérifier, depuis ça l'a peut être été ...



Si c'est le cas, la doc n'a pas été mise à jour.





En effet, je me disais aussi.
J'avais déjà repéré que ce n'était pas supporté par la boîte de dialogue
de propriétés d'une tâche, et que "en cas de connexion" signifie après
traduction "lors de l'ouverture d'une session Windows".

C'est pour ça que j'ai téléchargé DecomptNet sur http://schill.vb.free.fr

DecomptNet permet de lancer un programme lors de l'établissement d'une
connexion sur Internet, et un autre lors de la déconnexion.

Malheureusement il ne gère pas les lignes de commande, mais quand on a
VB sous la main ce n'est pas un problème :)

ça m'a permis de calmer le programme de mise à jour de McAfee, qui
réclamait la connexion dès que je m'étais déconnecté. Il faudra que je
leur demande si ils ont solutionné le problème, si ça se trouve je
pourrais enlever mon artillerie.

Accessoirement ça permet aussi d'établir un log des connexions. Utile
pour évaluer l'évolution des coûts quand on doit se connecter en RTC.
D'ailleurs, DecomptNet, comme son nom l'indique, totalise le temps de
connexion sur le mois, mais là les connexions ADSL sont incluses dans le
décompte.
Avatar
Jean-Marc
"Gloops" a écrit dans le message de
news:4367f501$0$17219$
Ah, effectivement, ça me paraît ressembler bien plus.

Je commençais à me dire que j'avais du mal à faire la différence entre
tâche et élément de travail, lorsque j'ai lu ceci sur work item dans le
glossaire :

Currently tasks are the only valid type of work item.

Donc, tout s'explique :)

Bon, tu connaissais cette page, c'est bien, merci ...
Pour la trouver avec les moteurs de recherche, j'aurais dû m'y prendre
comment ?



Hello,

et bien en fait je ne connaissais pas cette URL par coeur :-)
Je suis parti de ton lien, et j'ai cherché dans MSDN, sachant
tout de même que je savais que ce que je cherchais était en
rapport avec les workitems.

Quand à mon lien qui est un peu différent de celui deJacques,
voici l'explication:

Jacques a du faire un copier coller de l'URL telle qu'elle apparait dans la
barre d'adresse. Moi, j'ai fait un clic droit sur le chapitre de la page
dans MSDN et j'ai choisi "Copier le raccourci".

Cela donne l'URL directe de la page elle même. Le lien de Jacques est celui
d'une page .asp, qui avec le paramètre derrière le ? indique à la page
comment retrouver et afficher la vraie page.

Et voila :-)


--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ;
Avatar
Gloops
Ah, ben voilà voilà, tout s'explique encore une fois.

Bon, alors ton argument de recherche, c'était quoi, work item ?
C'est vrai que j'ai cherché plutôt Task flag, et quelques valeurs des flags.

C'est vrai qu'il faut en avoir, quelquefois, des idées ... sur ce
coup-là mon esprit n'a pas été assez fertile.
________________________________________
Jean-Marc a écrit, le 02/11/2005 08:28 :
"Gloops" a écrit dans le message de
news:4367f501$0$17219$

Ah, effectivement, ça me paraît ressembler bien plus.

Je commençais à me dire que j'avais du mal à faire la différence entre
tâche et élément de travail, lorsque j'ai lu ceci sur work item dans le
glossaire :

Currently tasks are the only valid type of work item.

Donc, tout s'explique :)

Bon, tu connaissais cette page, c'est bien, merci ...
Pour la trouver avec les moteurs de recherche, j'aurais dû m'y prendre
comment ?




Hello,

et bien en fait je ne connaissais pas cette URL par coeur :-)
Je suis parti de ton lien, et j'ai cherché dans MSDN, sachant
tout de même que je savais que ce que je cherchais était en
rapport avec les workitems.

Quand à mon lien qui est un peu différent de celui deJacques,
voici l'explication:

Jacques a du faire un copier coller de l'URL telle qu'elle apparait dans la
barre d'adresse. Moi, j'ai fait un clic droit sur le chapitre de la page
dans MSDN et j'ai choisi "Copier le raccourci".

Cela donne l'URL directe de la page elle même. Le lien de Jacques est celui
d'une page .asp, qui avec le paramètre derrière le ? indique à la page
comment retrouver et afficher la vraie page.

Et voila :-)




Avatar
Jean-Marc
"Gloops" a écrit dans le message de
news:43687609$0$996$
Ah, ben voilà voilà, tout s'explique encore une fois.
Bon, alors ton argument de recherche, c'était quoi, work item ?
C'est vrai que j'ai cherché plutôt Task flag, et quelques valeurs des


flags.

Je n'ai pas utilisé un moteur de recherche. Je suis parti de ton lien,
puis je suis remonté manuellement dans MSDN en tête de chapitre:
"Task Scheduler"
De la, j'ai été voir le sous-chapitre le plus logique dans ce cas:
"Task Scheduler References"

Puis, comme je cherchais clairement une interface, pas de problème,
je suis descendu dans
"Task Scheduler Interfaces"

Je savais que je cherchais qqchose en rapport avec workitem, donc,
sous chapitre "IScheduledWorkItem".

De la, j'ai examiné rapidement les noms des méthodes, et j'ai localisé:
"IscheduledWorkItem::SetFlags"

=> Bingo!

C'est vrai qu'il faut en avoir, quelquefois, des idées ... sur ce
coup-là mon esprit n'a pas été assez fertile.



Il faut avoir un peu l'habitude de naviguer dans MSDN, qui est plutot
bien fait et bien organisé, une fois qu'on connait le principe adopté
pour la strcuturation.

Si j'avais utilisé un moteur de recherche, j'aurais tapé:
"MSDN task scheduler work Item set flags"

Dans google, ceci retourne comme Premier lien:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/taskschd/taskschd/ischeduledworkitem_setflags.asp

Et voila, c'est le bon du premier coup! Merci Google !

--
Jean-marc
Tester mon serveur (VB6) => http://myjmnhome.dyndns.org
"There are only 10 kind of people
those who understand binary and those who don't."
mailto: remove '_no_spam_' ;
Avatar
Gloops
C'est vrai que si tu savais que cherchais quelque chose en rapport avec
work item, tu partais avec un avantage.

Enfin maintenant je saurai, work item, c'est prévu pour représenter
plein de trucs, mais pour le moment le seul truc que ça peut représenter
c'est une tâche planifiée.

En fait, peut-être bien que maintenant j'ai compris qu'il faut se
balader dans les interfaces. J'ai beau avoir fait un peu de Java, je
passais devant les interfaces un peu comme une poule devant un oeuf ...
(style "quoi c'est qu'c'truc ?")