" CreateProcess " è una funzione disponibile in una delle interfacce di Microsoft Windows Applicazione di base di programmazione ( API) disponibile con il sistema operativo Windows . " CreateProcess " si apre un programma come un processo di Windows e nel proprio thread. API di Windows dare più flessibilità ai programmatori VB . Per esempio, ci sono diverse funzioni disponibili all'interno della Windows API che permettono ai programmatori di eseguire azioni specifiche con una chiamata di funzione per l' API piuttosto che tentare di scrivere il proprio codice per fare la stessa cosa . Istruzioni
1
Avviare un nuovo progetto Visual Basic EXE standard . Aggiungi i tipi definiti dall'utente denominata " PROCESS_INFORMATION " e " STARTUPINFO " nel codice per " Form1 " che viene creata automaticamente con il nuovo progetto . Si tratta di strutture utilizzate in Visual Basic per raggruppare i dati e sono necessari tipi di parametri della funzione " CreateProcess " .
2
Creare due costanti che sono anche parametri della funzione " CreateProcess " .
< p > Const SINCRONIZZA = 1048576
Const NORMAL_PRIORITY_CLASS = & H20 &
dichiarare la funzione " CreateProcess " come " private Declare funzione CreateProcess Lib " "Alias " kernel32 CreateProcessA " . "
3
dichiarare funzioni aggiuntive per aprire il processo ( "Private Declare Function OpenProcess Lib " kernel32.dll " " ) , terminare il processo ( "Private Declare Function TerminateProcess Lib " kernel32 "") e per chiudere l'handle ( "Private Declare Function CloseHandle Lib " kernel32 "") .
4
Aggiungere un pulsante di comando " Form1 ' e il nome" cmdOpenNotepad . " Nel codice per " cmdOpenNotepad " , definire una variabile di tipo . PROCESS_INFORMATION , STARTUPINFO , una stringa per rappresentare nulla e due anela ai valori di ritorno
passare il Notepad.exe alla funzione " CreateProcess " come segue :
CreateProcess ( sNull , " Notepad.exe " , ByVal 0 & , ByVal 0 & , 1 & , NORMAL_PRIORITY_CLASS , ByVal 0 & , sNull , sInfo , pInfo ) economici 5
terminare il processo con " TerminateProcess ( pInfo.hProcess , 0 & ) . "
< p > Chiudere la maniglia a filo con " CloseHandle ( pInfo.hThread )" e al processo con " CloseHandle ( pInfo.hProcess ) . "