The STARTUPINFO data structure is used in CreateProcess to control the initial appearance of a child process.
typedef struct _STARTUPINFO { /* si */
DWORD cb;
LPTSTR lpReserved;
LPTSTR lpDesktop;
LPSTR lpTitle;
DWORD dwX;
DWORD dwY;
DWORD dwXSize;
DWORD dwYSize;
DWORD dwXCountChars;
DWORD dwYCountChars;
DWORD dwFillAttribute;
DWORD dwFlags;
WORD wShowWindow;
WORD cbReserved2;
LPBYTE lpReserved2;
} STARTUPINFO, *LPSTARTUPINFO;
The PROCESS_INFORMATION data structure is used in CreateProcess to return information about the new process.
typedef struct _PROCESS_INFORMATION { /* pi */
HANDLE hProcess;
HANDLE hThread;
DWORD dwProcessId;
DWORD dwThreadId;
} PROCESS_INFORMATION;