switch ((ULONG)hObject)
{
case STD_INPUT_HANDLE:
- hObject = Ppb->hStdInput;
+ hObject = Ppb->StandardInput;
break;
case STD_OUTPUT_HANDLE:
- hObject = Ppb->hStdOutput;
+ hObject = Ppb->StandardOutput;
break;
case STD_ERROR_HANDLE:
- hObject = Ppb->hStdError;
+ hObject = Ppb->StandardError;
break;
}
switch ((ULONG)hObject)
{
case STD_INPUT_HANDLE:
- hObject = Ppb->hStdInput;
+ hObject = Ppb->StandardInput;
break;
case STD_OUTPUT_HANDLE:
- hObject = Ppb->hStdOutput;
+ hObject = Ppb->StandardOutput;
break;
case STD_ERROR_HANDLE:
- hObject = Ppb->hStdError;
+ hObject = Ppb->StandardError;
break;
}
&BytesWritten);
if (NT_SUCCESS(Status))
{
- HandleInfo.Inherit = (dwFlags & HANDLE_FLAG_INHERIT) != 0;
- HandleInfo.ProtectFromClose = (dwFlags & HANDLE_FLAG_PROTECT_FROM_CLOSE) != 0;
+ if (dwMask & HANDLE_FLAG_INHERIT)
+ HandleInfo.Inherit = (dwFlags & HANDLE_FLAG_INHERIT) != 0;
+ if (dwMask & HANDLE_FLAG_PROTECT_FROM_CLOSE)
+ HandleInfo.ProtectFromClose = (dwFlags & HANDLE_FLAG_PROTECT_FROM_CLOSE) != 0;
+
Status = NtSetInformationObject (hObject,
ObjectHandleInformation,
&HandleInfo,
switch ((ULONG)hObject)
{
case STD_INPUT_HANDLE:
- hObject = Ppb->hStdInput;
+ hObject = Ppb->StandardInput;
break;
case STD_OUTPUT_HANDLE:
- hObject = Ppb->hStdOutput;
+ hObject = Ppb->StandardOutput;
break;
case STD_ERROR_HANDLE:
- hObject = Ppb->hStdError;
+ hObject = Ppb->StandardError;
break;
}
switch ((ULONG)hSourceHandle)
{
case STD_INPUT_HANDLE:
- hSourceHandle = Ppb->hStdInput;
+ hSourceHandle = Ppb->StandardInput;
break;
case STD_OUTPUT_HANDLE:
- hSourceHandle = Ppb->hStdOutput;
+ hSourceHandle = Ppb->StandardOutput;
break;
case STD_ERROR_HANDLE:
- hSourceHandle = Ppb->hStdError;
+ hSourceHandle = Ppb->StandardError;
break;
}
hTargetProcessHandle,
lpTargetHandle,
dwDesiredAccess,
- (BOOLEAN)bInheritHandle,
+ bInheritHandle ? OBJ_INHERIT : 0,
dwOptions);
if (!NT_SUCCESS(Status))
{