reymoise
Messages postés7Date d'inscriptionlundi 21 juin 2004StatutMembreDernière intervention 5 février 2005
-
5 févr. 2005 à 12:45
zippro4012
Messages postés216Date d'inscriptionmardi 15 juin 2004StatutMembreDernière intervention26 février 2006
-
6 févr. 2005 à 12:39
Besoin d'une petite aide!!
Je souhaiterai executer un programme a un moment présice de maniere automatique.
cela est -il possible, si oui comment?
Je pense que un TIMER serai la solution mais je n'en connai pas l'utilisation malgrès que selon mes source cela s'avere relativement simple...
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 5 févr. 2005 à 13:04
Pourrais-tu être plus explicite dans ta demande ?
Si c'est pour exécuter un logiciel à une date et heure précise style
défragmentation des disques ou analyse par l'antivirus, tu peux passer
par le gestionnaire de taches planifiées de Windows.
reymoise
Messages postés7Date d'inscriptionlundi 21 juin 2004StatutMembreDernière intervention 5 février 2005 5 févr. 2005 à 13:20
Non,non .
C'est pour lancer un prog VB que g réaliser . il genere l'envoi de mail a l'aide de outlook.
Ce programme va etre utiliser par plusieur personnes (22).
C un fichier joint qui va passer de personne en personne .Il leur est donné un temps limité pour faire passer le mail a la personne suivante donc il faut que mon programme s'active automatiquement et non en cliquant sur l'executable!
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 5 févr. 2005 à 13:37
donc il faut que mon programme s'active automatiquement
2 solutions :
Soit tu as codé ton soft pour qu'il se lance, envoi ton mail et
s'arrête. Dans ce cas il faut que tu l'exécute régulièrement et dans le
gestionnaire de taches planifiées se charge de l'affaire sans problème.
Soit ton soft tourne en permanence en tache de fond et toutes les x
minutes appele la fonction d'envoi que tu as codé. Dans ce cas, il te
faut une boucle infinie dans laquelle tu viens tester l'heure système
et quand elle corespond à ton critère tu apelle la fonction d'envoi.
Tu peux aussi utiliser un objet timer que tu pose sur ta
feuille, tu programme la propriété Interval avec ta période de
déclenchement, attention en millisecondes, maxi 65535 soit 65 secondes
mais avec un peu de code tu peux monter à plusieurs minutes voire plus.
Ton timer te génère un évènement géré par la fonction Private Sub TonTimer_Timer ()
c'est dans cette procédure que tu met ton code d'appel.
En espérant avoir un peu mieux compris ta demande cette fois-ci
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 5 févr. 2005 à 19:19
Tiens il vient d'avoir une mise à jour sur une des sources. J'ai
pas regardé le code, mais selon les explications tu devrais trouver je
pense quelques pistes dedans
zippro4012
Messages postés216Date d'inscriptionmardi 15 juin 2004StatutMembreDernière intervention26 février 20061 6 févr. 2005 à 12:39
Pour enregistrer un prog dans le registre pour qu'il se démarrage automatiquement avec le code :
Declare Function RegOpenKey Lib "advapi32.dll" Alias "RegOpenKeyA" ( _
ByVal hKey As Long, _
ByVal lpSubKey As String, _
phkResult As Long) As Long
Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" ( _
ByVal hKey As Long, _
ByVal lpValueName As String, _
ByVal Reserved As Long, _
ByVal dwType As Long, _
lpData As Any, _
ByVal cbData As Long) As Long
Declare Function RegCloseKey Lib "advapi32.dll" ( _
ByVal hKey As Long) As Long
Public Const HKEY_LOCAL_MACHINE As Long = &H80000002
Public Const REG_SZ As Long = 1
Sub CreateStartKey()
Dim KeyHandle As Long, KeyValue As String, KeyLength As Long
Dim KeyResult As Long, KeyResult2 As Long
KeyValue = Space(255)
KeyLength = Len(KeyValue)
RegOpenKey HKEY_LOCAL_MACHINE, "Software\Microsoft\Windows\CurrentVersion\Run", KeyHandle
KeyResult2 = RegSetValueEx(KeyHandle, NomDuProg, 0, REG_SZ, ByVal CheminDuProg, Len(ExeFile))
If KeyResult2 <> 0 Then
MsgBox "Erreur !", vbCritical
End If
RegCloseKey KeyHandle
End Sub