CreateProcessW method

int CreateProcessW(
  1. Pointer<Uint16> lpApplicationName,
  2. Pointer<Uint16> lpCommandLine,
  3. Pointer<LPSECURITY_ATTRIBUTES> lpProcessAttributes,
  4. Pointer<LPSECURITY_ATTRIBUTES> lpThreadAttributes,
  5. int bInheritHandles,
  6. int dwCreationFlags,
  7. Pointer<Void> lpEnvironment,
  8. Pointer<Uint16> lpCurrentDirectory,
  9. Pointer<LPSTARTUPINFOW> lpStartupInfo,
  10. Pointer<LPPROCESS_INFORMATION> lpProcessInformation,
)

Implementation

int CreateProcessW(
  ffi.Pointer<ffi.Uint16> lpApplicationName,
  ffi.Pointer<ffi.Uint16> lpCommandLine,
  ffi.Pointer<LPSECURITY_ATTRIBUTES> lpProcessAttributes,
  ffi.Pointer<LPSECURITY_ATTRIBUTES> lpThreadAttributes,
  int bInheritHandles,
  int dwCreationFlags,
  ffi.Pointer<ffi.Void> lpEnvironment,
  ffi.Pointer<ffi.Uint16> lpCurrentDirectory,
  ffi.Pointer<LPSTARTUPINFOW> lpStartupInfo,
  ffi.Pointer<LPPROCESS_INFORMATION> lpProcessInformation,
) {
  return (_CreateProcessW ??=
      _dylib.lookupFunction<_c_CreateProcessW, _dart_CreateProcessW>(
          'CreateProcessW'))(
    lpApplicationName,
    lpCommandLine,
    lpProcessAttributes,
    lpThreadAttributes,
    bInheritHandles,
    dwCreationFlags,
    lpEnvironment,
    lpCurrentDirectory,
    lpStartupInfo,
    lpProcessInformation,
  );
}