Hola buenas, vereis me estoy haciendo un lio con un runpe.
Este realiza dos estructuras para luego pasar como argumentos estos datos de las estructuras a la funcion CreateProcessA de la API de Win32.
Estas estructuras son:

Código: Seleccionar todo

    Private Structure STARTUPINFO
        Dim cb As Long 'especifica el tamaño en bytes de esta estructura
        Dim lpReserved As String    
    End Structure
-----------------------------------------------------------------------
    Private Structure PROCESS_INFORM
        Dim hProcess As Long
        Dim hThread As Long
        Dim dwProcessId As Long
        Dim dwThreadId As Long
    End Structure
Ahora las variables que recogen las estructuras y la llamada a la funcion:

Código: Seleccionar todo

Private Declare Function CreateProcessA Lib "kernel32" (ByVal lpAppName As String, ByVal lpCommandLine As String, ByVal lpProcessAttributes As Integer, ByVal lpThreadAttributes As Integer, ByVal bInheritHandles As Integer, ByVal dwCreationFlags As Integer, ByVal lpEnvironment As Integer, ByVal lpCurrentDirectory As Integer, ByRef lpStartupInfo As STARTUPINFO, ByRef lpProcessInformation As PROCESS_INFORM) As Integer
        Dim sInfo As STARTUPINFO
        Dim pInfo As PROCESS_INFORM
        Dim lSuccess As Integer
        sInfo.cb = Len(sInfo)
        lSuccess = CreateProcessA(vbNullString, "C:\Users\Administrador\Desktop\hola.exe", 0, 0, False, &H4, 0, 0, sInfo, pInfo)
   
Ahora las dudas:
¿Se supone que el valor de las variables deben de darselas la funcion CreateProcessA?
¿Si no da valor a todas las variables es porque el runpe las utilizara mas adelante con otra api?
¿que debe de recoger lpReserved? No me da nada
¿que debe de recoger hProcess? Me da valor
¿que debe de recoger hThread? Me da valor
¿que debe de recoger dwProcessId? No me da nada
¿que debe de recoger dwThreadId? No me da nada
fíjate en la estructura.

STARTUPINFO: [Enlace externo eliminado para invitados]

PROCESS_INFORMATION: [Enlace externo eliminado para invitados]


Imagen
Responder

Volver a “VB/.NET”