Newsgroup: it.comp.lang.visual-basic
Titolo: Operazioni pianificate

Salve a tutti,
volevo sapere se esiste un modo per inserire una propria applicazione nelle
operazioni pianificate di Windiws (ovviamente questo non deve avvenire
manualmente, ma dall'applicazione stessa).
In altri termini, vorrei realizzare un programma che parta automaticamente
all'Avvio di Windows.
Sono un principiante e per questo spero che tutto ciò non sia troppo
difficile
Comunque grazie di avermi letto e a presto!!

 ha scritto nel messaggio
news:8bklsl$mo0$1...@nslave1.tin.it...


Va bene, come si fa? :-)
Bye Ago!
Daniele Cazzaro ha scritto nel messaggio ...


 all'Avvio di Windows.
Se vuoi che il tuo programma venga avviato prima di quelli
presenti in "Esecuzione automatica" (e fuori dalla portata dell'utente)
devi inserire il percorso dell'eseguibile nella sezione del registry:
   HKEY_LOCAL_MACHINE\Software\Microsoft\Windows_
        \CurrentVersion\Run
oppure
   HKEY_LOCAL_MACHINE\Software\Microsoft\Windows_
        \CurrentVersion\RunOnce
se vuoi che sia eseguito una solo volta.
Non tutti i programmi possono essere inseriti in queste
sezioni. Fa una prova. Al massimo viene generato un
errore non critico.
Altro sistema è quello di utilizzare lo Scheduler di Windows.

 sarei davvero grato! :-)
In genere uso la funzione che segue per inserire una chiave
nel registry
'Dichiarazioni a livello di modulo
Public Const HKEY_LOCAL_MACHINE = &H80000002
Public Const REG_SZ = 1
Public Declare Function RegCreateKey Lib "advapi32.dll" _
        Alias "RegCreateKeyA" (ByVal hKey As Long, _
        ByVal lpSubKey As String, _
        phkResult As Long) As Long
Public 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
Public Declare Function RegCloseKey Lib "advapi32.dll" _
        (ByVal hKey As Long) As Long
-------------------------------------------------------
'Un esempio - inserisce un riferimento nella sezione Run di
HKEY_LOCAL_MACHINE. Il programma MyProg verrà
eseguito ad ogni avvio di Windows prima dei programmi
referenziati in "Esecuzione automatica".
Dim regPath As String
Dim regKey As String
Dim regValue As String
    'Sezione del registry da modificare
    regPath = "Software\Microsoft\Windows\CurrentVersion\Run"
    'Nome della chiave da creare
    regKey = "MyProg"
    'Valore della chiave
    regValue = "c:\programmi\myprog\myprog.exe"
    'Chiama la funzione Reg_CreateStringValue
    Reg_CreateStringValue HKEY_LOCAL_MACHINE, _
            regPath, _
            regKey, _
            regValue
-------------------------------------------------------
'La funzione chiamata - a livello di modulo
Public Sub Reg_CreateStringValue(_
        RootKey As Long, _
        strPath As String, _
        strValue As String, _
        strData As String)
Dim hKey   As Long
Dim lngRet As Long
   lngRet = RegCreateKey(RootKey, strPath, hKey)
   lngRet = RegSetValueEx(hKey, strValue, 0, _
                 REG_SZ, _
                 ByVal strData, _
                 Len(strData))
   lngRet = RegCloseKey(hKey)
End Sub

...


...


 programma può essere inseriro o no in quelle sezioni?
Intendevo dire che alcuni  programmi potrebbe fare riferimento
a oggetti non ancora disponibili, dato che l'avvio del sistema non
è ancora stato completato. Per verificare è necessario fare un test.
Non succede niente. Al massimo il programma non viene avviato.

č ancora stato completato. Per verificare č necessario fare un test.
