diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..a3bf048 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,15 @@ +# Set the default behavior, in case people don't have core.autocrlf set. +#* text=auto + +# Explicitly declare text files you want to always be normalized and converted +# to native line endings on checkout. + +# Declare files that will always have CRLF line endings on checkout. +*.pas text eol=crlf +*.java text eol=crlf +*.bdsproj text eol=crlf + +# Denote all files that are truly binary and should not be modified. +*.png binary +*.jpg binary +*.exe binary \ No newline at end of file diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..98707c2 --- /dev/null +++ b/.gitignore @@ -0,0 +1,50 @@ +# Delphi compiler-generated binaries (safe to delete) +*.exe +*.dll +*.bpl +*.bpi +*.dcp +*.so +*.apk +*.drc +*.map +*.dres +*.rsm +*.tds +*.dcu +*.lib + +# Delphi autogenerated files (duplicated info) +*.cfg +*Resource.rc + +# Delphi local files (user-specific info) +*.local +*.identcache +*.projdata +*.tvsconfig +*.dsk + +# Delphi history and backups +__history/ +*.~* + +# Version control system +*.orig +*.orig.* +*.chg.* +*.rej +*.conflict~ + +# Java error logs +*hs_err_pid*.log + +# Java +*.class + +# Java generated files +build/ +dist/ + +# Netbeans project privates +nbproject/private/ \ No newline at end of file diff --git a/build.xml b/build.xml new file mode 100644 index 0000000..d9afbe5 --- /dev/null +++ b/build.xml @@ -0,0 +1,86 @@ + + + + + + + + + + + Builds, tests, and runs the project JavactiveX. + + + + + + + + + + + + + + + + diff --git a/lib/jna-3.5.1.jar b/lib/jna-3.5.1.jar new file mode 100644 index 0000000..0827fcf Binary files /dev/null and b/lib/jna-3.5.1.jar differ diff --git a/libsrc/ActiveXServer/ActiveXHost.pas b/libsrc/ActiveXServer/ActiveXHost.pas new file mode 100644 index 0000000..20130da --- /dev/null +++ b/libsrc/ActiveXServer/ActiveXHost.pas @@ -0,0 +1,592 @@ +(****************************************************************************** +* rtAXHost * +* * +* Here we define the TOleControl descendent that hosts an ActiveX control at * +* Runtime. * +* * +* Based on Chris Bells code on http://www.doogal.co.uk/activex.php * +*******************************************************************************) +unit ActiveXHost; + +interface + +uses + Windows, ActiveX, Classes, Graphics, OleCtrls, StdVCL, controls, dialogs, + TypeLibViewer; + +type + TEventEvent = procedure(Sender : TObject; EventName : string; + EventParams : array of Variant) of object; + + TActiveXHost = class(TOleControl) + private + FOnEvent: TEventEvent; + function GetProperties: TStrings; + function GetPropertyValue(AName: WideString): OleVariant; + procedure SetPropertyValue(AName: WideString; const Value: OleVariant); + function NameToDispID(Intf : IDispatch; AName : WideString) : integer; + function GetMethods: TStrings; + procedure GetMethodsList; + procedure PopulateEventList; + function GetEvents: TStrings; + procedure Initialize(AFileName : string); + procedure PopulateFunctions(AList: TStrings; AEvents: Boolean); + procedure TriggerOnEvent(AEventName: string; Params: TDispParams); + function getDocString():WideString; + protected + FIntf: IDispatch; + FClassID: TGUID; + CControlData: TControlData; + FProps : TStringList; + FMethods : TStringList; + FEvents : TStringList; + FTypeLibViewer : TTypeLibViewer; + procedure InitControlData; override; + procedure InitControlInterface(const Obj: IUnknown); override; + procedure StandardEvent(DispID: TDispID; var Params: TDispParams); override; + procedure InvokeEvent(DispID: TDispID; var Params: TDispParams); override; + public + constructor CreateActiveX(AOwner : TComponent; AFileName : string; AClassID : TGUID); overload; + constructor CreateActiveX(AOwner : TComponent; AClassID : TGUID); overload; + destructor Destroy; override; + function FindFunction(AMethodName: string) : TFunction; + function FindImplementingIterfaceForFunction(AMethodName: string) : IDispatch; + function InvokeMethod(AMethodName : WideString) : OleVariant; overload; + function InvokeMethod(AMethodName : WideString; + AParams : array of OLEVariant) : OleVariant; overload; + class function FileName(AClassID : TGUID) : string; + // properties + property Properties : TStrings read GetProperties; + property Methods : TStrings read GetMethods; + property Events : TStrings read GetEvents; + property ClassID : TGUID read FClassID; + property DocString : WideString read getDocString; + property PropertyValue[AName : WideString] : OleVariant read GetPropertyValue + write SetPropertyValue; + // events + property OnEvent : TEventEvent read FOnEvent write FOnEvent; + end; + + procedure EnumDispatchProperties(Dispatch: IDispatch; PropType: TGUID; + VTCode: Integer; PropList: TStrings); + +//////////////////////////////////////////////////////////////////////////////// + +implementation + +uses + ComObj, AXCtrls, Registry, SysUtils; + +//////////////////////////////////////////////////////////////////////////////// + +constructor TActiveXHost.CreateActiveX(AOwner : TComponent; AFileName : string; + AClassID : TGUID); +begin + FClassID := AClassID; + // make sure it's registered + RegisterComServer(AFileName); + inherited Create(AOwner); + Initialize(AFileName); +end; + +//////////////////////////////////////////////////////////////////////////////// + +constructor TActiveXHost.CreateActiveX(AOwner: TComponent; AClassID: TGUID); +var + LFileName : string; +begin + LFileName := FileName(AClassID); + FClassID := AClassID; + try + inherited Create(AOwner); + Initialize(LFileName); + except + if not FileExists(LFileName) then + raise Exception.Create('The file ' + LFileName + ' specified for the ActiveX control does not exist') + else + raise; + end; +end; + +//////////////////////////////////////////////////////////////////////////////// + +procedure TActiveXHost.Initialize(AFileName : string); +begin; + FTypeLibViewer := TTypeLibViewer.Create(AFileName); + + // get properties + FProps := TStringList.Create; + FProps.Duplicates := dupIgnore; + EnumDispatchProperties(FIntf, GUID_NULL, VT_EMPTY, FProps); + + // get methods + FMethods := TStringList.Create; + GetMethodsList; + + FEvents := TStringList.Create; + PopulateEventList; +end; + +//////////////////////////////////////////////////////////////////////////////// + +destructor TActiveXHost.Destroy; +begin + FreeAndNil(FTypeLibViewer); + FreeAndNil(FEvents); + FreeAndNil(FMethods); + FreeAndNil(FProps); + inherited; +end; + +//////////////////////////////////////////////////////////////////////////////// + +procedure TActiveXHost.InitControlData; +begin + with CControlData do + begin + ClassID := FClassID; + EventCount := 0; + EventDispIDs := nil; + LicenseKey := nil; + Flags := $00000000; + Version := 300; + end; + + ControlData := @CControlData; +end; + +//////////////////////////////////////////////////////////////////////////////// + +procedure TActiveXHost.InitControlInterface(const Obj: IUnknown); +begin + FIntf := Obj as IDispatch; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TActiveXHost.GetProperties: TStrings; +begin + Result := FProps; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TActiveXHost.GetPropertyValue(AName: WideString): OleVariant; +begin + Result := GetDispatchPropValue(FIntf, NameToDispID(FIntf, AName)) +end; + +//////////////////////////////////////////////////////////////////////////////// + +procedure TActiveXHost.SetPropertyValue(AName: WideString; + const Value: OleVariant); +begin + SetDispatchPropValue(FIntf, NameToDispID(FIntf, AName), Value); +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TActiveXHost.NameToDispID(Intf : IDispatch; AName: WideString): integer; +begin + OleCheck(Intf.GetIDsOfNames(GUID_NULL, @AName, 1, GetThreadLocale, + @Result)); +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TActiveXHost.GetMethods: TStrings; +begin + Result := FMethods; +end; + +//////////////////////////////////////////////////////////////////////////////// + +procedure TActiveXHost.GetMethodsList; +begin + PopulateFunctions(FMethods, False); +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TActiveXHost.InvokeMethod(AMethodName: WideString) : OleVariant; +var + dispparamsNoArgs : TDispParams; + LImplementingIntf : IDispatch; +begin + LImplementingIntf := FindImplementingIterfaceForFunction(AMethodName); + + dispparamsNoArgs.rgvarg := nil; + dispparamsNoArgs.rgdispidNamedArgs := nil; + dispparamsNoArgs.cArgs := 0; + dispparamsNoArgs.cNamedArgs := 0; + OleCheck(LImplementingIntf.Invoke(NameToDispID(LImplementingIntf, AMethodName), GUID_NULL, GetThreadLocale, + DISPATCH_METHOD, dispparamsNoArgs, @Result, nil, nil)); +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TActiveXHost.InvokeMethod(AMethodName: WideString; + AParams : array of OLEVariant) : OleVariant; +var + LDispParams : TDispParams; + Loop : integer; + LImplementingIntf : IDispatch; + +begin + LImplementingIntf := FindImplementingIterfaceForFunction(AMethodName); + + LDispParams.rgdispidNamedArgs := nil; + LDispParams.cNamedArgs := 0; + LDispParams.cArgs := Length(AParams); + GetMem(LDispParams.rgvarg, LDispParams.cArgs * SizeOf(TVariantArg)); + try + // the parameters have to be back-to-front + for Loop := Low(AParams) to High(AParams) do + LDispParams.rgvarg[High(AParams)-Loop] := TVariantArg(AParams[Loop]); + + OLECheck(LImplementingIntf.Invoke(NameToDispID(LImplementingIntf, AMethodName), + GUID_NULL, GetThreadLocale, DISPATCH_METHOD, LDispParams, @Result, nil, nil)); + finally + FreeMem(LDispParams.rgvarg); + end; +end; + +//////////////////////////////////////////////////////////////////////////////// + +procedure TActiveXHost.PopulateEventList; +begin + PopulateFunctions(FEvents, True); +end; + +//////////////////////////////////////////////////////////////////////////////// + +procedure TActiveXHost.PopulateFunctions(AList : TStrings; AEvents : Boolean); +var + LTypeInfo : TTypeInformation; + Loop, LFuncLoop : integer; + LEvents : TImplementedTypeInformation; + LInterested : Boolean; + LThisFunction : TFunction; +begin + LTypeInfo := FTypeLibViewer.FindGUID(FClassID); + if Assigned(LTypeInfo) then + begin + for Loop := 0 to LTypeInfo.ImplementedInterfacesCount-1 do + begin + // are we interested in this interface? + if (tfSource in LTypeInfo.ImplementedInterface(Loop).TypeFlags) then + LInterested := AEvents + else + LInterested := not AEvents; + + if LInterested then + begin + // we've found an event sink + LEvents := LTypeInfo.ImplementedInterface(Loop); + for LFuncLoop := 0 to LEvents.FunctionCount-1 do + begin + LThisFunction := LEvents.GetFunction(LFuncLoop); + if LThisFunction.InvokeKind = ikFunction then + AList.Add(LThisFunction.Name); + end; + + // this ensures we sink the events via the InvokeEvent and StandardEvent methods + CControlData.EventIID := LEvents.GUID; + end; + end; + end; +end; + +//////////////////////////////////////////////////////////////////////////////// + +class function TActiveXHost.FileName(AClassID : TGUID) : string; +var + LReg : TRegistry; + LFullPath : PChar; + +begin + Result := ''; + LReg := TRegistry.Create(KEY_READ); //LOCAL_MACHINE classes can'be opened with KEY_ALL_ACCESS + try + LReg.RootKey := HKEY_CLASSES_ROOT; + if LReg.OpenKey('\CLSID\' + GUIDToString(AClassID) + '\InprocServer32', False) then + Result := LReg.ReadString(''); + + // expand out environment variable strings which may be in the regsitry + LFullPath := StrAlloc(MAX_PATH); + try + ExpandEnvironmentStrings(PChar(Result), LFullPath, MAX_PATH); + Result := LFullPath; + finally + StrDispose(LFullPath); + end; + + finally + LReg.Free; + end; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TActiveXHost.GetEvents: TStrings; +begin + Result := FEvents; +end; + +//////////////////////////////////////////////////////////////////////////////// + +procedure TActiveXHost.InvokeEvent(DispID: TDispID; + var Params: TDispParams); +var + LEventInfo : TTypeInformation; + Loop : integer; +begin + inherited; + if Assigned(FTypeLibViewer) then + begin + LEventInfo := FTypeLibViewer.FindGUID(CControlData.EventIID); + if Assigned(LEventInfo) then + begin + for Loop := 0 to LEventInfo.FunctionCount-1 do + begin + if LEventInfo.GetFunction(Loop).MemberID = DispID then + TriggerOnEvent(LEventInfo.GetFunction(Loop).Name, Params); + end; + end; + end; +end; + +//////////////////////////////////////////////////////////////////////////////// + +procedure TActiveXHost.StandardEvent(DispID: TDispID; + var Params: TDispParams); +var + LEventName : string; +begin + inherited; + case DispID of + DISPID_CLICK : LEventName := 'Click'; + DISPID_DBLCLICK : LEventName := 'DblClick'; + DISPID_KEYDOWN : LEventName := 'KeyDown'; + DISPID_KEYPRESS : LEventName := 'KeyPress'; + DISPID_KEYUP : LEventName := 'KeyUp'; + DISPID_MOUSEDOWN : LEventName := 'MouseDown'; + DISPID_MOUSEMOVE : LEventName := 'MouseMove'; + DISPID_MOUSEUP : LEventName := 'MouseUp'; + else + LEventName := 'Unknown event'; + end; + TriggerOnEvent(LEventName, Params); +end; + +//////////////////////////////////////////////////////////////////////////////// + +procedure TActiveXHost.TriggerOnEvent(AEventName : string; Params: TDispParams); +var + LParams : array of Variant; + Loop : integer; + LThisParam : TVariantArg; +begin + if Assigned(FOnEvent) then + begin + SetLength(LParams, Params.cArgs); + for Loop := 0 to Params.cArgs-1 do + begin + LThisParam := Params.rgvarg[Loop]; + case LThisParam.vt of + VT_UI1: LParams[Loop] := LThisParam.bVal; + VT_I2: LParams[Loop] := LThisParam.iVal; + VT_I4: LParams[Loop] := LThisParam.lVal; + VT_R4: LParams[Loop] := LThisParam.fltVal; + VT_R8: LParams[Loop] := LThisParam.dblVal; + VT_BOOL: LParams[Loop] := LThisParam.vbool; + VT_ERROR: LParams[Loop] := LThisParam.scode; + VT_CY: LParams[Loop] := LThisParam.cyVal; + VT_DATE: LParams[Loop] := LThisParam.date; + //VT_BSTR: LParams[Loop] := LThisParam.bstrVal; + //VT_UNKNOWN: LParams[Loop] := LThisParam.unkVal; + //VT_DISPATCH: LParams[Loop] := LThisParam.dispVal; + //VT_ARRAY: LParams[Loop] := LThisParam.parray; + //VT_BYREF or VT_UI1: LParams[Loop] := LThisParam.pbVal; + //VT_BYREF or VT_I2: LParams[Loop] := LThisParam.piVal; + //VT_BYREF or VT_I4: LParams[Loop] := LThisParam.plVal; + {VT_BYREF or VT_R4: LParams[Loop] := LThisParam.pfltVal; + VT_BYREF or VT_R8: LParams[Loop] := LThisParam.pdblVal; + VT_BYREF or VT_BOOL: LParams[Loop] := LThisParam.pbool; + VT_BYREF or VT_ERROR: LParams[Loop] := LThisParam.pscode: ^HResult); + VT_BYREF or VT_CY: LParams[Loop] := LThisParam.pcyVal: ^Currency); + VT_BYREF or VT_DATE: LParams[Loop] := LThisParam.pdate: ^TOleDate); + VT_BYREF or VT_BSTR: LParams[Loop] := LThisParam.pbstrVal: ^WideString); + VT_BYREF or VT_UNKNOWN: LParams[Loop] := LThisParam.punkVal: ^IUnknown); + VT_BYREF or VT_DISPATCH: LParams[Loop] := LThisParam.pdispVal: ^IDispatch); + VT_BYREF or VT_ARRAY: LParams[Loop] := LThisParam.pparray: ^PSafeArray); + VT_BYREF or VT_VARIANT: LParams[Loop] := LThisParam.pvarVal: PVariant); + VT_BYREF: LParams[Loop] := LThisParam.byRef: Pointer);} + VT_I1: LParams[Loop] := LThisParam.cVal; + VT_UI2: LParams[Loop] := LThisParam.uiVal; + VT_UI4: LParams[Loop] := LThisParam.ulVal; + VT_INT: LParams[Loop] := LThisParam.intVal; + VT_UINT: LParams[Loop] := LThisParam.uintVal; + {VT_BYREF or VT_DECIMAL: LParams[Loop] := LThisParam.pdecVal; + VT_BYREF or VT_I1: LParams[Loop] := LThisParam.pcVal: PChar); + VT_BYREF or VT_UI2: LParams[Loop] := LThisParam.puiVal: PWord); + VT_BYREF or VT_UI4: LParams[Loop] := LThisParam.pulVal: PInteger); + VT_BYREF or VT_INT: LParams[Loop] := LThisParam.pintVal: PInteger); + VT_BYREF or VT_UINT: LParams[Loop] := LThisParam.puintVal: PLongWord);} + end; + end; + + FOnEvent(Self, AEventName, LParams); + end; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TActiveXHost.FindFunction(AMethodName: string) : TFunction; +var + LTypeInfo : TTypeInformation; + ImplementingType : TTypeInformation; +begin + Result := nil; + LTypeInfo := FTypeLibViewer.FindGUID(FClassID); + if Assigned(LTypeInfo) then + begin + Result := LTypeInfo.FindFunction(AMethodName, ImplementingType); + end; +end; + + +function TActiveXHost.getDocString():WideString; +var + LTypeInfo : TTypeInformation; +begin + LTypeInfo := FTypeLibViewer.FindGUID(FClassID); + Result := LTypeInfo.DocString; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TActiveXHost.FindImplementingIterfaceForFunction(AMethodName: string) : IDispatch; +var + LTypeInfo : TTypeInformation; + ImplementingType : TTypeInformation; +begin + Result := nil; + LTypeInfo := FTypeLibViewer.FindGUID(FClassID); + if Assigned(LTypeInfo) then + begin + LTypeInfo.FindFunction(AMethodName, ImplementingType); + OleCheck(FIntf.QueryInterface(ImplementingType.GUID, Result)); + end; +end; + +//////////////////////////////////////////////////////////////////////////////// + +procedure EnumDispatchProperties(Dispatch: IDispatch; PropType: TGUID; + VTCode: Integer; PropList: TStrings); +const + INVOKE_PROPERTYSET = INVOKE_PROPERTYPUT or INVOKE_PROPERTYPUTREF; +var + I: Integer; + TypeInfo: ITypeInfo; + TypeAttr: PTypeAttr; + FuncDesc: PFuncDesc; + VarDesc: PVarDesc; + + procedure SaveName(Id: Integer); + var + Name: WideString; + begin + OleCheck(TypeInfo.GetDocumentation(Id, @Name, nil, nil, nil)); + if PropList.IndexOfObject(TObject(Id)) = -1 then + PropList.AddObject(Name, TObject(Id)); + end; + + function IsPropType(const TypeInfo: ITypeInfo; TypeDesc: PTypeDesc): Boolean; + var + RefInfo: ITypeInfo; + RefAttr: PTypeAttr; + IsNullGuid: Boolean; + begin + IsNullGuid := IsEqualGuid(PropType, GUID_NULL); + Result := IsNullGuid and (VTCode = VT_EMPTY); + if Result then Exit; + case TypeDesc.vt of + VT_PTR: Result := IsPropType(TypeInfo, TypeDesc.ptdesc); + VT_USERDEFINED: + begin + OleCheck(TypeInfo.GetRefTypeInfo(TypeDesc.hreftype, RefInfo)); + OleCheck(RefInfo.GetTypeAttr(RefAttr)); + try + Result := IsEqualGUID(RefAttr.guid, PropType); + if not Result and (RefAttr.typekind = TKIND_ALIAS) then + Result := IsPropType(RefInfo, @RefAttr.tdescAlias); + finally + RefInfo.ReleaseTypeAttr(RefAttr); + end; + end; + else + Result := IsNullGuid and (TypeDesc.vt = VTCode); + end; + end; + + function HasMember(const TypeInfo: ITypeInfo; Cnt, MemID, InvKind: Integer): Boolean; + var + I: Integer; + FuncDesc: PFuncDesc; + begin + for I := 0 to Cnt - 1 do + begin + OleCheck(TypeInfo.GetFuncDesc(I, FuncDesc)); + try + if (FuncDesc.memid = MemID) and (FuncDesc.invkind and InvKind <> 0) then + begin + Result := True; + Exit; + end; + finally + TypeInfo.ReleaseFuncDesc(FuncDesc); + end; + end; + Result := False; + end; + +begin + OleCheck(Dispatch.GetTypeInfo(0,0,TypeInfo)); + if TypeInfo = nil then Exit; + OleCheck(TypeInfo.GetTypeAttr(TypeAttr)); + try + for I := 0 to TypeAttr.cVars - 1 do + begin + OleCheck(TypeInfo.GetVarDesc(I, VarDesc)); + try + //if (VarDesc.wVarFlags and VARFLAG_FREADONLY <> 0) and + if IsPropType(TypeInfo, @VarDesc.elemdescVar.tdesc) then + SaveName(VarDesc.memid); + finally + TypeInfo.ReleaseVarDesc(VarDesc); + end; + end; + for I := 0 to TypeAttr.cFuncs - 1 do + begin + OleCheck(TypeInfo.GetFuncDesc(I, FuncDesc)); + try + if ((FuncDesc.invkind = INVOKE_PROPERTYGET) and (FuncDesc.cParams < 1) and + HasMember(TypeInfo, TypeAttr.cFuncs, FuncDesc.memid, INVOKE_PROPERTYSET) and + IsPropType(TypeInfo, @FuncDesc.elemdescFunc.tdesc)) or + ((FuncDesc.invkind and INVOKE_PROPERTYSET <> 0) and (FuncDesc.cParams < 2) and + //HasMember(TypeInfo, TypeAttr.cFuncs, FuncDesc.memid, INVOKE_PROPERTYGET) and + IsPropType(TypeInfo, + @FuncDesc.lprgelemdescParam[FuncDesc.cParams - 1].tdesc)) then + SaveName(FuncDesc.memid); + finally + TypeInfo.ReleaseFuncDesc(FuncDesc); + end; + end; + finally + TypeInfo.ReleaseTypeAttr(TypeAttr); + end; +end; + + +end. diff --git a/libsrc/ActiveXServer/ActiveXServer.bdsproj b/libsrc/ActiveXServer/ActiveXServer.bdsproj new file mode 100644 index 0000000..bdfce83 --- /dev/null +++ b/libsrc/ActiveXServer/ActiveXServer.bdsproj @@ -0,0 +1,182 @@ + + + + + + + + + + + + ActiveXServer.dpr + + + 7.0 + + + 8 + 0 + 1 + 1 + 0 + 0 + 1 + 1 + 1 + 0 + 0 + 1 + 0 + 1 + 1 + 1 + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 1 + 1 + 1 + True + True + WinTypes=Windows;WinProcs=Windows;DbiTypes=BDE;DbiProcs=BDE;DbiErrs=BDE; + + False + + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + True + False + False + False + True + True + True + True + True + True + + + + 0 + 0 + False + 1 + False + False + False + 16384 + 1048576 + 4194304 + + + + ..\..\lib + + + + + vclx;vcl;rtl;dbrtl;vcldb;adortl;dbxcds;dbexpress;xmlrtl;vclie;inet;inetdbbde;inetdbxpress;dclOfficeXP;soaprtl;dsnap;vclactnband;bdertl;vcldbx + + + False + + + + + + False + + + True + False + + + + $00000000 + + + + True + False + 1 + 0 + 0 + 0 + False + False + False + False + False + 1033 + 1252 + + + JPEXS + + 1.0.0.0 + + + + + JPEXS ActiveX Server + 1.0.0.0 + + + Borland InterBase Express Components + Intraweb 8.0 Design Package for Borland Development Studio 2006 + Indy 10 Core Design Time + Borland Sample Components + Indy 10 Protocols Design Time + TeeChart Components + + + diff --git a/libsrc/ActiveXServer/ActiveXServer.dpr b/libsrc/ActiveXServer/ActiveXServer.dpr new file mode 100644 index 0000000..8b5aad9 --- /dev/null +++ b/libsrc/ActiveXServer/ActiveXServer.dpr @@ -0,0 +1,29 @@ +program ActiveXServer; + +uses + Forms, + uMain in 'uMain.pas' {frmMain}, + ActiveXHost in 'ActiveXHost.pas', + TypeLibViewer in 'TypeLibViewer.pas', + Windows, + dialogs, + RegAxCtrlList in 'RegAxCtrlList.pas'; + +{$R *.res} + +begin + if ParamCount<1 then + begin + MessageDlg('Incorrect commandline arguments.',mtError,[mbOK],0); + Application.Terminate; + end; + Application.Initialize; + Application.Title := 'ActiveX Server'; + Application.CreateForm(TfrmMain, frmMain); + ShowWindow(Application.Handle, SW_HIDE); + SetWindowLong(Application.Handle, GWL_EXSTYLE, + GetWindowLong(Application.Handle, GWL_EXSTYLE) or WS_EX_TOOLWINDOW); + ShowWindow(Application.Handle, SW_SHOW); + frmMain.StartThread; + Application.Run; +end. diff --git a/libsrc/ActiveXServer/ActiveXServer.res b/libsrc/ActiveXServer/ActiveXServer.res new file mode 100644 index 0000000..d4d6ba7 Binary files /dev/null and b/libsrc/ActiveXServer/ActiveXServer.res differ diff --git a/libsrc/ActiveXServer/RegAxCtrlList.pas b/libsrc/ActiveXServer/RegAxCtrlList.pas new file mode 100644 index 0000000..4ead051 --- /dev/null +++ b/libsrc/ActiveXServer/RegAxCtrlList.pas @@ -0,0 +1,161 @@ +(******************************************************************************* + * Based on Chris Bells code on http://www.doogal.co.uk/activex.php * + *******************************************************************************) + + unit RegAxCtrlList; + +interface + +uses + Classes, Registry; + +type + TRegAxCtrlList = class + private + FControls : TStrings; + FClassIDs : TStrings; + FFileNames : TStrings; + FProgIDs : TStrings; + Fregistry : TRegistry; + procedure Sort; + protected + procedure GetControlEntries; + procedure FilterControls; + public + constructor Create;virtual; + destructor Destroy;override; + procedure Refresh; + property Descriptions : TStrings read FControls; + property ClassIDs : TStrings read FClassIDs; + property FileNames : TStrings read FFileNames; + property ProgIDs : TStrings read FProgIDs; + end; + +//////////////////////////////////////////////////////////////////////////////// + +implementation + +uses + Windows, SysUtils, COMObj, ActiveXHost; + +//////////////////////////////////////////////////////////////////////////////// +{ TMetRegAxCtrlList } + +constructor TRegAxCtrlList.Create; +begin + FControls := TStringList.Create; + FClassIDs := TStringList.Create; + FFileNames := TStringList.Create; + FProgIDs := TStringList.Create; + FRegistry := TRegistry.Create(KEY_READ); //LOCAL_MACHINE classes can'be opened with KEY_ALL_ACCESS + FRegistry.RootKey := HKEY_CLASSES_ROOT; + GetControlEntries; +end; + +//////////////////////////////////////////////////////////////////////////////// + +destructor TRegAxCtrlList.Destroy; +begin + FRegistry.Free; + FProgIDs.Free; + FFileNames.Free; + FControls.Free; + FClassIDs.Free; + inherited; +end; + +//////////////////////////////////////////////////////////////////////////////// + +procedure TRegAxCtrlList.FilterControls; +var + LIndex : integer; + LTempList : TStringList; + i:integer; +begin + + + + LIndex := FClassIDs.IndexOf('CLSID'); + if LIndex > -1 then + FClassIDs.Delete(LIndex); + LTempList := TStringList.Create; + try + for LIndex := FClassIDs.Count -1 downto 0 do + begin + LTempList.Clear; + + FRegistry.OpenKey('\CLSID\' + FClassIDs[Lindex], False); + FRegistry.GetKeyNames(LTempList); + + if FClassIds[Lindex]='{D27CDB6E-AE6D-11cf-96B8-444553540000}' then + begin + for i := 0 to LTempList.Count - 1 do + begin + OutputDebugString(PChar(LTempList[i])) ; + end; + end; + + if (LTempList.IndexOf('Control') = -1) then + FClassIDs.Delete(LIndex) + else + begin + // get the description + FControls.Insert(0, FRegistry.ReadString('')); + + // get the filename + FFileNames.Insert(0, TActiveXHost.FileName(StringToGUID(FClassIDs[Lindex]))); + + // get the ProgID + if FRegistry.OpenKey('\CLSID\' + FClassIDs[Lindex] + '\ProgID', False) then + FProgIDs.Insert(0, FRegistry.ReadString('')) + else + FProgIDs.Insert(0, ''); + end; + end; + finally + LTempList.Free; + end; +end; + +//////////////////////////////////////////////////////////////////////////////// + +procedure TRegAxCtrlList.GetControlEntries; +begin + FControls.Clear; + FClassIDs.Clear; + FRegistry.OpenKey('\CLSID',False); + Fregistry.GetKeyNames(FClassIDs); + FilterControls; + Sort; +end; + +//////////////////////////////////////////////////////////////////////////////// + +procedure TRegAxCtrlList.Sort; +var + I, J : integer; +begin + // just a simple bubble sort + for I := FControls.Count-1 downto 0 do + begin + for J := 0 to FControls.Count-2 do + begin + if (CompareText(FControls[J], FControls[J + 1]) > 0) then + begin + FControls.Exchange(J, J + 1); + FClassIDs.Exchange(J, J + 1); + FFileNames.Exchange(J, J + 1); + FProgIDs.Exchange(J, J + 1); + end; + end; + end; +end; + +//////////////////////////////////////////////////////////////////////////////// + +procedure TRegAxCtrlList.Refresh; +begin + GetControlEntries; +end; + +end. diff --git a/libsrc/ActiveXServer/TypeLibViewer.pas b/libsrc/ActiveXServer/TypeLibViewer.pas new file mode 100644 index 0000000..10369e2 --- /dev/null +++ b/libsrc/ActiveXServer/TypeLibViewer.pas @@ -0,0 +1,527 @@ +(******************************************************************************* + * Based on Chris Bells code on http://www.doogal.co.uk/activex.php * + *******************************************************************************) + +unit TypeLibViewer; + +interface + +uses + ActiveX, Contnrs; + +type + TTypeKind = (tkEnum, tkRecord, tkModule, tkInterface, tkDispatch, tkCoClass, + tkAlias, tkUnion); + + TInvokeKind = (ikFunction, ikPropertyGetter, ikPropertySetter, ikPropertySetterRef); + + TImplementedTypeInformation = class; + + TParameter = class + private + FType : TVarType; + FName : string; + public + function ParamType : TVarType; + function TypeAsString : string; + function Name : string; + end; + + TFunction = class + private + FName : Widestring; + FMemberID : TMemberID; + FInvokeKind : TInvokeKind; + FReturnType : TParameter; + FParameters : TObjectList; + FDocString : Widestring; + public + constructor Create; + destructor Destroy; override; + function Name : Widestring; + function MemberID : TMemberID; + function InvokeKind : TInvokeKind; + function ParameterCount : integer; + function Parameter(Index : integer) : TParameter; + function ReturnType : TParameter; + function DocString : Widestring; + end; + + TTypeInformation = class + private + FName : WideString; + FDocString : WideString; + FHelpContext : Longint; + FHelpFile : Widestring; + FTypeAttr : PTypeAttr; + FTypeInfo : ITypeInfo; + FTypeKind : TTypeKind; + FIntfList : TObjectList; + FFuncList : TObjectList; + function GetImplementedInterface(Index: integer): ITypeInfo; + procedure GetInterfaces; + procedure GetFunctions; + public + constructor Create(ATypeInfo : ITypeInfo); + destructor Destroy; override; + // properties + property Name : WideString read FName; + property DocString : WideString read FDocString; + property HelpContext : Longint read FHelpContext; + property HelpFile : Widestring read FHelpFile; + property TypeKind : TTypeKind read FTypeKind; + property TypeInfo : ITypeInfo read FTypeInfo; + // functions + function FunctionCount : integer; + function GetFunction(Index : integer) : TFunction; + function FindFunction(AName : string; var ImplementingType : TTypeInformation) : TFunction; + function VariableCount : integer; + function VariableName(Index : integer) : Widestring; + function ImplementedInterfacesCount : integer; + function ImplementedInterface(Index : integer) : TImplementedTypeInformation; + function GUID : TGUID; + function TypeKindString : string; + end; + + TTypeFlags = set of (tfDefault, tfSource, tfRestricted); + + TImplementedTypeInformation = class(TTypeInformation) + private + FTypeFlags : TTypeFlags; + public + property TypeFlags : TTypeFlags read FTypeFlags; + end; + + TTypeLibViewer = class + protected + FTypeLib : ITypeLib; + FTypeList : TObjectList; + procedure Populate; + function TypeInfo(Index : integer) : ITypeInfo; + public + constructor Create(AFileName : WideString); + destructor Destroy; override; + function Count : integer; + function TypeInformation(Index : integer) : TTypeInformation; + function FindGUID(AGUID : TGUID) : TTypeInformation; + end; + +//////////////////////////////////////////////////////////////////////////////// + +implementation + +uses + ComObj, SysUtils; + +//////////////////////////////////////////////////////////////////////////////// + +constructor TTypeInformation.Create(ATypeInfo :ITypeInfo); +var + LTypeLib : ITypeLib; + LIndex : integer; + LTypeKind : ActiveX.TTypeKind; +begin + inherited Create; + + // get information for this item + FTypeInfo := ATypeInfo; + OleCheck(FTypeInfo.GetTypeAttr(FTypeAttr)); + OleCheck(FTypeInfo.GetContainingTypeLib(LTypeLib, LIndex)); + OleCheck(LTypeLib.GetDocumentation(LIndex, @FName, + @FDocString, @FHelpContext, @FHelpFile)); + OleCheck(LTypeLib.GetTypeInfoType(LIndex, LTypeKind)); + FTypeKind := TTypeKind(LTypeKind); + + // get implemented interfaces, or interface that this inherits from + FIntfList := TObjectList.Create; + GetInterfaces; + + FFuncList := TObjectList.Create; + GetFunctions; +end; + +//////////////////////////////////////////////////////////////////////////////// + +destructor TTypeInformation.Destroy; +begin + FFuncList.Free; + FIntfList.Free; + FTypeInfo.ReleaseTypeAttr(FTypeAttr); + FTypeInfo := nil; + inherited; +end; + +//////////////////////////////////////////////////////////////////////////////// + +procedure TTypeInformation.GetInterfaces; +var + Loop : integer; + LImplIntf : TImplementedTypeInformation; + LTypeImplFlags : integer; +begin + for Loop := 0 to ImplementedInterfacesCount-1 do + begin + LImplIntf := TImplementedTypeInformation.Create(GetImplementedInterface(Loop)); + OleCheck(FTypeInfo.GetImplTypeFlags(Loop, LTypeImplFlags)); + LImplIntf.FTypeFlags := []; + if LTypeImplFlags div IMPLTYPEFLAG_FRESTRICTED = 1 then + begin + LImplIntf.FTypeFlags := LImplIntf.FTypeFlags + [tfRestricted]; + LTypeImplFlags := LTypeImplFlags - IMPLTYPEFLAG_FRESTRICTED; + end; + if LTypeImplFlags div IMPLTYPEFLAG_FSOURCE = 1 then + begin + LImplIntf.FTypeFlags := LImplIntf.FTypeFlags + [tfSource]; + LTypeImplFlags := LTypeImplFlags - IMPLTYPEFLAG_FSOURCE; + end; + if LTypeImplFlags div IMPLTYPEFLAG_FDEFAULT = 1 then + begin + LImplIntf.FTypeFlags := LImplIntf.FTypeFlags + [tfDefault]; + LTypeImplFlags := LTypeImplFlags - IMPLTYPEFLAG_FDEFAULT; + end; + FIntfList.Add(LImplIntf); + end; +end; + +//////////////////////////////////////////////////////////////////////////////// + +procedure TTypeInformation.GetFunctions; +var + LThisFunc : TFunction; + LFuncDesc : PFuncDesc; + Loop, LParamLoop : integer; + LThisParam : TParameter; + LNameList : TBStrList; + LParamCount : integer; + +begin + for Loop := 0 to FTypeAttr.cFuncs-1 do + begin + LThisFunc := TFunction.Create; + + OleCheck(FTypeInfo.GetFuncDesc(Loop, LFuncDesc)); + try + LThisFunc.FMemberID := LFuncDesc.memid; + + case LFuncDesc.invkind of + INVOKE_FUNC : LThisFunc.FInvokeKind := ikFunction; + INVOKE_PROPERTYGET : LThisFunc.FInvokeKind := ikPropertyGetter; + INVOKE_PROPERTYPUT : LThisFunc.FInvokeKind := ikPropertysetter; + INVOKE_PROPERTYPUTREF : LThisFunc.FInvokeKind := ikPropertySetterRef; + end; + + // get the return type + LThisFunc.FReturnType.FType := LFuncDesc.elemdescFunc.tdesc.vt; + + OleCheck(FTypeInfo.GetNames(LThisFunc.FMemberID, @LNameList, + Length(LNameList), LParamCount)); + + // parameters + for LParamLoop := 0 to LFuncDesc.cParams-1 do + begin + LThisParam := TParameter.Create; + LThisParam.FName := LNameList[LParamLoop + 1]; + LThisParam.FType := LFuncDesc.lprgelemdescParam[LParamLoop].tdesc.vt; + LThisFunc.FParameters.Add(LThisParam); + end; + + OleCheck(FTypeInfo.GetDocumentation(LFuncDesc.memid, @LThisFunc.FName, + @LThisFunc.FDocString, nil, nil)); + finally + FTypeInfo.ReleaseFuncDesc(LFuncDesc); + end; + + FFuncList.Add(LThisFunc); + end; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TTypeInformation.FunctionCount : integer; +begin + Result := FFuncList.Count; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TTypeInformation.GetFunction(Index : integer) : TFunction; +begin + Result := FFuncList[Index] as TFunction; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TTypeInformation.FindFunction(AName: string; var ImplementingType : TTypeInformation): TFunction; +var + Loop : integer; +begin + Result := nil; + + // loop through these functions + for Loop := 0 to FunctionCount-1 do + begin + if GetFunction(Loop).Name = AName then + begin + Result := GetFunction(Loop); + ImplementingType := Self; + Exit; + end; + end; + + // now all implemented interfaces + for Loop := 0 to ImplementedInterfacesCount-1 do + begin + if ImplementedInterface(Loop).FindFunction(AName, ImplementingType) <> nil then + begin + Result := ImplementedInterface(Loop).FindFunction(AName, ImplementingType); + Exit; + end; + end; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TTypeInformation.VariableCount : integer; +begin + Result := FTypeAttr.cVars; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TTypeInformation.VariableName(Index : integer) : Widestring; +var + LVarDesc : PVarDesc; +begin + OleCheck(FTypeInfo.GetVarDesc(Index, LVarDesc)); + OleCheck(FTypeInfo.GetDocumentation(LVarDesc.memid, @Result, nil, nil, nil)); + FTypeInfo.ReleaseVarDesc(LVarDesc); +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TTypeInformation.GUID : TGUID; +begin + Result := FTypeAttr.guid; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TTypeInformation.ImplementedInterfacesCount: integer; +begin + Result := FTypeAttr.cImplTypes; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TTypeInformation.ImplementedInterface(Index : integer) : TImplementedTypeInformation; +begin + Result := FIntfList[Index] as TImplementedTypeInformation; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TTypeInformation.GetImplementedInterface(Index: integer): ITypeInfo; +var + LRefType : HRefType; +begin + OleCheck(FTypeInfo.GetRefTypeOfImplType(Index, LRefType)); + OleCheck(FTypeInfo.GetRefTypeInfo(LRefType, Result)); +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TTypeInformation.TypeKindString: string; +begin + case TypeKind of + tkEnum : Result := 'Enum'; + tkRecord : Result := 'Record'; + tkModule : Result := 'Module'; + tkInterface : Result := 'Interface'; + tkDispatch : Result := 'Dispatch'; + tkCoClass : Result := 'CoClass'; + tkAlias : Result := 'Alias'; + tkUnion : Result := 'Union'; + else + Result := 'Unknown'; + end; +end; + +//////////////////////////////////////////////////////////////////////////////// +// TTypeLibViewer class + +constructor TTypeLibViewer.Create(AFileName : WideString); +begin + inherited Create; + OleCheck(LoadTypeLib(PWideChar(AFileName), FTypeLib)); + FTypeList := TObjectList.Create; + Populate; +end; + +//////////////////////////////////////////////////////////////////////////////// + +destructor TTypeLibViewer.Destroy; +begin + FTypeList.Free; + FTypeLib := nil; + inherited; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TTypeLibViewer.Count : integer; +begin + Result := FTypeLib.GetTypeInfoCount; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TTypeLibViewer.TypeInfo(Index : integer) : ITypeInfo; +begin + OleCheck(FTypeLib.GetTypeInfo(Index, Result)); +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TTypeLibViewer.TypeInformation(Index : integer) : TTypeInformation; +begin + Result := FTypeList[Index] as TTypeInformation; +end; + +//////////////////////////////////////////////////////////////////////////////// + +procedure TTypeLibViewer.Populate; +var + Loop : integer; + LTypeInfo : TTypeInformation; +begin + for Loop := 0 to Count-1 do + begin + LTypeInfo := TTypeInformation.Create(TypeInfo(Loop)); + FTypeList.Add(LTypeInfo); + end; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TTypeLibViewer.FindGUID(AGUID: TGUID): TTypeInformation; +var + Loop : integer; +begin + Result := nil; + for Loop := 0 to Count-1 do + begin + if GUIDToString(TypeInformation(Loop).GUID) = GUIDToString(AGUID) then + begin + Result := TypeInformation(Loop); + Exit; + end; + end; +end; + +//////////////////////////////////////////////////////////////////////////////// +{ TFunction } + +constructor TFunction.Create; +begin + FReturnType := TParameter.Create; + FParameters := TObjectList.Create; +end; + +//////////////////////////////////////////////////////////////////////////////// + +destructor TFunction.Destroy; +begin + FParameters.Free; + FReturnType.Free; + inherited; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TFunction.InvokeKind: TInvokeKind; +begin + Result := FInvokeKind; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TFunction.MemberID: TMemberID; +begin + Result := FMemberID; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TFunction.Name: Widestring; +begin + Result := FName; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TFunction.Parameter(Index: integer): TParameter; +begin + Result := FParameters[Index] as TParameter; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TFunction.ParameterCount: integer; +begin + Result := FParameters.Count; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TFunction.ReturnType: TParameter; +begin + Result := FReturnType; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TFunction.DocString: Widestring; +begin + Result := FDocString; +end; + +//////////////////////////////////////////////////////////////////////////////// +{ TParameter } + +function TParameter.TypeAsString: string; +var t:integer; +stype : string; +begin + + stype := ''; + if (ParamType and vt_vector) <> 0 then stype := stype + ' Vector'; + if (ParamType and vt_array) <> 0 then stype := stype + ' Array'; + if (ParamType and vt_byref) <> 0 then stype := stype + ' ByRef'; + stype := trim(stype); + + + t := ParamType and VT_TYPEMASK; + case t of + vt_empty : Result := 'Empty'; + vt_null : Result := 'Null'; vt_i2 : Result := 'Smallint'; vt_i4 : Result := 'Integer'; vt_r4 : Result := 'Single'; vt_r8 : Result := 'Double'; vt_cy : Result := 'Currency'; vt_date : Result := 'Date'; vt_bstr : Result := 'OleStr'; vt_dispatch : Result := 'Dispatch'; vt_error : Result := 'Error'; vt_bool : Result := 'Boolean'; vt_variant : Result := 'Variant'; vt_unknown : Result := 'Unknown'; vt_decimal : Result := 'Decimal'; vt_i1 : Result := 'ShortInt'; vt_ui1 : Result := 'Byte'; vt_ui2 : Result := 'Word'; vt_ui4 : Result := 'LongWord'; vt_i8 : Result := 'Int64'; vt_int : Result := 'Int'; vt_uint : Result := 'UInt'; vt_void : Result := 'Void'; vt_hresult : Result := 'HResult'; vt_ptr : Result := 'Pointer'; vt_safearray : Result := 'SafeArray'; vt_carray : Result := 'CArray'; vt_userdefined : Result := 'UserDefined'; vt_lpstr : Result := 'LPStr'; vt_lpwstr : Result := 'LPWStr'; vt_int_ptr : Result := 'IntPtr'; vt_uint_ptr : Result := 'UIntPtr'; vt_filetime : Result := 'FileTime'; vt_blob : Result := 'Blob'; vt_stream : Result := 'Stream'; vt_storage : Result := 'Storage'; vt_streamed_object : Result := 'StreamedObject'; vt_blob_object : Result := 'BlobObject'; vt_cf : Result := 'CF'; vt_clsid : Result := 'CLSID'; else + Result := 'Unknown (' + IntToStr(ParamType) + ')'; + end; + + Result := trim(stype + ' ' + Result); +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TParameter.ParamType: TVarType; +begin + Result := FType; +end; + +//////////////////////////////////////////////////////////////////////////////// + +function TParameter.Name: string; +begin + Result := FName; +end; + +end. diff --git a/libsrc/ActiveXServer/icon/icon.ico b/libsrc/ActiveXServer/icon/icon.ico new file mode 100644 index 0000000..6dca40a Binary files /dev/null and b/libsrc/ActiveXServer/icon/icon.ico differ diff --git a/libsrc/ActiveXServer/icon/icon.svg b/libsrc/ActiveXServer/icon/icon.svg new file mode 100644 index 0000000..06aef65 --- /dev/null +++ b/libsrc/ActiveXServer/icon/icon.svg @@ -0,0 +1,148 @@ + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + AX + AX + server + server + + diff --git a/libsrc/ActiveXServer/icon/icon128.png b/libsrc/ActiveXServer/icon/icon128.png new file mode 100644 index 0000000..664479d Binary files /dev/null and b/libsrc/ActiveXServer/icon/icon128.png differ diff --git a/libsrc/ActiveXServer/icon/icon16.png b/libsrc/ActiveXServer/icon/icon16.png new file mode 100644 index 0000000..5d48285 Binary files /dev/null and b/libsrc/ActiveXServer/icon/icon16.png differ diff --git a/libsrc/ActiveXServer/icon/icon256.png b/libsrc/ActiveXServer/icon/icon256.png new file mode 100644 index 0000000..7b0e306 Binary files /dev/null and b/libsrc/ActiveXServer/icon/icon256.png differ diff --git a/libsrc/ActiveXServer/icon/icon32.png b/libsrc/ActiveXServer/icon/icon32.png new file mode 100644 index 0000000..bd38ea0 Binary files /dev/null and b/libsrc/ActiveXServer/icon/icon32.png differ diff --git a/libsrc/ActiveXServer/icon/icon48.png b/libsrc/ActiveXServer/icon/icon48.png new file mode 100644 index 0000000..cbef9af Binary files /dev/null and b/libsrc/ActiveXServer/icon/icon48.png differ diff --git a/libsrc/ActiveXServer/icon/icon64.png b/libsrc/ActiveXServer/icon/icon64.png new file mode 100644 index 0000000..e1f2656 Binary files /dev/null and b/libsrc/ActiveXServer/icon/icon64.png differ diff --git a/libsrc/ActiveXServer/uMain.dfm b/libsrc/ActiveXServer/uMain.dfm new file mode 100644 index 0000000..575e264 --- /dev/null +++ b/libsrc/ActiveXServer/uMain.dfm @@ -0,0 +1,25 @@ +object frmMain: TfrmMain + Left = 0 + Top = 0 + BorderStyle = bsNone + Caption = 'frmMain' + ClientHeight = 1 + ClientWidth = 1 + Color = clBtnFace + TransparentColor = True + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'Tahoma' + Font.Style = [] + OldCreateOrder = False + OnActivate = FormActivate + OnDestroy = FormDestroy + PixelsPerInch = 96 + TextHeight = 13 + object tmrWatchDog: TTimer + Enabled = False + Interval = 2000 + OnTimer = tmrWatchDogTimer + end +end diff --git a/libsrc/ActiveXServer/uMain.pas b/libsrc/ActiveXServer/uMain.pas new file mode 100644 index 0000000..290af37 --- /dev/null +++ b/libsrc/ActiveXServer/uMain.pas @@ -0,0 +1,744 @@ +unit uMain; + +interface + +uses + Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, + Dialogs,ActiveXHost, ExtCtrls, TypeLibViewer,Registry, RegAxCtrlList; + +type + TfrmMain = class(TForm) + tmrWatchDog: TTimer; + procedure FormActivate(Sender: TObject); + procedure FormDestroy(Sender: TObject); + procedure StartThread(); + procedure tmrWatchDogTimer(Sender: TObject); + private + { Private declarations } + public + { Public declarations } + end; + + THostInstance = record + host:TActiveXHost; + guid : widestring; + panel:TPanel; + hwnd:HWND; + docString:WideString; + active:Boolean; + progId:widestring; + classId:widestring; + end; + + TPipeThread = class(TThread) + protected + pipe:cardinal; + newguid:WideString; + newhwnd:HWND; + nwidth:integer; + nheight:integer; + cid:integer; + propName:WideString; + newfilename :WideString; + methodName:WideString; + propValStr:WideString; + hosts : Array of THostInstance; + + procedure Execute; override; + procedure GetMethodParams; + function ReadUI8():byte; + function ReadUI16():word; + function ReadSI16():SmallInt; + function ReadUI32():cardinal; + function ReadSI32():integer; + function ReadSI64():Int64; + function ReadString():WideString; + procedure WriteUI8(val:byte); + procedure WriteUI16(val:word); + procedure WriteUI32(val:cardinal); + procedure WriteString(val:string); + procedure WriteParameter(val:TParameter); + procedure WriteStrings(val:TStrings); + procedure CheckCid(); + + procedure ResizeControl(); + procedure CreateControl(); + procedure DestroyControl(); + procedure DestroyAll(); + procedure SetProperty(); + procedure SetParentWnd(); + procedure GetMethods; + procedure GetEvents; + procedure GetProperties; + procedure CallMethod; + procedure CancelWatchDog; + procedure InitWatchDog; + end; + TBuf = array[0..255] of byte; + + + +var + frmMain: TfrmMain; + t: TPipeThread; +implementation + +{$R *.dfm} + + + +procedure TPipeThread.CancelWatchDog; +begin + frmMain.tmrWatchDog.Enabled := False; +end; + +procedure TPipeThread.InitWatchDog; +begin + frmMain.tmrWatchDog.Enabled := False; + frmMain.tmrWatchDog.Enabled := True; +end; + + +procedure ReadPipe(pipe: cardinal; var buffer: TBuf; bytesToRead: cardinal); +var + numBytesRead: DWORD; + readResult: longbool; +begin + numBytesRead := 0; + readResult := ReadFile(pipe, buffer, bytesToRead, numBytesRead, nil); + if (not readResult) or (numBytesRead <> bytesToRead) then + begin + t.Terminate; + Application.Terminate; + end; +end; + +procedure WritePipe(pipe: cardinal; var buffer: TBuf; bytesToWrite: cardinal); +var + written: cardinal; + writeResult: longbool; +begin + written := 0; + writeResult := WriteFile(pipe, buffer, bytesToWrite, written, nil); + if (not writeResult) or (written <> bytesToWrite) then + begin + t.Terminate; + Application.Terminate; + end; +end; + + +function TPipeThread.ReadString():WideString; +var buf:TBuf; +var len:integer; +var us:UTF8String; +begin + ReadPipe(self.pipe,buf,1); + len:=buf[0]; + ReadPipe(pipe,buf,len); + SetLength(us,len); + CopyMemory(@us[1], @buf[0], len); + Result:=UTF8Decode(us); +end; + +function TPipeThread.ReadUI8():byte; +var buf:TBuf; +begin + ReadPipe(self.pipe,buf,1); + Result:=buf[0]; +end; + +function TPipeThread.ReadUI16():word; +var buf:TBuf; +begin + ReadPipe(self.pipe,buf,2); + Result:=(buf[0] shl 8) + buf[1]; +end; + +function TPipeThread.ReadSI16(): SmallInt; +begin + Result:=ReadUI16(); +end; + +function TPipeThread.ReadUI32():cardinal; +var buf:TBuf; +begin + ReadPipe(pipe,buf,4); + Result:=(buf[0] shl 24)+(buf[1] shl 16)+(buf[2] shl 8) + buf[3]; +end; + +function TPipeThread.ReadSI32():integer; +begin + Result:=ReadUI32(); +end; + +function TPipeThread.ReadSI64():Int64; +begin + Result := (ReadUI32() shl 32) + ReadUI32(); +end; + + + +procedure TPipeThread.WriteUI8(val:byte); +var buf:TBuf; +begin + buf[0] := val; + WritePipe(self.pipe,buf,1); +end; + +procedure TPipeThread.WriteUI16(val:word); +var buf:TBuf; +begin + buf[0] := (val shr 8) mod 256; + buf[1] := val mod 256; + WritePipe(self.pipe,buf,2); +end; + +procedure TPipeThread.WriteUI32(val:cardinal); +var buf:TBuf; +begin + buf[0] := (val shr 24) mod 256; + buf[1] := (val shr 16) mod 256; + buf[2] := (val shr 8) mod 256; + buf[3] := val mod 256; + WritePipe(self.pipe,buf,4); +end; + + +procedure TPipeThread.WriteString(val: string); + var a:TBuf; + len:integer; + s: UTF8String; +begin + s := UTF8Encode(val); + len := Length(s); + CopyMemory(@a[0], @s[1], len); + WriteUI8(len); + WritePipe(self.pipe,a,len); +end; + +procedure TPipeThread.WriteStrings(val: TStrings); +var i:integer; +begin + writeUI16(val.Count); + for i := 0 to val.Count - 1 do + begin + WriteString(val[i]); + end; +end; + +procedure TfrmMain.StartThread(); +begin + t := TPipeThread.Create(True); + t.Resume; +end; + + +procedure TfrmMain.tmrWatchDogTimer(Sender: TObject); +begin + if not tmrWatchDog.Enabled then exit; + if t<>nil then + begin + try + CloseHandle(t.pipe); + except + + end; + try + t.Terminate; + except + + end; + Application.Terminate; + end; + tmrWatchDog.Enabled := false; +end; + +procedure TfrmMain.FormActivate(Sender: TObject); +begin + ShowWindow(frmMain.Handle, SW_HIDE); +end; + +procedure TPipeThread.CreateControl(); +var val:integer; + FRegistry:TRegistry; + ok:boolean; +begin + val := Length(hosts); + SetLength(hosts,val+1); + hosts[val].panel := TPanel.Create(frmMain); + hosts[val].panel.BevelOuter := bvNone; + hosts[val].panel.Parent:=frmMain; + hosts[val].panel.Left:=0; + hosts[val].panel.Top:=0; + hosts[val].classId := self.newguid; + ok:=false; + try + + if newfilename='' then + begin + hosts[val].host := TActiveXHost.CreateActiveX(hosts[val].panel, StringToGuid(self.newguid)); + hosts[val].guid := self.newguid; + ok := true; + end + else + begin + hosts[val].host := TActiveXHost.CreateActiveX(hosts[val].panel, newfilename, StringToGuid(self.newguid)); + hosts[val].guid := GUIDToString(hosts[val].host.ClassID); + ok := true; + end; + except + on e:Exception do + begin + WriteString('Error'); + WriteString(e.Message); + end; + end; + if ok then + begin + WriteString('Boolean'); + WriteString('True'); + hosts[val].docString := hosts[val].host.DocString; + + hosts[val].host.Parent := hosts[val].panel; + hosts[val].host.Left := 0; + hosts[val].host.Top := 0; + hosts[val].host.Width := 500; + hosts[val].host.Height := 500; + hosts[val].active := True; + WriteUI32(val); + + FRegistry := TRegistry.Create(KEY_READ); + FRegistry.RootKey := HKEY_CLASSES_ROOT; + hosts[val].progId := ''; + if FRegistry.OpenKey('\CLSID\' + self.newguid + '\ProgID', False) then + begin + hosts[val].progId := FRegistry.ReadString(''); + end; + WriteString(hosts[val].guid); + WriteString(hosts[val].progId); + WriteString(hosts[val].docString); + end + else + begin + FreeAndNil(hosts[val].panel); + SetLength(hosts,val); + end; + +end; + +procedure TPipeThread.SetParentWnd; +begin + hosts[cid].hwnd := newhwnd; + Windows.SetParent(hosts[cid].panel.Handle,hosts[cid].hwnd); +end; + + +procedure TPipeThread.DestroyControl; +begin + FreeAndNil(hosts[cid].host); + FreeAndNil(hosts[cid].panel); + hosts[cid].active := False; +end; + +procedure TPipeThread.ResizeControl; +begin + hosts[cid].panel.Top:=0; + hosts[cid].panel.Left:=0; + hosts[cid].panel.Width:=nwidth; + hosts[cid].panel.Height:=nheight; + hosts[cid].host.Width := nwidth; + hosts[cid].host.Height := nheight; +end; + +procedure TPipeThread.DestroyAll; +var i:integer; +begin + for i := 0 to length(hosts)-1 do + begin + if hosts[i].active then + begin + FreeAndNil(hosts[i].host); + FreeAndNil(hosts[i].panel); + hosts[i].active := False; + end; + end; +end; + + + +procedure TPipeThread.SetProperty; +begin + if hosts[cid].host.Properties.IndexOf(propName)=-1 then + begin + WriteString('Error'); + WriteString('Property does not exist'); + end + else + begin + try + hosts[cid].host.PropertyValue[propName] := propValStr; + WriteString('Boolean'); + WriteString('True'); + except + on e:Exception do + begin + WriteString('Error'); + WriteString(e.Message); + end; + end; + end; +end; + + + +procedure TPipeThread.WriteParameter(val:TParameter); +begin + WriteString(val.Name); + WriteString(val.TypeAsString); +end; + +procedure TPipeThread.GetMethodParams; +var f:TFunction; +i:integer; +begin + f:=hosts[cid].host.FindFunction(methodName); + if f = nil then + begin + WriteString('Error'); + WriteString('Method not found'); + end + else + begin + WriteString('Boolean'); + WriteString('True'); + end; + WriteString(f.Name); + WriteParameter(f.ReturnType); + WriteUI16(f.ParameterCount); + for i:=0 to f.ParameterCount-1 do + begin + writeParameter(f.Parameter(i)); + end; + WriteString(f.DocString); +end; + +procedure TPipeThread.GetMethods; +begin + WriteStrings(hosts[cid].host.Methods); +end; + +procedure TPipeThread.GetEvents; +begin + WriteStrings(hosts[cid].host.Events); +end; + +procedure TPipeThread.GetProperties; +begin + WriteStrings(hosts[cid].host.Properties); +end; + +procedure TPipeThread.CheckCid; +var r:Boolean; +begin + if cid<0 then + begin + WriteString('Error'); + WriteString('Component id must not be negative'); + r:=False; + end + else if cid>=length(hosts) then + begin + WriteString('Error'); + WriteString('Component id is not yet defined'); + r:=False; + end + else if not hosts[cid].active then + begin + WriteString('Error'); + WriteString('Component already destroyed'); + r:=False; + end + else + begin + WriteString('Boolean'); + WriteString('True'); + r:=True; + end; + if not r then + begin + cid:=-1; + end; +end; + + + +procedure TPipeThread.CallMethod; +var a:array of OleVariant; +i:integer; +cnt:integer; +name:WideString; +ret:OleVariant; +begin + name:=ReadString(); + cnt:=ReadUI16(); + SetLength(a,cnt); + for i := 0 to cnt - 1 do + begin + a[i] := ReadString(); + end; + + try + ret:=hosts[cid].host.InvokeMethod(name,a); + writeString(VarTypeAsText(VarType(ret))); + writeString(ret); + except + on e:Exception do + begin + writeString('Error'); + writeString(e.Message); + end; + end; + +end; + +procedure TPipeThread.Execute(); +var + pipename: PAnsiChar; + cmd: integer; + propVal : OleVariant; + propTypeStr:string; + i: Integer; + LTypeLibVwr : TTypeLibViewer; + ok : boolean; + regList:TRegAxCtrlList; +const + CMD_ECHO = 0; + CMD_NEW = 1; + CMD_DESTROY = 2; + CMD_DESTROYALL = 3; + CMD_LIST_PROPERTIES = 4; + CMD_LIST_METHODS = 5; + CMD_LIST_EVENTS = 6; + CMD_RESIZE = 7; + CMD_GET_PROPERTY = 8; + CMD_SET_PROPERTY = 9; + CMD_SET_PARENT = 10; + CMD_CALL_METHOD = 11; + CMD_GET_METHOD_PARAMS = 12; + CMD_GET_OCX_CLASSES = 13; + CMD_GET_REGISTERED_CLASSES = 14; + +begin + + try + pipename := PAnsiChar('\\.\\pipe\activex_server_' + ParamStr(1)); + begin + pipe := CreateFile(pipename, GENERIC_READ or GENERIC_WRITE, + FILE_SHARE_READ or FILE_SHARE_WRITE, nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0); + + repeat + Synchronize(InitWatchDog); + cmd := ReadUI8(); + if self.Terminated then + begin + Exit; + end; + Synchronize(CancelWatchDog); + case cmd of + CMD_GET_REGISTERED_CLASSES: + begin + regList := TRegAxCtrlList.Create; + WriteUI16(regList.ClassIDs.Count); + for i := 0 to regList.ClassIDs.Count -1 do + begin + WriteString(regList.ProgIDs[i]); + WriteString(regList.Descriptions[i]); + WriteString(regList.ClassIDs[i]); + WriteString(regList.FileNames[i]); + end; + FreeAndNil(regList); + end; + CMD_GET_OCX_CLASSES: + begin + LTypeLibVwr := nil; + ok:=false; + try + LTypeLibVwr := TTypeLibViewer.Create(ReadString()); + ok := true; + except + on e:Exception do + begin + WriteString('Error'); + WriteString(e.Message); + end; + end; + if ok then + begin + WriteString('Boolean'); + WriteString('True'); + WriteUI16(LTypeLibVwr.Count); + for i := 0 to LTypeLibVwr.Count-1 do + begin + WriteString(LTypeLibVwr.TypeInformation(i).Name); + WriteString(LTypeLibVwr.TypeInformation(i).DocString); + WriteString(WideString(GUIDToString(LTypeLibVwr.TypeInformation(i).GUID))); + end; + LTypeLibVwr.Free; + end; + end; + CMD_GET_METHOD_PARAMS: + begin + cid := ReadUI32(); + Synchronize(CheckCid); + if cid<>-1 then + begin + methodName := ReadString(); + Synchronize(GetMethodParams); + end; + end; + CMD_ECHO: + begin + WriteString('OK'); + end; + CMD_NEW: + begin + newfilename := ReadString(); + newguid := ReadString(); + Synchronize(CreateControl); + end; + CMD_DESTROY: + begin + cid := ReadUI32(); + Synchronize(CheckCid); + if cid<>-1 then + begin + Synchronize(DestroyControl); + end; + end; + + CMD_DESTROYALL: + begin + Synchronize(DestroyAll); + break; + end; + + CMD_LIST_PROPERTIES: + begin + cid := ReadUI32(); + Synchronize(CheckCid); + if cid<>-1 then + begin + Synchronize(GetProperties); + end; + + end; + + CMD_LIST_METHODS: + begin + cid := ReadUI32(); + Synchronize(CheckCid); + if cid<>-1 then + begin + Synchronize(GetMethods); + end; + end; + + CMD_LIST_EVENTS: + begin + cid := ReadUI32(); + Synchronize(CheckCid); + if cid<>-1 then + begin + Synchronize(GetEvents); + end; + end; + + CMD_RESIZE: + begin + cid := ReadUI32(); + Synchronize(CheckCid); + if cid<>-1 then + begin + nwidth := ReadUI16(); + nheight := ReadUI16(); + Synchronize(ResizeControl); + end; + end; + CMD_GET_PROPERTY: + begin + cid := ReadUI32(); + Synchronize(CheckCid); + if cid<>-1 then + begin + propName := ReadString(); + if hosts[cid].host.Properties.IndexOf(propName)=-1 then + begin + WriteString('Error'); + WriteString('Property does not exist'); + end + else + begin + propVal := hosts[cid].host.PropertyValue[propName]; + propTypeStr := VarTypeAsText(VarType(propVal)); + if VarType(propVal) = varDispatch then + propValStr := '-' + else if VarType(propVal) = varUnknown then + propValStr := '-' + else + propValStr := VarToWideStr(propVal); + WriteString(propTypeStr); + WriteString(propValStr); + end; + end; + end; + CMD_SET_PROPERTY: + begin + cid := ReadUI32(); + Synchronize(CheckCid); + if cid<>-1 then + begin + propName := ReadString(); + propValStr := ReadString(); + Synchronize(SetProperty); + end; + end; + CMD_SET_PARENT: + begin + cid := ReadUI32(); + Synchronize(CheckCid); + if cid<>-1 then + begin + newhwnd := ReadUI32(); + Synchronize(SetParentWnd); + end; + end; + CMD_CALL_METHOD: + begin + cid := ReadUI32(); + Synchronize(CheckCid); + if cid<>-1 then + begin + Synchronize(CallMethod); + end; + end; + end; + until False; + + CloseHandle(pipe); + end; + except + on E: Exception do + begin + + end; + end; +end; + + +procedure TfrmMain.FormDestroy(Sender: TObject); +begin + t.Free; +end; + +end. diff --git a/manifest.mf b/manifest.mf new file mode 100644 index 0000000..328e8e5 --- /dev/null +++ b/manifest.mf @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +X-COMMENT: Main-Class will be added automatically by build + diff --git a/nbproject/build-impl.xml b/nbproject/build-impl.xml new file mode 100644 index 0000000..f3cc8bf --- /dev/null +++ b/nbproject/build-impl.xml @@ -0,0 +1,1413 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must set src.dir + Must set test.src.dir + Must set build.dir + Must set dist.dir + Must set build.classes.dir + Must set dist.javadoc.dir + Must set build.test.classes.dir + Must set build.test.results.dir + Must set build.classes.excludes + Must set dist.jar + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must set javac.includes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + No tests executed. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must set JVM to use for profiling in profiler.info.jvm + Must set profiler agent JVM arguments in profiler.info.jvmargs.agent + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select some files in the IDE or set javac.includes + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + To run this application from the command line without Ant, try: + + java -jar "${dist.jar.resolved}" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select one file in the IDE or set run.class + + + + Must select one file in the IDE or set run.class + + + + + + + + + + + + + + + + + + + + + + + Must select one file in the IDE or set debug.class + + + + + Must select one file in the IDE or set debug.class + + + + + Must set fix.includes + + + + + + + + + + This target only works when run from inside the NetBeans IDE. + + + + + + + + + Must select one file in the IDE or set profile.class + This target only works when run from inside the NetBeans IDE. + + + + + + + + + This target only works when run from inside the NetBeans IDE. + + + + + + + + + + + + + This target only works when run from inside the NetBeans IDE. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select one file in the IDE or set run.class + + + + + + Must select some files in the IDE or set test.includes + + + + + Must select one file in the IDE or set run.class + + + + + Must select one file in the IDE or set applet.url + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Must select some files in the IDE or set javac.includes + + + + + + + + + + + + + + + + + + + + Some tests failed; see details above. + + + + + + + + + Must select some files in the IDE or set test.includes + + + + Some tests failed; see details above. + + + + Must select some files in the IDE or set test.class + Must select some method in the IDE or set test.method + + + + Some tests failed; see details above. + + + + + Must select one file in the IDE or set test.class + + + + Must select one file in the IDE or set test.class + Must select some method in the IDE or set test.method + + + + + + + + + + + + + + Must select one file in the IDE or set applet.url + + + + + + + + + Must select one file in the IDE or set applet.url + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/nbproject/genfiles.properties b/nbproject/genfiles.properties new file mode 100644 index 0000000..80dc5b6 --- /dev/null +++ b/nbproject/genfiles.properties @@ -0,0 +1,8 @@ +build.xml.data.CRC32=c456b76f +build.xml.script.CRC32=0d1f9561 +build.xml.stylesheet.CRC32=8064a381@1.74.2.48 +# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. +# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. +nbproject/build-impl.xml.data.CRC32=c456b76f +nbproject/build-impl.xml.script.CRC32=6200f9a6 +nbproject/build-impl.xml.stylesheet.CRC32=876e7a8f@1.74.2.48 diff --git a/nbproject/project.properties b/nbproject/project.properties new file mode 100644 index 0000000..7ec0ad2 --- /dev/null +++ b/nbproject/project.properties @@ -0,0 +1,77 @@ +annotation.processing.enabled=true +annotation.processing.enabled.in.editor=false +annotation.processing.processors.list= +annotation.processing.run.all.processors=true +annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output +application.title=JavactiveX +application.vendor=Jindra +build.classes.dir=${build.dir}/classes +build.classes.excludes=**/*.java,**/*.form +# This directory is removed when the project is cleaned: +build.dir=build +build.generated.dir=${build.dir}/generated +build.generated.sources.dir=${build.dir}/generated-sources +# Only compile against the classpath explicitly listed here: +build.sysclasspath=ignore +build.test.classes.dir=${build.dir}/test/classes +build.test.results.dir=${build.dir}/test/results +# Uncomment to specify the preferred debugger connection transport: +#debug.transport=dt_socket +debug.classpath=\ + ${run.classpath} +debug.test.classpath=\ + ${run.test.classpath} +# Files in build.classes.dir which should be excluded from distribution jar +dist.archive.excludes= +# This directory is removed when the project is cleaned: +dist.dir=dist +dist.jar=${dist.dir}/JavactiveX.jar +dist.javadoc.dir=${dist.dir}/javadoc +endorsed.classpath= +excludes= +file.reference.jna-3.5.1.jar=lib/jna-3.5.1.jar +includes=** +jar.compress=false +javac.classpath=\ + ${file.reference.jna-3.5.1.jar} +# Space-separated list of extra javac options +javac.compilerargs= +javac.deprecation=false +javac.processorpath=\ + ${javac.classpath} +javac.source=1.7 +javac.target=1.7 +javac.test.classpath=\ + ${javac.classpath}:\ + ${build.classes.dir} +javac.test.processorpath=\ + ${javac.test.classpath} +javadoc.additionalparam= +javadoc.author=false +javadoc.encoding=${source.encoding} +javadoc.noindex=false +javadoc.nonavbar=false +javadoc.notree=false +javadoc.private=false +javadoc.splitindex=true +javadoc.use=true +javadoc.version=false +javadoc.windowtitle= +main.class=com.jpexs.javactivex.example.ActiveXExample +manifest.file=manifest.mf +meta.inf.dir=${src.dir}/META-INF +mkdist.disabled=false +platform.active=default_platform +run.classpath=\ + ${javac.classpath}:\ + ${build.classes.dir} +# Space-separated list of JVM arguments used when running the project. +# You may also define separate properties like run-sys-prop.name=value instead of -Dname=value. +# To set system properties for unit tests define test-sys-prop.name=value: +run.jvmargs= +run.test.classpath=\ + ${javac.test.classpath}:\ + ${build.test.classes.dir} +source.encoding=UTF-8 +src.dir=src +test.src.dir=test diff --git a/nbproject/project.xml b/nbproject/project.xml new file mode 100644 index 0000000..72ba02c --- /dev/null +++ b/nbproject/project.xml @@ -0,0 +1,15 @@ + + + org.netbeans.modules.java.j2seproject + + + JavactiveX + + + + + + + + + diff --git a/src/com/jpexs/javactivex/ActiveXClassInfo.java b/src/com/jpexs/javactivex/ActiveXClassInfo.java new file mode 100644 index 0000000..171f5bd --- /dev/null +++ b/src/com/jpexs/javactivex/ActiveXClassInfo.java @@ -0,0 +1,67 @@ +package com.jpexs.javactivex; + +import java.io.File; + +/** + * ActiveX class information + * + * @author JPEXS + */ +public class ActiveXClassInfo { + + /** + * Class Id (GUID) + */ + public String guid; + /** + * Documentation + */ + public String docString; + /** + * Class name + */ + public String name; + /** + * File containing this class + */ + public File file; + + public ActiveXClassInfo(String name, String docString, String guid, File file) { + this.guid = guid; + this.docString = docString; + this.name = name; + this.file = file; + } + + @Override + public String toString() { + return "[Class Name=\"" + name + "\" GUID=\"" + guid + "\" DocString=\"" + docString + "\" File=\"" + file.getAbsolutePath() + "\"]"; + } + + /** + * Creates ActiveX control instance + * + * @return + */ + public ActiveXControl createControl() { + return new ActiveXControl(file, guid); + } + + /** + * Generates Java definition file + * + * @return + */ + public String getJavaDefinition() { + return ActiveXControl.generateJavaDefinition(guid); + } + + /** + * Generates suitable java class name + * + * @return + */ + public String getJavaClassName() { + return ActiveXControl.progIdToJavaClassName(name); + } +} diff --git a/src/com/jpexs/javactivex/ActiveXControl.java b/src/com/jpexs/javactivex/ActiveXControl.java new file mode 100644 index 0000000..2a1d3ff --- /dev/null +++ b/src/com/jpexs/javactivex/ActiveXControl.java @@ -0,0 +1,962 @@ +package com.jpexs.javactivex; + +import com.jpexs.javactivex.jna.Kernel32; +import com.jpexs.javactivex.jna.SHELLEXECUTEINFO; +import com.jpexs.javactivex.jna.Shell32; +import com.jpexs.javactivex.jna.WinNT; +import com.jpexs.javactivex.jna.WinUser; +import com.sun.jna.Native; +import com.sun.jna.Platform; +import com.sun.jna.WString; +import com.sun.jna.ptr.IntByReference; +import java.awt.Color; +import java.awt.Panel; +import java.awt.event.ComponentEvent; +import java.awt.event.ComponentListener; +import java.io.File; +import java.io.UnsupportedEncodingException; +import java.math.BigDecimal; +import java.math.BigInteger; +import java.net.URLDecoder; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Timer; +import java.util.TimerTask; + +/** + * ActiveX control Component + * + * @author JPEXS + */ +public class ActiveXControl extends Panel { + + private static WinNT.HANDLE pipe; + private static WinNT.HANDLE process; + private static final int CMD_ECHO = 0; + private static final int CMD_NEW = 1; + private static final int CMD_DESTROY = 2; + private static final int CMD_DESTROYALL = 3; + private static final int CMD_LIST_PROPERTIES = 4; + private static final int CMD_LIST_METHODS = 5; + private static final int CMD_LIST_EVENTS = 6; + private static final int CMD_RESIZE = 7; + private static final int CMD_GET_PROPERTY = 8; + private static final int CMD_SET_PROPERTY = 9; + private static final int CMD_SET_PARENT = 10; + private static final int CMD_CALL_METHOD = 11; + private static final int CMD_GET_METHOD_PARAMS = 12; + private static final int CMD_GET_OCX_CLASSES = 13; + private static final int CMD_GET_REGISTERED_CLASSES = 14; + + private int hwnd; + private String guid; + private String docString; + private long cid = -1; + private String progId; + private boolean shown = false; + + private static final int ECHO_INTERVAL = 100; + + private final static Map, Class> boxedMap = new HashMap<>(); + private static Timer syncTimer = new Timer(); + + static { + + if (!Platform.isWindows()) { + throw new UnsupportedOperationException("Active X is available on Windows only."); + } + + boxedMap.put(boolean.class, Boolean.class); + boxedMap.put(byte.class, Byte.class); + boxedMap.put(short.class, Short.class); + boxedMap.put(char.class, Character.class); + boxedMap.put(int.class, Integer.class); + boxedMap.put(long.class, Long.class); + boxedMap.put(float.class, Float.class); + boxedMap.put(double.class, Double.class); + + String path = ""; + try { + path = URLDecoder.decode(ActiveXControl.class.getProtectionDomain().getCodeSource().getLocation().getPath(), "UTF-8"); + } catch (UnsupportedEncodingException ex) { + throw new Error(ex); + } + String appDir = new File(path).getParentFile().getAbsolutePath(); + if (!appDir.endsWith("\\")) { + appDir += "\\"; + } + String exePath = appDir + "lib\\ActiveXServer.exe"; + + String instName = "" + System.currentTimeMillis(); + + String pipeName = "\\\\.\\pipe\\activex_server_" + instName; + pipe = Kernel32.INSTANCE.CreateNamedPipe(pipeName, Kernel32.PIPE_ACCESS_DUPLEX, Kernel32.PIPE_TYPE_BYTE, 1, 4096, 4096, 0, null); + + SHELLEXECUTEINFO sei = new SHELLEXECUTEINFO(); + sei.fMask = 0x00000040; + sei.lpFile = new WString(exePath); + sei.lpParameters = new WString(instName); + sei.nShow = WinUser.SW_NORMAL; + Shell32.INSTANCE.ShellExecuteEx(sei); + process = sei.hProcess; + + Kernel32.INSTANCE.ConnectNamedPipe(pipe, null); + + syncTimer.schedule(new TimerTask() { + + @Override + public void run() { + try { + echo(); + } catch (Exception ex) { + if (syncTimer != null) { + syncTimer.cancel(); + syncTimer = null; + } + } + } + }, ECHO_INTERVAL, ECHO_INTERVAL); + + Runtime.getRuntime().addShutdownHook(new Thread() { + + @Override + public void run() { + writeCommand(CMD_DESTROYALL); + Kernel32.INSTANCE.CloseHandle(pipe); + Kernel32.INSTANCE.TerminateProcess(process, 0); + } + + }); + } + + private static void echo() { + synchronized (ActiveXControl.class) { + writeCommand(CMD_ECHO); + String ok = readString(); + if (!ok.equals("OK")) { + throw new ActiveXException("Sync failed - result:" + ok); + } + } + } + + private static Class strToClass(String type) { + switch (type) { + case "Empty": + return null; + case "Null": + return null; + case "Smallint": + return int.class; + case "Integer": + return int.class; + case "Single": + return float.class; + case "Double": + return double.class; + case "Currency": + return BigDecimal.class; + case "Date": + return null; + case "OleStr": + return String.class; + case "Dispatch": + return null; //Unsupported + case "Error": + return null; //Unsupported + case "Boolean": + return boolean.class; + case "Variant": + return String.class; //?? + case "Unknown": + return null; //Unsupported + case "Decimal": + return BigDecimal.class; + case "$0F": + return null; + case "ShortInt": + return short.class; + case "Byte": + return Integer.class; + case "Word": + return Integer.class; + case "LongWord": + return long.class; + case "Int64": + return BigInteger.class; + //dalsi + case "Int": + return int.class; + case "UInt": + return int.class; + case "Void": + return void.class; + case "HResult": + return null; //Unsupported + case "Pointer": + return null; //Unsupported + case "SafeArray": + return null; //Unsupported + case "CArray": + return null; //Unsupported + case "UserDefined": + return null; //Unsupported + case "LPStr": + return String.class; + case "LPWStr": + return String.class; + case "IntPtr": + case "UIntPtr": + case "FileTime": + case "Blob": + case "Stream": + case "Storage": + case "StreamedObject": + case "BlobObject": + case "CF": + case "CLSID": + return null; //Unsupported + + default: + return null; + } + } + + private static Object strToValue(String type, String value) { + switch (type) { + case "Empty": + return null; + case "Null": + return null; + case "Smallint": + return Integer.parseInt(value); + case "Integer": + return Integer.parseInt(value); + case "Single": + return Float.parseFloat(value); + case "Double": + return Double.parseDouble(value); + case "Currency": + return new BigDecimal(value); + case "Date": + return null; //TODO + case "OleStr": + return value; + case "Dispatch": + return null; //Unsupported + case "Error": + return null; //Unsupported + case "Boolean": + return (Boolean) value.equals("True"); + case "Variant": + return value; //? + case "Unknown": + return null; //Unsupported + case "Decimal": + return new BigDecimal(value); + case "$0F": + return null; + case "ShortInt": + return Short.parseShort(value); + case "Byte": + return Integer.parseInt(value); + case "Word": + return Integer.parseInt(value); + case "LongWord": + return Long.parseLong(value); + case "Int64": + return new BigInteger(value); + default: + return null; + } + } + + /** + * Gets type of property + * + * @param name Property name + * @return Type class + */ + public Class getPropertyType(String name) { + synchronized (ActiveXControl.class) { + writeComponentCommand(CMD_GET_PROPERTY); + writeString(name); + String type = readString(); + String val = readString(); + if ("Error".equals(type)) { + throw new ActiveXException(val); + } + return strToClass(type); + } + } + + /** + * Check for method existence + * + * @param name Method name + * @return True when exists + */ + public boolean methodExists(String name) { + return getMethodNames().contains(name); + } + + /** + * Get Method instance + * + * @param name Method name + * @return Method object + */ + public synchronized ActiveXMethodInfo getMethod(final String name) { + if (!methodExists(name)) { + return null; + } + + final List argNames = new ArrayList<>(); + final List argTypes = new ArrayList<>(); + + writeComponentCommand(CMD_GET_METHOD_PARAMS); + writeString(name); + readResult(); + final String fname = readString(); + final String returnName = readString(); + final Class returnType = strToClass(readString()); + int parameterCount = readUI16(); + for (int i = 0; i < parameterCount; i++) { + String pname = readString(); + String ptype = readString(); + argNames.add(pname); + argTypes.add(strToClass(ptype)); + } + final String doc = readString(); + + return new ActiveXMethodInfo() { + + private String typeToStr(Class c) { + if (c == null) { + return "Object"; + } + return c.getSimpleName(); + } + + @Override + public String toString() { + String ret = typeToStr(returnType) + " " + getName() + "("; + for (int i = 0; i < argNames.size(); i++) { + if (i > 0) { + ret += ", "; + } + ret += typeToStr(argTypes.get(i)) + " " + argNames.get(i); + } + ret += ")"; + return ret; + } + + @Override + public List getArgumentNames() { + return argNames; + } + + @Override + public String getDoc() { + return doc; + } + + @Override + public String getReturnName() { + return returnName; + } + + @Override + public Object getOwner() { + return ActiveXControl.this; + } + + @Override + public Class getReturnType() { + return returnType; + } + + @Override + public List getArgumentTypes() { + return argTypes; + } + + @Override + public Object call(Object... args) { + return callMethodArr(name, args); + } + + @Override + public String getName() { + return fname; + } + + @Override + public int hashCode() { + return name.hashCode(); + } + + @Override + public boolean equals(Object obj) { + if (obj == null) { + return false; + } + if (!(obj instanceof ActiveXMethodInfo)) { + return false; + } + ActiveXMethodInfo m = (ActiveXMethodInfo) obj; + + return getName().equals(m.getName()); + } + + }; + } + + private synchronized void writeCid() { + writeUI32(cid); + String type = readString(); + String val = readString(); + if (type.equals("Error")) { + throw new ActiveXException(val); + } + } + + private synchronized void writeComponentCommand(int command) { + writeCommand(command); + writeCid(); + } + + /** + * Gets property value + * + * @param name Property name + * @return Value of property + */ + public Object getProperty(String name) { + synchronized (ActiveXControl.class) { + writeComponentCommand(CMD_GET_PROPERTY); + writeString(name); + String type = readString(); + String val = readString(); + if ("Error".equals(type)) { + throw new ActiveXException(val); + } + return strToValue(type, val); + } + } + + private static synchronized void readResult() { + String type = readString(); + String val = readString(); + if ("Error".equals(type)) { + throw new ActiveXException(val); + } + } + + /** + * Sets property value + * + * @param name Property name + * @param value New value + */ + public void setProperty(String name, Object value) { + synchronized (ActiveXControl.class) { + writeComponentCommand(CMD_SET_PROPERTY); + writeString(name); + writeString("" + value); + readResult(); + } + } + + /** + * Retrieves all classes in OCX file + * + * @param ocx OCX file + * @return List of classinfos + */ + public static List getOcxClasses(File ocx) { + List ret = new ArrayList<>(); + writeCommand(CMD_GET_OCX_CLASSES); + writeString(ocx.getAbsolutePath()); + readResult(); + int cnt = readUI16(); + for (int i = 0; i < cnt; i++) { + ret.add(new ActiveXClassInfo(readString(), readString(), readString(), ocx)); + } + return ret; + } + + /** + * Creates ActiveX control + * + * @param guid ClassId - GUID + */ + public ActiveXControl(String guid) { + this("", guid); + } + + /** + * Creates ActiveX control from file + * + * @param filename File to create class from + * @param guid ClassId - GUID + */ + public ActiveXControl(File filename, String guid) { + this(filename.getAbsolutePath(), guid); + } + + /** + * Gets ClassId GUID + * + * @return + */ + public String getGuid() { + return guid; + } + + /** + * Gets Documentation String for class + * + * @return + */ + public String getDocString() { + return docString; + } + + /** + * Creates ActiveX control from file path + * + * @param filename File path to create class from + * @param guid ClassId - GUID + */ + public ActiveXControl(String filename, String guid) { + this.guid = guid; + writeCommand(CMD_NEW); + writeString(filename); + writeString(guid); + readResult(); + cid = readUI32(); + this.guid = readString(); + progId = readString(); + docString = readString(); + setBackground(Color.green); + addComponentListener(new ComponentListener() { + @Override + public void componentResized(ComponentEvent e) { + resize(); + } + + @Override + public void componentMoved(ComponentEvent e) { + } + + @Override + public void componentShown(ComponentEvent e) { + componentResized(e); + } + + @Override + public void componentHidden(ComponentEvent e) { + } + }); + } + + private void resize() { + synchronized (ActiveXControl.class) { + if (!shown) { + writeComponentCommand(CMD_SET_PARENT); + hwnd = Native.getComponentPointer(ActiveXControl.this).hashCode(); + writeUI32(hwnd); + shown = true; + } + writeComponentCommand(CMD_RESIZE); + writeUI16(getWidth()); + writeUI16(getHeight()); + } + } + + /** + * Retrieves all available property names + * + * @return + */ + public List getPropertyNames() { + synchronized (ActiveXControl.class) { + writeComponentCommand(CMD_LIST_PROPERTIES); + return readStrings(); + } + } + + /** + * Retrieves all available method names + * + * @return + */ + public List getMethodNames() { + synchronized (ActiveXControl.class) { + writeComponentCommand(CMD_LIST_METHODS); + return readStrings(); + } + } + + /** + * Retrieves all available event names + * + * @return + */ + public synchronized List getEventNames() { + synchronized (ActiveXControl.class) { + writeComponentCommand(CMD_LIST_EVENTS); + return readStrings(); + } + } + + /** + * Call method on object + * + * @param methodName Method name + * @param args Call arguments + * @return Return value of method + */ + public Object callMethod(String methodName, Object... args) { + synchronized (ActiveXControl.class) { + return callMethodArr(methodName, args); + } + } + + /** + * Call method on object with array arguments + * + * @param methodName Method name + * @param args Call arguments + * @return Return value of method + */ + public synchronized Object callMethodArr(String methodName, Object[] args) { + writeComponentCommand(CMD_CALL_METHOD); + writeString(methodName); + writeUI16(args.length); + for (Object o : args) { + writeString("" + o); + } + String type = readString(); + String val = readString(); + if ("Error".equals(type)) { + throw new ActiveXException(val); + } + return strToValue(type, val); + } + + private synchronized static List readStrings() { + int len = readUI16(); + List ret = new ArrayList<>(); + for (int i = 0; i < len; i++) { + ret.add(readString()); + } + return ret; + } + + private synchronized static String readString() { + int len = readUI8(); + byte data[] = new byte[len]; + read(data); + try { + return new String(data, "UTF-8"); + } catch (UnsupportedEncodingException ex) { + return new String(data); + } + } + + private synchronized static int readUI16() { + byte data[] = new byte[2]; + read(data); + return ((data[0] & 0xff) << 8) + (data[1] & 0xff); + } + + private synchronized static long readUI32() { + byte data[] = new byte[4]; + read(data); + return ((data[0] & 0xff) << 24) + ((data[0] & 0xff) << 16) + ((data[0] & 0xff) << 8) + (data[1] & 0xff); + } + + private synchronized static void writeCommand(int cmd) { + writeUI8(cmd); + } + + private synchronized static int readUI8() { + byte data[] = new byte[1]; + read(data); + return data[0] & 0xff; + } + + private synchronized static int read(byte res[]) { + final IntByReference ibr = new IntByReference(); + int read = 0; + while (read < res.length) { + byte[] data = new byte[res.length - read]; + boolean result = Kernel32.INSTANCE.ReadFile(pipe, data, data.length, ibr, null); + if (!result) { + return Kernel32.INSTANCE.GetLastError(); + } + int readNow = ibr.getValue(); + System.arraycopy(data, 0, res, read, readNow); + read += readNow; + } + return 0; + } + + private synchronized static void writeUI8(int val) { + write(new byte[]{(byte) val}); + } + + private synchronized static void writeUI32(long val) { + write(new byte[]{ + (byte) ((val >> 24) & 0xff), + (byte) ((val >> 16) & 0xff), + (byte) ((val >> 8) & 0xff), + (byte) ((val) & 0xff) + }); + } + + private synchronized static void writeUI16(long val) { + write(new byte[]{ + (byte) ((val >> 8) & 0xff), + (byte) ((val) & 0xff) + }); + } + + private synchronized static void writeString(String s) { + byte data[]; + try { + data = s.getBytes("UTF-8"); + } catch (UnsupportedEncodingException ex) { + data = s.getBytes(); + } + writeUI8(data.length); + write(data); + } + + private synchronized static int write(byte data[]) { + IntByReference ibr = new IntByReference(); + boolean result = Kernel32.INSTANCE.WriteFile(pipe, data, data.length, ibr, null); + if (!result) { + return Kernel32.INSTANCE.GetLastError(); + } + if (ibr.getValue() != data.length) { + return -1; + } + return 0; + } + + /** + * Generates Java Definition from registered Class Id - GUID + * + * @param classId Class Id - GUID + * @return + */ + public static String generateJavaDefinition(String classId) { + return generateJavaDefinition("", classId); + } + + /** + * Generates Java Definition from OCX file + * + * @param ocx Path to OCX file + * @param classId Class Id - GUID + * @return + */ + public static String generateJavaDefinition(String ocx, String classId) { + return new ActiveXControl(ocx, classId).getJavaDefinition(); + } + + /** + * Generates Java Definition from OCX file + * + * @param ocx OCX file + * @param classId Class Id - GUID + * @return + */ + public static String generateJavaDefinition(File ocx, String classId) { + return generateJavaDefinition(ocx.getAbsolutePath(), classId); + } + + /** + * Converts ProgId to suitable Java class name + * + * @param progId ProgId + * @return + */ + public static String progIdToJavaClassName(String progId) { + String controlName = null; + + if (!progId.isEmpty()) { + String parts[] = progId.split("\\."); + if (parts.length >= 2) { + if (parts[1].equals(parts[0])) { + controlName = parts[1]; + } else { + controlName = parts[0] + "_" + parts[1]; + } + } + } + return controlName; + } + + /** + * Converts ProgId of this class to suitable Java class name + * + * @return + */ + public String getJavaClassName() { + return progIdToJavaClassName(progId); + } + + /** + * Generates Java Definition from this class + * + * @return + */ + public String getJavaDefinition() { + String ret = ""; + String nl = System.lineSeparator(); + String controlName = getJavaClassName(); + + if (controlName == null) { + controlName = "MyClass"; + } + ret += "package com.jpexs.javactivex.controls;" + nl; + ret += "import com.jpexs.javactivex.ActiveXControl;" + nl; + ret += "import java.io.File;" + nl; + ret += nl; + ret += "/**" + nl; + ret += " * Class " + progId + nl; + ret += " * " + docString + nl; + ret += " */" + nl; + ret += "public class " + controlName + " extends ActiveXControl {" + nl; + + ret += nl; + ret += "\t/**" + nl; + ret += "\t * Constructs class which is already registered" + nl; + ret += "\t */" + nl; + ret += "\tpublic " + controlName + "() {" + nl; + ret += "\t\tthis(\"\");" + nl; + ret += "\t}" + nl; + + ret += nl; + ret += "\t/**" + nl; + ret += "\t * Constructs " + controlName + " from OCX path" + nl; + ret += "\t * @param ocxPath Path to OCX file which contains " + controlName + " class"; + ret += "\t */" + nl; + ret += "\tpublic " + controlName + "(String ocxPath) {" + nl; + ret += "\t\tsuper(ocxPath,\"" + guid + "\");" + nl; + ret += "\t}" + nl; + + ret += nl; + ret += "\t/**" + nl; + ret += "\t * Constructs " + controlName + " from OCX file" + nl; + ret += "\t * @param ocx OCX file which contains " + controlName + " class"; + ret += "\t */" + nl; + ret += "\tpublic " + controlName + "(File ocx) {" + nl; + ret += "\t\tthis(ocx.getAbsolutePath());" + nl; + ret += "\t}" + nl; + + for (String metName : getMethodNames()) { + ret += nl; + ActiveXMethodInfo m = getMethod(metName); + String doc = m.getDoc(); + + ret += "\t/**" + nl; + if (!doc.isEmpty()) { + ret += "\t * " + doc.trim().replaceAll("\r\n|\r|\n", "\t * ") + nl; + } else { + ret += "\t * Method " + metName + nl; + } + for (String pname : m.getArgumentNames()) { + ret += "\t * @param " + pname + nl; + } + Class retType = m.getReturnType(); + + if (retType != void.class) { + ret += "\t * @return" + nl; + } + ret += "\t */" + nl; + ret += "\tpublic " + m.toString() + " {" + nl; + ret += "\t\t"; + + if (retType != void.class) { + ret += "return "; + if (retType != null) { + if (boxedMap.containsKey(retType)) { + ret += "(" + boxedMap.get(retType).getSimpleName() + ")"; + } else { + ret += "(" + retType.getSimpleName() + ")"; + } + } + } + ret += "callMethod(\"" + metName + "\""; + for (String pname : m.getArgumentNames()) { + ret += ", "; + ret += pname; + } + ret += ");" + nl; + ret += "\t}" + nl; + + } + + for (String propName : getPropertyNames()) { + Class type = getPropertyType(propName); + if (type == null) { + type = Object.class; + } + Class coerceType = type; + if (boxedMap.containsKey(coerceType)) { + coerceType = boxedMap.get(coerceType); + } + ret += nl; + ret += "\t/**" + nl; + ret += "\t * Getter for property " + propName + nl; + ret += "\t * @return " + propName + " value" + nl; + ret += "\t */" + nl; + ret += "\tpublic " + type.getSimpleName() + " get" + propName + (methodExists("get" + propName) ? "_" : "") + "() {" + nl; + ret += "\t\treturn (" + coerceType.getSimpleName() + ")getProperty(\"" + propName + "\");" + nl; + ret += "\t}" + nl; + ret += nl; + ret += "\t/**" + nl; + ret += "\t * Setter for property " + propName + nl; + ret += "\t * @param value New " + propName + " value" + nl; + ret += "\t */" + nl; + ret += "\tpublic void set" + propName + (methodExists("set" + propName) ? "_" : "") + "(" + type.getSimpleName() + " value) {" + nl; + ret += "\t\tsetProperty(\"" + propName + "\",value);" + nl; + ret += "\t}" + nl; + } + + ret += "}"; + + return ret; + } + + /** + * Gets ProgId + * + * @return + */ + public String getProgId() { + return progId; + } + + /** + * Retrieves all registered classes + * + * @return + */ + public synchronized static List getRegisteredClasses() { + List ret = new ArrayList<>(); + writeCommand(CMD_GET_REGISTERED_CLASSES); + int cnt = readUI16(); + for (int i = 0; i < cnt; i++) { + ret.add(new ActiveXClassInfo(readString(), readString(), readString(), new File(readString()))); + } + return ret; + } + +} diff --git a/src/com/jpexs/javactivex/ActiveXException.java b/src/com/jpexs/javactivex/ActiveXException.java new file mode 100644 index 0000000..27c1b7f --- /dev/null +++ b/src/com/jpexs/javactivex/ActiveXException.java @@ -0,0 +1,14 @@ +package com.jpexs.javactivex; + +/** + * Exception in ActiveX + * + * @author JPEXS + */ +public class ActiveXException extends RuntimeException { + + public ActiveXException(String message) { + super(message); + } + +} diff --git a/src/com/jpexs/javactivex/ActiveXMethodInfo.java b/src/com/jpexs/javactivex/ActiveXMethodInfo.java new file mode 100644 index 0000000..286aaa7 --- /dev/null +++ b/src/com/jpexs/javactivex/ActiveXMethodInfo.java @@ -0,0 +1,68 @@ +package com.jpexs.javactivex; + +import java.util.List; + +/** + * Interface of a method + * + * @author JPEXS + */ +public interface ActiveXMethodInfo { + + /** + * Call the method on its object + * + * @param args arguments + * @return + */ + public Object call(Object... args); + + /** + * Get name of the method + * + * @return + */ + public String getName(); + + /** + * Get owner component + * + * @return + */ + public Object getOwner(); + + /** + * Get return type of the method + * + * @return + */ + public Class getReturnType(); + + /** + * Get type of arguments + * + * @return + */ + public List getArgumentTypes(); + + /** + * Get argument names + * + * @return + */ + public List getArgumentNames(); + + /** + * Get name of return value + * + * @return + */ + public String getReturnName(); + + /** + * Get method documentation + * + * @return + */ + public String getDoc(); +} diff --git a/src/com/jpexs/javactivex/example/ActiveXExample.java b/src/com/jpexs/javactivex/example/ActiveXExample.java new file mode 100644 index 0000000..a340911 --- /dev/null +++ b/src/com/jpexs/javactivex/example/ActiveXExample.java @@ -0,0 +1,90 @@ +package com.jpexs.javactivex.example; + +import com.jpexs.javactivex.example.controls.ShockwaveFlash; +import java.awt.BorderLayout; +import java.awt.Button; +import java.awt.Color; +import java.awt.FileDialog; +import java.awt.FlowLayout; +import java.awt.Frame; +import java.awt.Panel; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import java.awt.event.WindowAdapter; +import java.awt.event.WindowEvent; +import java.io.File; + +/** + * Example of using ActiveX components - Flash player + * + * @author JPEXS + */ +public class ActiveXExample extends Frame { + + private ShockwaveFlash swfPlayer; + + public ActiveXExample() { + setTitle("Sample ActiveX Component in Java"); + setLayout(new BorderLayout()); + swfPlayer = new ShockwaveFlash(); + add(swfPlayer, BorderLayout.CENTER); + addWindowListener(new WindowAdapter() { + + @Override + public void windowClosing(WindowEvent e) { + System.exit(0); + } + + }); + setSize(800, 600); + + swfPlayer.setBackgroundColor(0xff0000); + + Panel buttonsPanel = new Panel(new FlowLayout()); + + Button playButton = new Button("Play SWF..."); + Button zoomInButton = new Button("Zoom in"); + Button zoomOutButton = new Button("Zoom out"); + buttonsPanel.add(playButton); + buttonsPanel.add(zoomInButton); + buttonsPanel.add(zoomOutButton); + buttonsPanel.setBackground(Color.YELLOW); + add(buttonsPanel, BorderLayout.NORTH); + playButton.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + FileDialog fd = new FileDialog(ActiveXExample.this, "Open SWF"); + fd.setMultipleMode(false); + fd.setVisible(true); + String file = fd.getDirectory() + "/" + fd.getFile(); + if (file != null) { + swfPlayer.setMovie(file); + } + } + }); + zoomInButton.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + swfPlayer.Zoom((int) Math.round(100 / 1.1)); + } + }); + + zoomOutButton.addActionListener(new ActionListener() { + + @Override + public void actionPerformed(ActionEvent e) { + swfPlayer.Zoom((int) Math.round(100 / (1 / 1.1))); + } + }); + } + + /** + * @param args the command line arguments + */ + public static void main(String[] args) { + new ActiveXExample().setVisible(true); + } + +} diff --git a/src/com/jpexs/javactivex/example/controls/ShockwaveFlash.java b/src/com/jpexs/javactivex/example/controls/ShockwaveFlash.java new file mode 100644 index 0000000..2b17541 --- /dev/null +++ b/src/com/jpexs/javactivex/example/controls/ShockwaveFlash.java @@ -0,0 +1,977 @@ +package com.jpexs.javactivex.example.controls; + +import com.jpexs.javactivex.ActiveXControl; +import java.io.File; + +/** + * Class ShockwaveFlash.ShockwaveFlash.11 Shockwave Flash + */ +public class ShockwaveFlash extends ActiveXControl { + + /** + * Constructs class which is already registered + */ + public ShockwaveFlash() { + this(""); + } + + /** + * Constructs ShockwaveFlash from OCX path + * + * @param ocxPath Path to OCX file which contains ShockwaveFlash class + */ + public ShockwaveFlash(String ocxPath) { + super(ocxPath, "{d27cdb6e-ae6d-11cf-96b8-444553540000}"); + } + + /** + * Constructs ShockwaveFlash from OCX file + * + * @param ocx OCX file which contains ShockwaveFlash class + */ + public ShockwaveFlash(File ocx) { + this(ocx.getAbsolutePath()); + } + + /** + * Method QueryInterface + * + * @param riid + * @param ppvObj + */ + public void QueryInterface(Object riid, Object ppvObj) { + callMethod("QueryInterface", riid, ppvObj); + } + + /** + * Method AddRef + * + * @return + */ + public long AddRef() { + return (Long) callMethod("AddRef"); + } + + /** + * Method Release + * + * @return + */ + public long Release() { + return (Long) callMethod("Release"); + } + + /** + * Method GetTypeInfoCount + * + * @param pctinfo + */ + public void GetTypeInfoCount(Object pctinfo) { + callMethod("GetTypeInfoCount", pctinfo); + } + + /** + * Method GetTypeInfo + * + * @param itinfo + * @param lcid + * @param pptinfo + */ + public void GetTypeInfo(int itinfo, long lcid, Object pptinfo) { + callMethod("GetTypeInfo", itinfo, lcid, pptinfo); + } + + /** + * Method GetIDsOfNames + * + * @param riid + * @param rgszNames + * @param cNames + * @param lcid + * @param rgdispid + */ + public void GetIDsOfNames(Object riid, Object rgszNames, int cNames, long lcid, Object rgdispid) { + callMethod("GetIDsOfNames", riid, rgszNames, cNames, lcid, rgdispid); + } + + /** + * Method Invoke + * + * @param dispidMember + * @param riid + * @param lcid + * @param wFlags + * @param pdispparams + * @param pvarResult + * @param pexcepinfo + * @param puArgErr + */ + public void Invoke(int dispidMember, Object riid, long lcid, Integer wFlags, Object pdispparams, Object pvarResult, Object pexcepinfo, Object puArgErr) { + callMethod("Invoke", dispidMember, riid, lcid, wFlags, pdispparams, pvarResult, pexcepinfo, puArgErr); + } + + /** + * method SetZoomRect + * + * @param left + * @param top + * @param right + * @param bottom + */ + public void SetZoomRect(int left, int top, int right, int bottom) { + callMethod("SetZoomRect", left, top, right, bottom); + } + + /** + * method Zoom + * + * @param factor + */ + public void Zoom(int factor) { + callMethod("Zoom", factor); + } + + /** + * method Pan + * + * @param x + * @param y + * @param mode + */ + public void Pan(int x, int y, int mode) { + callMethod("Pan", x, y, mode); + } + + /** + * method Play + */ + public void Play() { + callMethod("Play"); + } + + /** + * method Stop + */ + public void Stop() { + callMethod("Stop"); + } + + /** + * method Back + */ + public void Back() { + callMethod("Back"); + } + + /** + * method Forward + */ + public void Forward() { + callMethod("Forward"); + } + + /** + * method Rewind + */ + public void Rewind() { + callMethod("Rewind"); + } + + /** + * method StopPlay + */ + public void StopPlay() { + callMethod("StopPlay"); + } + + /** + * method GotoFrame + * + * @param FrameNum + */ + public void GotoFrame(int FrameNum) { + callMethod("GotoFrame", FrameNum); + } + + /** + * method CurrentFrame + * + * @return + */ + public int CurrentFrame() { + return (Integer) callMethod("CurrentFrame"); + } + + /** + * method IsPlaying + * + * @return + */ + public boolean IsPlaying() { + return (Boolean) callMethod("IsPlaying"); + } + + /** + * method PercentLoaded + * + * @return + */ + public int PercentLoaded() { + return (Integer) callMethod("PercentLoaded"); + } + + /** + * method FrameLoaded + * + * @param FrameNum + * @return + */ + public boolean FrameLoaded(int FrameNum) { + return (Boolean) callMethod("FrameLoaded", FrameNum); + } + + /** + * method FlashVersion + * + * @return + */ + public int FlashVersion() { + return (Integer) callMethod("FlashVersion"); + } + + /** + * method LoadMovie + * + * @param layer + * @param url + */ + public void LoadMovie(int layer, String url) { + callMethod("LoadMovie", layer, url); + } + + /** + * method TGotoFrame + * + * @param target + * @param FrameNum + */ + public void TGotoFrame(String target, int FrameNum) { + callMethod("TGotoFrame", target, FrameNum); + } + + /** + * method TGotoLabel + * + * @param target + * @param label + */ + public void TGotoLabel(String target, String label) { + callMethod("TGotoLabel", target, label); + } + + /** + * method TCurrentFrame + * + * @param target + * @return + */ + public int TCurrentFrame(String target) { + return (Integer) callMethod("TCurrentFrame", target); + } + + /** + * method TCurrentLabel + * + * @param target + * @return + */ + public String TCurrentLabel(String target) { + return (String) callMethod("TCurrentLabel", target); + } + + /** + * method TPlay + * + * @param target + */ + public void TPlay(String target) { + callMethod("TPlay", target); + } + + /** + * method TStopPlay + * + * @param target + */ + public void TStopPlay(String target) { + callMethod("TStopPlay", target); + } + + /** + * method SetVariable + * + * @param name + * @param value + */ + public void SetVariable(String name, String value) { + callMethod("SetVariable", name, value); + } + + /** + * method GetVariable + * + * @param name + * @return + */ + public String GetVariable(String name) { + return (String) callMethod("GetVariable", name); + } + + /** + * method TSetProperty + * + * @param target + * @param property + * @param value + */ + public void TSetProperty(String target, int property, String value) { + callMethod("TSetProperty", target, property, value); + } + + /** + * method TGetProperty + * + * @param target + * @param property + * @return + */ + public String TGetProperty(String target, int property) { + return (String) callMethod("TGetProperty", target, property); + } + + /** + * method TCallFrame + * + * @param target + * @param FrameNum + */ + public void TCallFrame(String target, int FrameNum) { + callMethod("TCallFrame", target, FrameNum); + } + + /** + * method TCallLabel + * + * @param target + * @param label + */ + public void TCallLabel(String target, String label) { + callMethod("TCallLabel", target, label); + } + + /** + * method TSetPropertyNum + * + * @param target + * @param property + * @param value + */ + public void TSetPropertyNum(String target, int property, double value) { + callMethod("TSetPropertyNum", target, property, value); + } + + /** + * method TGetPropertyNum + * + * @param target + * @param property + * @return + */ + public double TGetPropertyNum(String target, int property) { + return (Double) callMethod("TGetPropertyNum", target, property); + } + + /** + * method TGetPropertyAsNumber + * + * @param target + * @param property + * @return + */ + public double TGetPropertyAsNumber(String target, int property) { + return (Double) callMethod("TGetPropertyAsNumber", target, property); + } + + /** + * method EnforceLocalSecurity + */ + public void EnforceLocalSecurity() { + callMethod("EnforceLocalSecurity"); + } + + /** + * method Call + * + * @param request + * @return + */ + public String CallFunction(String request) { + return (String) callMethod("CallFunction", request); + } + + /** + * method SetReturnValue + * + * @param returnValue + */ + public void SetReturnValue(String returnValue) { + callMethod("SetReturnValue", returnValue); + } + + /** + * method DisableLocalSecurity + */ + public void DisableLocalSecurity() { + callMethod("DisableLocalSecurity"); + } + + /** + * Getter for property Playing + * + * @return Playing value + */ + public boolean getPlaying() { + return (Boolean) getProperty("Playing"); + } + + /** + * Setter for property Playing + * + * @param value New Playing value + */ + public void setPlaying(boolean value) { + setProperty("Playing", value); + } + + /** + * Getter for property Quality + * + * @return Quality value + */ + public int getQuality() { + return (Integer) getProperty("Quality"); + } + + /** + * Setter for property Quality + * + * @param value New Quality value + */ + public void setQuality(int value) { + setProperty("Quality", value); + } + + /** + * Getter for property ScaleMode + * + * @return ScaleMode value + */ + public int getScaleMode() { + return (Integer) getProperty("ScaleMode"); + } + + /** + * Setter for property ScaleMode + * + * @param value New ScaleMode value + */ + public void setScaleMode(int value) { + setProperty("ScaleMode", value); + } + + /** + * Getter for property AlignMode + * + * @return AlignMode value + */ + public int getAlignMode() { + return (Integer) getProperty("AlignMode"); + } + + /** + * Setter for property AlignMode + * + * @param value New AlignMode value + */ + public void setAlignMode(int value) { + setProperty("AlignMode", value); + } + + /** + * Getter for property BackgroundColor + * + * @return BackgroundColor value + */ + public int getBackgroundColor() { + return (Integer) getProperty("BackgroundColor"); + } + + /** + * Setter for property BackgroundColor + * + * @param value New BackgroundColor value + */ + public void setBackgroundColor(int value) { + setProperty("BackgroundColor", value); + } + + /** + * Getter for property Loop + * + * @return Loop value + */ + public boolean getLoop() { + return (Boolean) getProperty("Loop"); + } + + /** + * Setter for property Loop + * + * @param value New Loop value + */ + public void setLoop(boolean value) { + setProperty("Loop", value); + } + + /** + * Getter for property Movie + * + * @return Movie value + */ + public String getMovie() { + return (String) getProperty("Movie"); + } + + /** + * Setter for property Movie + * + * @param value New Movie value + */ + public void setMovie(String value) { + setProperty("Movie", value); + } + + /** + * Getter for property FrameNum + * + * @return FrameNum value + */ + public int getFrameNum() { + return (Integer) getProperty("FrameNum"); + } + + /** + * Setter for property FrameNum + * + * @param value New FrameNum value + */ + public void setFrameNum(int value) { + setProperty("FrameNum", value); + } + + /** + * Getter for property WMode + * + * @return WMode value + */ + public String getWMode() { + return (String) getProperty("WMode"); + } + + /** + * Setter for property WMode + * + * @param value New WMode value + */ + public void setWMode(String value) { + setProperty("WMode", value); + } + + /** + * Getter for property SAlign + * + * @return SAlign value + */ + public String getSAlign() { + return (String) getProperty("SAlign"); + } + + /** + * Setter for property SAlign + * + * @param value New SAlign value + */ + public void setSAlign(String value) { + setProperty("SAlign", value); + } + + /** + * Getter for property Menu + * + * @return Menu value + */ + public boolean getMenu() { + return (Boolean) getProperty("Menu"); + } + + /** + * Setter for property Menu + * + * @param value New Menu value + */ + public void setMenu(boolean value) { + setProperty("Menu", value); + } + + /** + * Getter for property Base + * + * @return Base value + */ + public String getBase() { + return (String) getProperty("Base"); + } + + /** + * Setter for property Base + * + * @param value New Base value + */ + public void setBase(String value) { + setProperty("Base", value); + } + + /** + * Getter for property Scale + * + * @return Scale value + */ + public String getScale() { + return (String) getProperty("Scale"); + } + + /** + * Setter for property Scale + * + * @param value New Scale value + */ + public void setScale(String value) { + setProperty("Scale", value); + } + + /** + * Getter for property DeviceFont + * + * @return DeviceFont value + */ + public boolean getDeviceFont() { + return (Boolean) getProperty("DeviceFont"); + } + + /** + * Setter for property DeviceFont + * + * @param value New DeviceFont value + */ + public void setDeviceFont(boolean value) { + setProperty("DeviceFont", value); + } + + /** + * Getter for property EmbedMovie + * + * @return EmbedMovie value + */ + public boolean getEmbedMovie() { + return (Boolean) getProperty("EmbedMovie"); + } + + /** + * Setter for property EmbedMovie + * + * @param value New EmbedMovie value + */ + public void setEmbedMovie(boolean value) { + setProperty("EmbedMovie", value); + } + + /** + * Getter for property BGColor + * + * @return BGColor value + */ + public String getBGColor() { + return (String) getProperty("BGColor"); + } + + /** + * Setter for property BGColor + * + * @param value New BGColor value + */ + public void setBGColor(String value) { + setProperty("BGColor", value); + } + + /** + * Getter for property Quality2 + * + * @return Quality2 value + */ + public String getQuality2() { + return (String) getProperty("Quality2"); + } + + /** + * Setter for property Quality2 + * + * @param value New Quality2 value + */ + public void setQuality2(String value) { + setProperty("Quality2", value); + } + + /** + * Getter for property SWRemote + * + * @return SWRemote value + */ + public String getSWRemote() { + return (String) getProperty("SWRemote"); + } + + /** + * Setter for property SWRemote + * + * @param value New SWRemote value + */ + public void setSWRemote(String value) { + setProperty("SWRemote", value); + } + + /** + * Getter for property FlashVars + * + * @return FlashVars value + */ + public String getFlashVars() { + return (String) getProperty("FlashVars"); + } + + /** + * Setter for property FlashVars + * + * @param value New FlashVars value + */ + public void setFlashVars(String value) { + setProperty("FlashVars", value); + } + + /** + * Getter for property AllowScriptAccess + * + * @return AllowScriptAccess value + */ + public String getAllowScriptAccess() { + return (String) getProperty("AllowScriptAccess"); + } + + /** + * Setter for property AllowScriptAccess + * + * @param value New AllowScriptAccess value + */ + public void setAllowScriptAccess(String value) { + setProperty("AllowScriptAccess", value); + } + + /** + * Getter for property MovieData + * + * @return MovieData value + */ + public String getMovieData() { + return (String) getProperty("MovieData"); + } + + /** + * Setter for property MovieData + * + * @param value New MovieData value + */ + public void setMovieData(String value) { + setProperty("MovieData", value); + } + + /** + * Getter for property InlineData + * + * @return InlineData value + */ + public Object getInlineData() { + return (Object) getProperty("InlineData"); + } + + /** + * Setter for property InlineData + * + * @param value New InlineData value + */ + public void setInlineData(Object value) { + setProperty("InlineData", value); + } + + /** + * Getter for property SeamlessTabbing + * + * @return SeamlessTabbing value + */ + public boolean getSeamlessTabbing() { + return (Boolean) getProperty("SeamlessTabbing"); + } + + /** + * Setter for property SeamlessTabbing + * + * @param value New SeamlessTabbing value + */ + public void setSeamlessTabbing(boolean value) { + setProperty("SeamlessTabbing", value); + } + + /** + * Getter for property Profile + * + * @return Profile value + */ + public boolean getProfile() { + return (Boolean) getProperty("Profile"); + } + + /** + * Setter for property Profile + * + * @param value New Profile value + */ + public void setProfile(boolean value) { + setProperty("Profile", value); + } + + /** + * Getter for property ProfileAddress + * + * @return ProfileAddress value + */ + public String getProfileAddress() { + return (String) getProperty("ProfileAddress"); + } + + /** + * Setter for property ProfileAddress + * + * @param value New ProfileAddress value + */ + public void setProfileAddress(String value) { + setProperty("ProfileAddress", value); + } + + /** + * Getter for property ProfilePort + * + * @return ProfilePort value + */ + public int getProfilePort() { + return (Integer) getProperty("ProfilePort"); + } + + /** + * Setter for property ProfilePort + * + * @param value New ProfilePort value + */ + public void setProfilePort(int value) { + setProperty("ProfilePort", value); + } + + /** + * Getter for property AllowNetworking + * + * @return AllowNetworking value + */ + public String getAllowNetworking() { + return (String) getProperty("AllowNetworking"); + } + + /** + * Setter for property AllowNetworking + * + * @param value New AllowNetworking value + */ + public void setAllowNetworking(String value) { + setProperty("AllowNetworking", value); + } + + /** + * Getter for property AllowFullScreen + * + * @return AllowFullScreen value + */ + public String getAllowFullScreen() { + return (String) getProperty("AllowFullScreen"); + } + + /** + * Setter for property AllowFullScreen + * + * @param value New AllowFullScreen value + */ + public void setAllowFullScreen(String value) { + setProperty("AllowFullScreen", value); + } + + /** + * Getter for property AllowFullScreenInteractive + * + * @return AllowFullScreenInteractive value + */ + public String getAllowFullScreenInteractive() { + return (String) getProperty("AllowFullScreenInteractive"); + } + + /** + * Setter for property AllowFullScreenInteractive + * + * @param value New AllowFullScreenInteractive value + */ + public void setAllowFullScreenInteractive(String value) { + setProperty("AllowFullScreenInteractive", value); + } + + /** + * Getter for property IsDependent + * + * @return IsDependent value + */ + public boolean getIsDependent() { + return (Boolean) getProperty("IsDependent"); + } + + /** + * Setter for property IsDependent + * + * @param value New IsDependent value + */ + public void setIsDependent(boolean value) { + setProperty("IsDependent", value); + } +} diff --git a/src/com/jpexs/javactivex/jna/Advapi32.java b/src/com/jpexs/javactivex/jna/Advapi32.java new file mode 100644 index 0000000..8aa0ba7 --- /dev/null +++ b/src/com/jpexs/javactivex/jna/Advapi32.java @@ -0,0 +1,828 @@ +package com.jpexs.javactivex.jna; + +/** + * + * @author JPEXS + */ +/* Copyright (c) 2010 Daniel Doubrovkine, All Rights Reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + */ +import com.sun.jna.Native; +import com.sun.jna.Pointer; +import com.sun.jna.Structure; +import com.jpexs.javactivex.jna.WinBase.SECURITY_ATTRIBUTES; +import com.jpexs.javactivex.jna.WinNT.HANDLE; +import com.jpexs.javactivex.jna.WinNT.HANDLEByReference; +import com.jpexs.javactivex.jna.WinReg.HKEY; +import com.jpexs.javactivex.jna.WinReg.HKEYByReference; +import com.sun.jna.ptr.IntByReference; +import com.sun.jna.win32.StdCallLibrary; +import com.sun.jna.win32.W32APIOptions; + +/** + * Advapi32.dll Interface. + * + * @author dblock[at]dblock.org + */ +public interface Advapi32 extends StdCallLibrary { + + Advapi32 INSTANCE = (Advapi32) Native.loadLibrary("Advapi32", + Advapi32.class, W32APIOptions.UNICODE_OPTIONS); + + /** + * Retrieves the name of the user associated with the current thread. + * http://msdn.microsoft.com/en-us/library/ms724432(VS.85).aspx + * + * @param buffer Buffer to receive the user's logon name. + * @param len On input, the size of the buffer, on output the number of + * characters copied into the buffer, including the terminating null + * character. + * @return True if succeeded. + */ + public boolean GetUserNameW(char[] buffer, IntByReference len); + + /** + * The LogonUser function attempts to log a user on to the local computer. + * The local computer is the computer from which LogonUser was called. You + * cannot use LogonUser to log on to a remote computer. You specify the user + * with a user name and domain, and authenticate the user with a plaintext + * password. If the function succeeds, you receive a handle to a token that + * represents the logged-on user. You can then use this token handle to + * impersonate the specified user or, in most cases, to create a process + * that runs in the context of the specified user. + * + * @param lpszUsername A pointer to a null-terminated string that specifies + * the name of the user. This is the name of the user account to log on to. + * If you use the user principal name (UPN) format, user@DNS_domain_name, + * the lpszDomain parameter must be NULL. + * @param lpszDomain A pointer to a null-terminated string that specifies + * the name of the domain or server whose account database contains the + * lpszUsername account. If this parameter is NULL, the user name must be + * specified in UPN format. If this parameter is ".", the function validates + * the account using only the local account database. + * @param lpszPassword A pointer to a null-terminated string that specifies + * the plaintext password for the user account specified by lpszUsername. + * @param logonType The type of logon operation to perform. + * @param logonProvider Specifies the logon provider. + * @param phToken A pointer to a handle variable that receives a handle to a + * token that represents the specified user. + * @return If the function succeeds, the function returns nonzero. If the + * function fails, it returns zero. To get extended error information, call + * GetLastError. + */ + public boolean LogonUser( + String lpszUsername, + String lpszDomain, + String lpszPassword, + int logonType, + int logonProvider, + HANDLEByReference phToken); + + /** + * The OpenThreadToken function opens the access token associated with a + * thread. + * + * @param ThreadHandle Handle to the thread whose access token is opened. + * @param DesiredAccess Specifies an access mask that specifies the + * requested types of access to the access token. These requested access + * types are reconciled against the token's discretionary access control + * list (DACL) to determine which accesses are granted or denied. + * @param OpenAsSelf Indicates whether the access check is to be made + * against the security context of the thread calling the OpenThreadToken + * function or against the security context of the process for the calling + * thread. + * @param TokenHandle Pointer to a variable that receives the handle to the + * newly opened access token. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + public boolean OpenThreadToken( + HANDLE ThreadHandle, + int DesiredAccess, + boolean OpenAsSelf, + HANDLEByReference TokenHandle); + + /** + * The OpenProcessToken function opens the access token associated with a + * process. + * + * @param ProcessHandle Handle to the process whose access token is opened. + * The process must have the PROCESS_QUERY_INFORMATION access permission. + * @param DesiredAccess Specifies an access mask that specifies the + * requested types of access to the access token. These requested access + * types are compared with the discretionary access control list (DACL) of + * the token to determine which accesses are granted or denied. + * @param TokenHandle Pointer to a handle that identifies the newly opened + * access token when the function returns. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + public boolean OpenProcessToken( + HANDLE ProcessHandle, + int DesiredAccess, + HANDLEByReference TokenHandle); + + /** + * The DuplicateToken function creates a new access token that duplicates + * one already in existence. + * + * @param ExistingTokenHandle Handle to an access token opened with + * TOKEN_DUPLICATE access. + * @param ImpersonationLevel Specifies a SECURITY_IMPERSONATION_LEVEL + * enumerated type that supplies the impersonation level of the new token. + * @param DuplicateTokenHandle Pointer to a variable that receives a handle + * to the duplicate token. This handle has TOKEN_IMPERSONATE and TOKEN_QUERY + * access to the new token. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + public boolean DuplicateToken( + HANDLE ExistingTokenHandle, + int ImpersonationLevel, + HANDLEByReference DuplicateTokenHandle); + + /** + * The DuplicateTokenEx function creates a new access token that duplicates + * an existing token. This function can create either a primary token or an + * impersonation token. + * + * @param hExistingToken A handle to an access token opened with + * TOKEN_DUPLICATE access. + * @param dwDesiredAccess Specifies the requested access rights for the new + * token. + * @param lpTokenAttributes A pointer to a SECURITY_ATTRIBUTES structure + * that specifies a security descriptor for the new token and determines + * whether child processes can inherit the token. + * @param ImpersonationLevel Specifies a value from the + * SECURITY_IMPERSONATION_LEVEL enumeration that indicates the impersonation + * level of the new token. + * @param TokenType Specifies one of the following values from the + * TOKEN_TYPE enumeration. + * @param phNewToken A pointer to a HANDLE variable that receives the new + * token. + * @return If the function succeeds, the function returns a nonzero value. + * If the function fails, it returns zero. To get extended error + * information, call GetLastError. + */ + public boolean DuplicateTokenEx( + HANDLE hExistingToken, + int dwDesiredAccess, + WinBase.SECURITY_ATTRIBUTES lpTokenAttributes, + int ImpersonationLevel, + int TokenType, + HANDLEByReference phNewToken); + + /** + * Retrieves a specified type of information about an access token. The + * calling process must have appropriate access rights to obtain the + * information. + * + * @param tokenHandle Handle to an access token from which information is + * retrieved. If TokenInformationClass specifies TokenSource, the handle + * must have TOKEN_QUERY_SOURCE access. For all other TokenInformationClass + * values, the handle must have TOKEN_QUERY access. + * @param tokenInformationClass Specifies a value from the + * TOKEN_INFORMATION_CLASS enumerated type to identify the type of + * information the function retrieves. + * @param tokenInformation Pointer to a buffer the function fills with the + * requested information. The structure put into this buffer depends upon + * the type of information specified by the TokenInformationClass parameter. + * @param tokenInformationLength Specifies the size, in bytes, of the buffer + * pointed to by the TokenInformation parameter. If TokenInformation is + * NULL, this parameter must be zero. + * @param returnLength Pointer to a variable that receives the number of + * bytes needed for the buffer pointed to by the TokenInformation parameter. + * If this value is larger than the value specified in the + * TokenInformationLength parameter, the function fails and stores no data + * in the buffer. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + public boolean GetTokenInformation( + HANDLE tokenHandle, + int tokenInformationClass, + Structure tokenInformation, + int tokenInformationLength, + IntByReference returnLength); + + /** + * The ImpersonateLoggedOnUser function lets the calling thread impersonate + * the security context of a logged-on user. The user is represented by a + * token handle. + * + * @param hToken Handle to a primary or impersonation access token that + * represents a logged-on user. This can be a token handle returned by a + * call to LogonUser, CreateRestrictedToken, DuplicateToken, + * DuplicateTokenEx, OpenProcessToken, or OpenThreadToken functions. If + * hToken is a primary token, it must have TOKEN_QUERY and TOKEN_DUPLICATE + * access. If hToken is an impersonation token, it must have TOKEN_QUERY and + * TOKEN_IMPERSONATE access. + * @return If the function succeeds, the return value is nonzero. + */ + public boolean ImpersonateLoggedOnUser(HANDLE hToken); + + /** + * The ImpersonateSelf function obtains an access token that impersonates + * the security context of the calling process. The token is assigned to the + * calling thread. + * + * @param ImpersonationLevel Specifies a SECURITY_IMPERSONATION_LEVEL + * enumerated type that supplies the impersonation level of the new token. + * @return If the function succeeds, the return value is nonzero. + */ + public boolean ImpersonateSelf(int ImpersonationLevel); + + /** + * The RevertToSelf function terminates the impersonation of a client + * application. + * + * @return If the function succeeds, the return value is nonzero. + */ + public boolean RevertToSelf(); + + /** + * The RegOpenKeyEx function opens the specified registry key. Note that key + * names are not case sensitive. + * + * @param hKey Handle to an open key. + * @param lpSubKey Pointer to a null-terminated string containing the name + * of the subkey to open. + * @param ulOptions Reserved; must be zero. + * @param samDesired Access mask that specifies the desired access rights to + * the key. The function fails if the security descriptor of the key does + * not permit the requested access for the calling process. + * @param phkResult Pointer to a variable that receives a handle to the + * opened key. If the key is not one of the predefined registry keys, call + * the RegCloseKey function after you have finished using the handle. + * @return If the function succeeds, the return value is ERROR_SUCCESS. If + * the function fails, the return value is a nonzero error code defined in + * Winerror.h. + */ + public int RegOpenKeyEx(HKEY hKey, String lpSubKey, int ulOptions, int samDesired, + HKEYByReference phkResult); + + /** + * The RegQueryValueEx function retrieves the type and data for a specified + * value name associated with an open registry key. + * + * @param hKey Handle to an open key. The key must have been opened with the + * KEY_QUERY_VALUE access right. + * @param lpValueName Pointer to a null-terminated string containing the + * name of the value to query. If lpValueName is NULL or an empty string, + * "", the function retrieves the type and data for the key's unnamed or + * default value, if any. + * @param lpReserved Reserved; must be NULL. + * @param lpType Pointer to a variable that receives a code indicating the + * type of data stored in the specified value. + * @param lpData Pointer to a buffer that receives the value's data. This + * parameter can be NULL if the data is not required. If the data is a + * string, the function checks for a terminating null character. If one is + * not found, the string is stored with a null terminator if the buffer is + * large enough to accommodate the extra character. Otherwise, the string is + * stored as is. + * @param lpcbData Pointer to a variable that specifies the size of the + * buffer pointed to by the lpData parameter, in bytes. When the function + * returns, this variable contains the size of the data copied to lpData. + * The lpcbData parameter can be NULL only if lpData is NULL. If the data + * has the REG_SZ, REG_MULTI_SZ or REG_EXPAND_SZ type, this size includes + * any terminating null character or characters. If the buffer specified by + * lpData parameter is not large enough to hold the data, the function + * returns ERROR_MORE_DATA and stores the required buffer size in the + * variable pointed to by lpcbData. In this case, the contents of the lpData + * buffer are undefined. If lpData is NULL, and lpcbData is non-NULL, the + * function returns ERROR_SUCCESS and stores the size of the data, in bytes, + * in the variable pointed to by lpcbData. This enables an application to + * determine the best way to allocate a buffer for the value's data. + * @return If the function succeeds, the return value is ERROR_SUCCESS. If + * the function fails, the return value is a nonzero error code defined in + * Winerror.h. + */ + public int RegQueryValueEx(HKEY hKey, String lpValueName, int lpReserved, + IntByReference lpType, char[] lpData, IntByReference lpcbData); + + public int RegQueryValueEx(HKEY hKey, String lpValueName, int lpReserved, + IntByReference lpType, byte[] lpData, IntByReference lpcbData); + + public int RegQueryValueEx(HKEY hKey, String lpValueName, int lpReserved, + IntByReference lpType, IntByReference lpData, IntByReference lpcbData); + + public int RegQueryValueEx(HKEY hKey, String lpValueName, int lpReserved, + IntByReference lpType, Pointer lpData, IntByReference lpcbData); + + /** + * The RegCloseKey function releases a handle to the specified registry key. + * + * @param hKey Handle to the open key to be closed. The handle must have + * been opened by the RegCreateKeyEx, RegOpenKeyEx, or RegConnectRegistry + * function. + * @return If the function succeeds, the return value is ERROR_SUCCESS. If + * the function fails, the return value is a nonzero error code defined in + * Winerror.h. + */ + public int RegCloseKey(HKEY hKey); + + /** + * The RegDeleteValue function removes a named value from the specified + * registry key. Note that value names are not case sensitive. + * + * @param hKey Handle to an open key. The key must have been opened with the + * KEY_SET_VALUE access right. + * @param lpValueName Pointer to a null-terminated string that names the + * value to remove. If this parameter is NULL or an empty string, the value + * set by the RegSetValue function is removed. + * @return If the function succeeds, the return value is ERROR_SUCCESS. If + * the function fails, the return value is a nonzero error code defined in + * Winerror.h. + */ + public int RegDeleteValue(HKEY hKey, String lpValueName); + + /** + * The RegSetValueEx function sets the data and type of a specified value + * under a registry key. + * + * @param hKey Handle to an open key. The key must have been opened with the + * KEY_SET_VALUE access right. + * @param lpValueName Pointer to a string containing the name of the value + * to set. If a value with this name is not already present in the key, the + * function adds it to the key. If lpValueName is NULL or an empty string, + * "", the function sets the type and data for the key's unnamed or default + * value. + * @param Reserved Reserved; must be zero. + * @param dwType Type of data pointed to by the lpData parameter. + * @param lpData Pointer to a buffer containing the data to be stored with + * the specified value name. + * @param cbData Size of the information pointed to by the lpData parameter, + * in bytes. If the data is of type REG_SZ, REG_EXPAND_SZ, or REG_MULTI_SZ, + * cbData must include the size of the terminating null character or + * characters. + * @return If the function succeeds, the return value is ERROR_SUCCESS. If + * the function fails, the return value is a nonzero error code defined in + * Winerror.h. + */ + public int RegSetValueEx(HKEY hKey, String lpValueName, int Reserved, int dwType, + char[] lpData, int cbData); + + public int RegSetValueEx(HKEY hKey, String lpValueName, int Reserved, int dwType, + byte[] lpData, int cbData); + + /** + * + * @param hKey + * @param lpSubKey + * @param Reserved + * @param lpClass + * @param dwOptions + * @param samDesired + * @param lpSecurityAttributes + * @param phkResult + * @param lpdwDisposition + * @return If the function succeeds, the return value is ERROR_SUCCESS. If + * the function fails, the return value is a nonzero error code defined in + * Winerror.h. + */ + public int RegCreateKeyEx(HKEY hKey, String lpSubKey, int Reserved, String lpClass, + int dwOptions, int samDesired, SECURITY_ATTRIBUTES lpSecurityAttributes, + HKEYByReference phkResult, IntByReference lpdwDisposition); + + /** + * + * @param hKey + * @param name + * @return If the function succeeds, the return value is ERROR_SUCCESS. If + * the function fails, the return value is a nonzero error code defined in + * Winerror.h. + */ + public int RegDeleteKey(HKEY hKey, String name); + + /** + * The RegEnumKeyEx function enumerates subkeys of the specified open + * registry key. The function retrieves information about one subkey each + * time it is called. + * + * @param hKey Handle to an open key. The key must have been opened with the + * KEY_ENUMERATE_SUB_KEYS access right. + * @param dwIndex Index of the subkey to retrieve. This parameter should be + * zero for the first call to the RegEnumKeyEx function and then incremented + * for subsequent calls. Because subkeys are not ordered, any new subkey + * will have an arbitrary index. This means that the function may return + * subkeys in any order. + * @param lpName Pointer to a buffer that receives the name of the subkey, + * including the terminating null character. The function copies only the + * name of the subkey, not the full key hierarchy, to the buffer. + * @param lpcName Pointer to a variable that specifies the size of the + * buffer specified by the lpName parameter, in TCHARs. This size should + * include the terminating null character. When the function returns, the + * variable pointed to by lpcName contains the number of characters stored + * in the buffer. The count returned does not include the terminating null + * character. + * @param reserved Reserved; must be NULL. + * @param lpClass Pointer to a buffer that receives the null-terminated + * class string of the enumerated subkey. This parameter can be NULL. + * @param lpcClass Pointer to a variable that specifies the size of the + * buffer specified by the lpClass parameter, in TCHARs. The size should + * include the terminating null character. When the function returns, + * lpcClass contains the number of characters stored in the buffer. The + * count returned does not include the terminating null character. This + * parameter can be NULL only if lpClass is NULL. + * @param lpftLastWriteTime Pointer to a variable that receives the time at + * which the enumerated subkey was last written. + * @return If the function succeeds, the return value is ERROR_SUCCESS. If + * the function fails, the return value is a nonzero error code defined in + * Winerror.h. + */ + public int RegEnumKeyEx(HKEY hKey, int dwIndex, char[] lpName, IntByReference lpcName, + IntByReference reserved, char[] lpClass, IntByReference lpcClass, + WinBase.FILETIME lpftLastWriteTime); + + /** + * The RegEnumValue function enumerates the values for the specified open + * registry key. The function copies one indexed value name and data block + * for the key each time it is called. + * + * @param hKey Handle to an open key. The key must have been opened with the + * KEY_QUERY_VALUE access right. + * @param dwIndex Index of the value to be retrieved. This parameter should + * be zero for the first call to the RegEnumValue function and then be + * incremented for subsequent calls. Because values are not ordered, any new + * value will have an arbitrary index. This means that the function may + * return values in any order. + * @param lpValueName Pointer to a buffer that receives the name of the + * value, including the terminating null character. + * @param lpcchValueName Pointer to a variable that specifies the size of + * the buffer pointed to by the lpValueName parameter, in TCHARs. This size + * should include the terminating null character. When the function returns, + * the variable pointed to by lpcValueName contains the number of characters + * stored in the buffer. The count returned does not include the terminating + * null character. + * @param reserved Reserved; must be NULL. + * @param lpType Pointer to a variable that receives a code indicating the + * type of data stored in the specified value. + * @param lpData Pointer to a buffer that receives the data for the value + * entry. This parameter can be NULL if the data is not required. + * @param lpcbData Pointer to a variable that specifies the size of the + * buffer pointed to by the lpData parameter, in bytes. + * @return If the function succeeds, the return value is ERROR_SUCCESS. If + * the function fails, the return value is a nonzero error code defined in + * Winerror.h. + */ + public int RegEnumValue(HKEY hKey, int dwIndex, char[] lpValueName, + IntByReference lpcchValueName, IntByReference reserved, + IntByReference lpType, byte[] lpData, IntByReference lpcbData); + + /** + * The RegQueryInfoKey function retrieves information about the specified + * registry key. + * + * @param hKey A handle to an open key. The key must have been opened with + * the KEY_QUERY_VALUE access right. + * @param lpClass A pointer to a buffer that receives the null-terminated + * class string of the key. This parameter can be ignored. This parameter + * can be NULL. + * @param lpcClass A pointer to a variable that specifies the size of the + * buffer pointed to by the lpClass parameter, in characters. + * @param lpReserved Reserved; must be NULL. + * @param lpcSubKeys A pointer to a variable that receives the number of + * subkeys that are contained by the specified key. This parameter can be + * NULL. + * @param lpcMaxSubKeyLen A pointer to a variable that receives the size of + * the key's subkey with the longest name, in characters, not including the + * terminating null character. This parameter can be NULL. + * @param lpcMaxClassLen A pointer to a variable that receives the size of + * the longest string that specifies a subkey class, in characters. The + * count returned does not include the terminating null character. This + * parameter can be NULL. + * @param lpcValues A pointer to a variable that receives the number of + * values that are associated with the key. This parameter can be NULL. + * @param lpcMaxValueNameLen A pointer to a variable that receives the size + * of the key's longest value name, in characters. The size does not include + * the terminating null character. This parameter can be NULL. + * @param lpcMaxValueLen A pointer to a variable that receives the size of + * the longest data component among the key's values, in bytes. This + * parameter can be NULL. + * @param lpcbSecurityDescriptor A pointer to a variable that receives the + * size of the key's security descriptor, in bytes. This parameter can be + * NULL. + * @param lpftLastWriteTime A pointer to a FILETIME structure that receives + * the last write time. This parameter can be NULL. + * @return If the function succeeds, the return value is ERROR_SUCCESS. If + * the function fails, the return value is a nonzero error code defined in + * Winerror.h. + */ + public int RegQueryInfoKey(HKEY hKey, char[] lpClass, + IntByReference lpcClass, IntByReference lpReserved, + IntByReference lpcSubKeys, IntByReference lpcMaxSubKeyLen, + IntByReference lpcMaxClassLen, IntByReference lpcValues, + IntByReference lpcMaxValueNameLen, IntByReference lpcMaxValueLen, + IntByReference lpcbSecurityDescriptor, + WinBase.FILETIME lpftLastWriteTime); + + /** + * Retrieves a registered handle to the specified event log. + * + * @param lpUNCServerName The Universal Naming Convention (UNC) name of the + * remote server on which this operation is to be performed. If this + * parameter is NULL, the local computer is used. + * @param lpSourceName The name of the event source whose handle is to be + * retrieved. The source name must be a subkey of a log under the Eventlog + * registry key. However, the Security log is for system use only. + * @return If the function succeeds, the return value is a handle to the + * event log. If the function fails, the return value is NULL. To get + * extended error information, call GetLastError. The function returns + * ERROR_ACCESS_DENIED if lpSourceName specifies the Security event log. + */ + public HANDLE RegisterEventSource(String lpUNCServerName, String lpSourceName); + + /** + * Closes the specified event log. + * + * @param hEventLog A handle to the event log. The RegisterEventSource + * function returns this handle. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + public boolean DeregisterEventSource(HANDLE hEventLog); + + /** + * Opens a handle to the specified event log. + * + * @param lpUNCServerName The Universal Naming Convention (UNC) name of the + * remote server on which the event log is to be opened. If this parameter + * is NULL, the local computer is used. + * @param lpSourceName The name of the log. If you specify a custom log and + * it cannot be found, the event logging service opens the Application log; + * however, there will be no associated message or category string file. + * @return If the function succeeds, the return value is the handle to an + * event log. If the function fails, the return value is NULL. To get + * extended error information, call GetLastError. + */ + public HANDLE OpenEventLog(String lpUNCServerName, String lpSourceName); + + /** + * Closes the specified event log. + * + * @param hEventLog A handle to the event log to be closed. The OpenEventLog + * or OpenBackupEventLog function returns this handle. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + public boolean CloseEventLog(HANDLE hEventLog); + + /** + * Retrieves the number of records in the specified event log. + * + * @param hEventLog A handle to the open event log. The OpenEventLog or + * OpenBackupEventLog function returns this handle. + * @param NumberOfRecords A pointer to a variable that receives the number + * of records in the specified event log. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + public boolean GetNumberOfEventLogRecords(HANDLE hEventLog, IntByReference NumberOfRecords); + + /** + * Clears the specified event log, and optionally saves the current copy of + * the log to a backup file. + * + * @param hEventLog A handle to the event log to be cleared. The + * OpenEventLog function returns this handle. + * @param lpBackupFileName The absolute or relative path of the backup file. + * If this file already exists, the function fails. If the lpBackupFileName + * parameter is NULL, the event log is not backed up. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. The ClearEventLog function can fail if + * the event log is empty or the backup file already exists. + */ + public boolean ClearEventLog(HANDLE hEventLog, String lpBackupFileName); + + /** + * Saves the specified event log to a backup file. The function does not + * clear the event log. + * + * @param hEventLog A handle to the open event log. The OpenEventLog + * function returns this handle. + * @param lpBackupFileName The absolute or relative path of the backup file. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + public boolean BackupEventLog(HANDLE hEventLog, String lpBackupFileName); + + /** + * Opens a handle to a backup event log created by the BackupEventLog + * function. + * + * @param lpUNCServerName The Universal Naming Convention (UNC) name of the + * remote server on which this operation is to be performed. If this + * parameter is NULL, the local computer is used. + * @param lpFileName The full path of the backup file. + * @return If the function succeeds, the return value is a handle to the + * backup event log. If the function fails, the return value is NULL. To get + * extended error information, call GetLastError. + */ + public HANDLE OpenBackupEventLog(String lpUNCServerName, String lpFileName); + + /** + * Reads the specified number of entries from the specified event log. The + * function can be used to read log entries in chronological or reverse + * chronological order. + * + * @param hEventLog A handle to the event log to be read. The OpenEventLog + * function returns this handle. + * @param dwReadFlags Use the following flag values to indicate how to read + * the log file. + * @param dwRecordOffset The record number of the log-entry at which the + * read operation should start. This parameter is ignored unless dwReadFlags + * includes the EVENTLOG_SEEK_READ flag. + * @param lpBuffer An application-allocated buffer that will receive one or + * more EVENTLOGRECORD structures. This parameter cannot be NULL, even if + * the nNumberOfBytesToRead parameter is zero. The maximum size of this + * buffer is 0x7ffff bytes. + * @param nNumberOfBytesToRead The size of the lpBuffer buffer, in bytes. + * This function will read as many log entries as will fit in the buffer; + * the function will not return partial entries. + * @param pnBytesRead A pointer to a variable that receives the number of + * bytes read by the function. + * @param pnMinNumberOfBytesNeeded A pointer to a variable that receives the + * required size of the lpBuffer buffer. This value is valid only this + * function returns zero and GetLastError returns ERROR_INSUFFICIENT_BUFFER. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + public boolean ReadEventLog(HANDLE hEventLog, int dwReadFlags, int dwRecordOffset, + Pointer lpBuffer, int nNumberOfBytesToRead, IntByReference pnBytesRead, + IntByReference pnMinNumberOfBytesNeeded); + + /** + * The GetOldestEventLogRecord function retrieves the absolute record number + * of the oldest record in the specified event log. + * + * @param hEventLog Handle to the open event log. This handle is returned by + * the OpenEventLog or OpenBackupEventLog function. + * @param OldestRecord Pointer to a variable that receives the absolute + * record number of the oldest record in the specified event log. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + public boolean GetOldestEventLogRecord(HANDLE hEventLog, IntByReference OldestRecord); + + /** + * Creates a new process and its primary thread. The new process runs in the + * security context of the user represented by the specified token. + * + * Typically, the process that calls the CreateProcessAsUser function must + * have the SE_INCREASE_QUOTA_NAME privilege and may require the + * SE_ASSIGNPRIMARYTOKEN_NAME privilege if the token is not assignable. If + * this function fails with ERROR_PRIVILEGE_NOT_HELD (1314), use the + * CreateProcessWithLogonW function instead. CreateProcessWithLogonW + * requires no special privileges, but the specified user account must be + * allowed to log on interactively. Generally, it is best to use + * CreateProcessWithLogonW to create a process with alternate credentials. + * + * @param hToken A handle to the primary token that represents a user. + * @param lpApplicationName The name of the module to be executed. + * @param lpCommandLine The command line to be executed. + * @param lpProcessAttributes A pointer to a SECURITY_ATTRIBUTES structure + * that specifies a security descriptor for the new process object and + * determines whether child processes can inherit the returned handle to the + * process. + * @param lpThreadAttributes A pointer to a SECURITY_ATTRIBUTES structure + * that specifies a security descriptor for the new thread object and + * determines whether child processes can inherit the returned handle to the + * thread. + * @param bInheritHandles If this parameter is TRUE, each inheritable handle + * in the calling process is inherited by the new process. If the parameter + * is FALSE, the handles are not inherited. Note that inherited handles have + * the same value and access rights as the original handles. + * @param dwCreationFlags The flags that control the priority class and the + * creation of the process. For a list of values, see Process Creation + * Flags. + * @param lpEnvironment A pointer to an environment block for the new + * process. If this parameter is NULL, the new process uses the environment + * of the calling process. + * + * An environment block consists of a null-terminated block of + * null-terminated strings. Each string is in the following form: + * name=value\0 + * @param lpCurrentDirectory The full path to the current directory for the + * process. The string can also specify a UNC path. + * @param lpStartupInfo A pointer to a STARTUPINFO or STARTUPINFOEX + * structure. + * @param lpProcessInformation A pointer to a PROCESS_INFORMATION structure + * that receives identification information about the new process. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + public boolean CreateProcessAsUser( + HANDLE hToken, + String lpApplicationName, + String lpCommandLine, + SECURITY_ATTRIBUTES lpProcessAttributes, + SECURITY_ATTRIBUTES lpThreadAttributes, + boolean bInheritHandles, + int dwCreationFlags, + String lpEnvironment, + String lpCurrentDirectory, + WinBase.STARTUPINFO lpStartupInfo, + WinBase.PROCESS_INFORMATION lpProcessInformation); + + /** + * The AdjustTokenPrivileges function enables or disables privileges in the + * specified access token. Enabling or disabling privileges in an access + * token requires TOKEN_ADJUST_PRIVILEGES access. + * + * @param TokenHandle A handle to the access token that contains the + * privileges to be modified. + * @param DisableAllPrivileges Specifies whether the function disables all + * of the token's privileges. + * @param NewState A pointer to a TOKEN_PRIVILEGES structure that specifies + * an array of privileges and their attributes. + * @param BufferLength Specifies the size, in bytes, of the buffer pointed + * to by the PreviousState parameter. This parameter can be zero if the + * PreviousState parameter is NULL. + * @param PreviousState A pointer to a buffer that the function fills with a + * TOKEN_PRIVILEGES structure that contains the previous state of any + * privileges that the function modifies. + * @param ReturnLength A pointer to a variable that receives the required + * size, in bytes, of the buffer pointed to by the PreviousState parameter. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + public boolean AdjustTokenPrivileges( + HANDLE TokenHandle, + boolean DisableAllPrivileges, + WinNT.TOKEN_PRIVILEGES NewState, + int BufferLength, + WinNT.TOKEN_PRIVILEGES PreviousState, + IntByReference ReturnLength); + + /** + * The LookupPrivilegeName function retrieves the name that corresponds to + * the privilege represented on a specific system by a specified locally + * unique identifier (LUID). + * + * @param lpSystemName A pointer to a null-terminated string that specifies + * the name of the system on which the privilege name is retrieved. If a + * null string is specified, the function attempts to find the privilege + * name on the local system. + * @param lpLuid A pointer to the LUID by which the privilege is known on + * the target system. + * @param lpName A pointer to a buffer that receives a null-terminated + * string that represents the privilege name. For example, this string could + * be "SeSecurityPrivilege". + * @param cchName A pointer to a variable that specifies the size, in a + * TCHAR value, of the lpName buffer. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + public boolean LookupPrivilegeName( + String lpSystemName, + WinNT.LUID lpLuid, + char[] lpName, + IntByReference cchName); + + /** + * The LookupPrivilegeValue function retrieves the locally unique identifier + * (LUID) used on a specified system to locally represent the specified + * privilege name. + * + * @param lpSystemName A pointer to a null-terminated string that specifies + * the name of the system on which the privilege name is retrieved. If a + * null string is specified, the function attempts to find the privilege + * name on the local system. + * @param lpName A pointer to a null-terminated string that specifies the + * name of the privilege, as defined in the Winnt.h header file. For + * example, this parameter could specify the constant, SE_SECURITY_NAME, or + * its corresponding string, "SeSecurityPrivilege". + * @param lpLuid A pointer to a variable that receives the LUID by which the + * privilege is known on the system specified by the lpSystemName parameter. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + public boolean LookupPrivilegeValue( + String lpSystemName, + String lpName, + WinNT.LUID lpLuid); +} diff --git a/src/com/jpexs/javactivex/jna/Advapi32Util.java b/src/com/jpexs/javactivex/jna/Advapi32Util.java new file mode 100644 index 0000000..0f004e9 --- /dev/null +++ b/src/com/jpexs/javactivex/jna/Advapi32Util.java @@ -0,0 +1,966 @@ +package com.jpexs.javactivex.jna; + +/** + * + * @author JPEXS + */ +import com.sun.jna.Memory; +import com.sun.jna.Native; +import com.sun.jna.Pointer; +import com.jpexs.javactivex.jna.WinNT.EVENTLOGRECORD; +import com.jpexs.javactivex.jna.WinReg.HKEY; +import com.jpexs.javactivex.jna.WinReg.HKEYByReference; +import com.sun.jna.ptr.IntByReference; +import java.util.ArrayList; +import java.util.Map; +import java.util.Map.Entry; +import java.util.TreeMap; + +/** + * Advapi32 utility API. + * + * @author dblock[at]dblock.org + */ +public abstract class Advapi32Util { + + /** + * An account. + */ + public static class Account { + + /** + * Account name. + */ + public String name; + /** + * Account domain. + */ + public String domain; + /** + * Account SID. + */ + public byte[] sid; + /** + * String representation of the account SID. + */ + public String sidString; + /** + * Account type, one of SID_NAME_USE. + */ + public int accountType; + /** + * Fully qualified account name. + */ + public String fqn; + } + + /** + * Checks whether a registry key exists. + * + * @param root HKEY_LOCAL_MACHINE, etc. + * @param key Path to the registry key. + * @return True if the key exists. + */ + public static boolean registryKeyExists(HKEY root, String key) { + HKEYByReference phkKey = new HKEYByReference(); + int rc = Advapi32.INSTANCE.RegOpenKeyEx(root, key, 0, WinNT.KEY_READ, phkKey); + switch (rc) { + case W32Errors.ERROR_SUCCESS: + Advapi32.INSTANCE.RegCloseKey(phkKey.getValue()); + return true; + case W32Errors.ERROR_FILE_NOT_FOUND: + return false; + default: + throw new Win32Exception(rc); + } + } + + /** + * Checks whether a registry value exists. + * + * @param root HKEY_LOCAL_MACHINE, etc. + * @param key Registry key path. + * @param value Value name. + * @return True if the value exists. + */ + public static boolean registryValueExists(HKEY root, String key, String value) { + HKEYByReference phkKey = new HKEYByReference(); + int rc = Advapi32.INSTANCE.RegOpenKeyEx(root, key, 0, WinNT.KEY_READ, phkKey); + try { + switch (rc) { + case W32Errors.ERROR_SUCCESS: + break; + case W32Errors.ERROR_FILE_NOT_FOUND: + return false; + default: + throw new Win32Exception(rc); + } + IntByReference lpcbData = new IntByReference(); + IntByReference lpType = new IntByReference(); + rc = Advapi32.INSTANCE.RegQueryValueEx( + phkKey.getValue(), value, 0, lpType, (char[]) null, lpcbData); + switch (rc) { + case W32Errors.ERROR_SUCCESS: + case W32Errors.ERROR_INSUFFICIENT_BUFFER: + return true; + case W32Errors.ERROR_FILE_NOT_FOUND: + return false; + default: + throw new Win32Exception(rc); + } + } finally { + if (phkKey.getValue() != null && phkKey.getValue() != WinBase.INVALID_HANDLE_VALUE) { + rc = Advapi32.INSTANCE.RegCloseKey(phkKey.getValue()); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + } + } + + /** + * Get a registry REG_SZ value. + * + * @param root Root key. + * @param key Registry path. + * @param value Name of the value to retrieve. + * @return String value. + */ + public static String registryGetStringValue(HKEY root, String key, String value) { + HKEYByReference phkKey = new HKEYByReference(); + int rc = Advapi32.INSTANCE.RegOpenKeyEx(root, key, 0, WinNT.KEY_READ, phkKey); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + try { + IntByReference lpcbData = new IntByReference(); + IntByReference lpType = new IntByReference(); + rc = Advapi32.INSTANCE.RegQueryValueEx( + phkKey.getValue(), value, 0, lpType, (char[]) null, lpcbData); + if (rc != W32Errors.ERROR_SUCCESS && rc != W32Errors.ERROR_INSUFFICIENT_BUFFER) { + throw new Win32Exception(rc); + } + if (lpType.getValue() != WinNT.REG_SZ) { + throw new RuntimeException("Unexpected registry type " + lpType.getValue() + ", expected REG_SZ"); + } + char[] data = new char[lpcbData.getValue()]; + rc = Advapi32.INSTANCE.RegQueryValueEx( + phkKey.getValue(), value, 0, lpType, data, lpcbData); + if (rc != W32Errors.ERROR_SUCCESS && rc != W32Errors.ERROR_INSUFFICIENT_BUFFER) { + throw new Win32Exception(rc); + } + return Native.toString(data); + } finally { + rc = Advapi32.INSTANCE.RegCloseKey(phkKey.getValue()); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + } + + /** + * Get a registry REG_EXPAND_SZ value. + * + * @param root Root key. + * @param key Registry path. + * @param value Name of the value to retrieve. + * @return String value. + */ + public static String registryGetExpandableStringValue(HKEY root, String key, String value) { + HKEYByReference phkKey = new HKEYByReference(); + int rc = Advapi32.INSTANCE.RegOpenKeyEx(root, key, 0, WinNT.KEY_READ, phkKey); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + try { + IntByReference lpcbData = new IntByReference(); + IntByReference lpType = new IntByReference(); + rc = Advapi32.INSTANCE.RegQueryValueEx( + phkKey.getValue(), value, 0, lpType, (char[]) null, lpcbData); + if (rc != W32Errors.ERROR_SUCCESS && rc != W32Errors.ERROR_INSUFFICIENT_BUFFER) { + throw new Win32Exception(rc); + } + if (lpType.getValue() != WinNT.REG_EXPAND_SZ) { + throw new RuntimeException("Unexpected registry type " + lpType.getValue() + ", expected REG_SZ"); + } + char[] data = new char[lpcbData.getValue()]; + rc = Advapi32.INSTANCE.RegQueryValueEx( + phkKey.getValue(), value, 0, lpType, data, lpcbData); + if (rc != W32Errors.ERROR_SUCCESS && rc != W32Errors.ERROR_INSUFFICIENT_BUFFER) { + throw new Win32Exception(rc); + } + return Native.toString(data); + } finally { + rc = Advapi32.INSTANCE.RegCloseKey(phkKey.getValue()); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + } + + /** + * Get a registry REG_MULTI_SZ value. + * + * @param root Root key. + * @param key Registry path. + * @param value Name of the value to retrieve. + * @return String value. + */ + public static String[] registryGetStringArray(HKEY root, String key, String value) { + HKEYByReference phkKey = new HKEYByReference(); + int rc = Advapi32.INSTANCE.RegOpenKeyEx(root, key, 0, WinNT.KEY_READ, phkKey); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + try { + IntByReference lpcbData = new IntByReference(); + IntByReference lpType = new IntByReference(); + rc = Advapi32.INSTANCE.RegQueryValueEx( + phkKey.getValue(), value, 0, lpType, (char[]) null, lpcbData); + if (rc != W32Errors.ERROR_SUCCESS && rc != W32Errors.ERROR_INSUFFICIENT_BUFFER) { + throw new Win32Exception(rc); + } + if (lpType.getValue() != WinNT.REG_MULTI_SZ) { + throw new RuntimeException("Unexpected registry type " + lpType.getValue() + ", expected REG_SZ"); + } + Memory data = new Memory(lpcbData.getValue()); + rc = Advapi32.INSTANCE.RegQueryValueEx( + phkKey.getValue(), value, 0, lpType, data, lpcbData); + if (rc != W32Errors.ERROR_SUCCESS && rc != W32Errors.ERROR_INSUFFICIENT_BUFFER) { + throw new Win32Exception(rc); + } + ArrayList result = new ArrayList<>(); + int offset = 0; + while (offset < data.size()) { + String s = data.getString(offset, true); + offset += s.length() * Native.WCHAR_SIZE; + offset += Native.WCHAR_SIZE; + result.add(s); + } + return result.toArray(new String[result.size()]); + } finally { + rc = Advapi32.INSTANCE.RegCloseKey(phkKey.getValue()); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + } + + /** + * Get a registry REG_BINARY value. + * + * @param root Root key. + * @param key Registry path. + * @param value Name of the value to retrieve. + * @return String value. + */ + public static byte[] registryGetBinaryValue(HKEY root, String key, String value) { + HKEYByReference phkKey = new HKEYByReference(); + int rc = Advapi32.INSTANCE.RegOpenKeyEx(root, key, 0, WinNT.KEY_READ, phkKey); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + try { + IntByReference lpcbData = new IntByReference(); + IntByReference lpType = new IntByReference(); + rc = Advapi32.INSTANCE.RegQueryValueEx( + phkKey.getValue(), value, 0, lpType, (char[]) null, lpcbData); + if (rc != W32Errors.ERROR_SUCCESS && rc != W32Errors.ERROR_INSUFFICIENT_BUFFER) { + throw new Win32Exception(rc); + } + if (lpType.getValue() != WinNT.REG_BINARY) { + throw new RuntimeException("Unexpected registry type " + lpType.getValue() + ", expected REG_BINARY"); + } + byte[] data = new byte[lpcbData.getValue()]; + rc = Advapi32.INSTANCE.RegQueryValueEx( + phkKey.getValue(), value, 0, lpType, data, lpcbData); + if (rc != W32Errors.ERROR_SUCCESS && rc != W32Errors.ERROR_INSUFFICIENT_BUFFER) { + throw new Win32Exception(rc); + } + return data; + } finally { + rc = Advapi32.INSTANCE.RegCloseKey(phkKey.getValue()); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + } + + /** + * Get a registry DWORD value. + * + * @param root Root key. + * @param key Registry key path. + * @param value Name of the value to retrieve. + * @return Integer value. + */ + public static int registryGetIntValue(HKEY root, String key, String value) { + HKEYByReference phkKey = new HKEYByReference(); + int rc = Advapi32.INSTANCE.RegOpenKeyEx(root, key, 0, WinNT.KEY_READ, phkKey); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + try { + IntByReference lpcbData = new IntByReference(); + IntByReference lpType = new IntByReference(); + rc = Advapi32.INSTANCE.RegQueryValueEx( + phkKey.getValue(), value, 0, lpType, (char[]) null, lpcbData); + if (rc != W32Errors.ERROR_SUCCESS && rc != W32Errors.ERROR_INSUFFICIENT_BUFFER) { + throw new Win32Exception(rc); + } + if (lpType.getValue() != WinNT.REG_DWORD) { + throw new RuntimeException("Unexpected registry type " + lpType.getValue() + ", expected REG_SZ"); + } + IntByReference data = new IntByReference(); + rc = Advapi32.INSTANCE.RegQueryValueEx( + phkKey.getValue(), value, 0, lpType, data, lpcbData); + if (rc != W32Errors.ERROR_SUCCESS && rc != W32Errors.ERROR_INSUFFICIENT_BUFFER) { + throw new Win32Exception(rc); + } + return data.getValue(); + } finally { + rc = Advapi32.INSTANCE.RegCloseKey(phkKey.getValue()); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + } + + /** + * Create a registry key. + * + * @param hKey Parent key. + * @param keyName Key name. + * @return True if the key was created, false otherwise. + */ + public static boolean registryCreateKey(HKEY hKey, String keyName) { + HKEYByReference phkResult = new HKEYByReference(); + IntByReference lpdwDisposition = new IntByReference(); + int rc = Advapi32.INSTANCE.RegCreateKeyEx(hKey, keyName, 0, null, WinNT.REG_OPTION_NON_VOLATILE, + WinNT.KEY_READ, null, phkResult, lpdwDisposition); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + rc = Advapi32.INSTANCE.RegCloseKey(phkResult.getValue()); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + return WinNT.REG_CREATED_NEW_KEY == lpdwDisposition.getValue(); + } + + /** + * Create a registry key. + * + * @param root Root key. + * @param parentPath Path to an existing registry key. + * @param keyName Key name. + * @return True if the key was created, false otherwise. + */ + public static boolean registryCreateKey(HKEY root, String parentPath, String keyName) { + HKEYByReference phkKey = new HKEYByReference(); + int rc = Advapi32.INSTANCE.RegOpenKeyEx(root, parentPath, 0, WinNT.KEY_CREATE_SUB_KEY, phkKey); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + try { + return registryCreateKey(phkKey.getValue(), keyName); + } finally { + rc = Advapi32.INSTANCE.RegCloseKey(phkKey.getValue()); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + } + + /** + * Set an integer value in registry. + * + * @param hKey Parent key. + * @param name Value name. + * @param value Value to write to registry. + */ + public static void registrySetIntValue(HKEY hKey, String name, int value) { + byte[] data = new byte[4]; + data[0] = (byte) (value & 0xff); + data[1] = (byte) ((value >> 8) & 0xff); + data[2] = (byte) ((value >> 16) & 0xff); + data[3] = (byte) ((value >> 24) & 0xff); + int rc = Advapi32.INSTANCE.RegSetValueEx(hKey, name, 0, WinNT.REG_DWORD, data, 4); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + + /** + * Set an integer value in registry. + * + * @param root Root key. + * @param keyPath Path to an existing registry key. + * @param name Value name. + * @param value Value to write to registry. + */ + public static void registrySetIntValue(HKEY root, String keyPath, String name, int value) { + HKEYByReference phkKey = new HKEYByReference(); + int rc = Advapi32.INSTANCE.RegOpenKeyEx(root, keyPath, 0, WinNT.KEY_READ | WinNT.KEY_WRITE, phkKey); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + try { + registrySetIntValue(phkKey.getValue(), name, value); + } finally { + rc = Advapi32.INSTANCE.RegCloseKey(phkKey.getValue()); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + } + + /** + * Set a string value in registry. + * + * @param hKey Parent key. + * @param name Value name. + * @param value Value to write to registry. + */ + public static void registrySetStringValue(HKEY hKey, String name, String value) { + char[] data = Native.toCharArray(value); + int rc = Advapi32.INSTANCE.RegSetValueEx(hKey, name, 0, WinNT.REG_SZ, + data, data.length * Native.WCHAR_SIZE); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + + /** + * Set a string value in registry. + * + * @param root Root key. + * @param keyPath Path to an existing registry key. + * @param name Value name. + * @param value Value to write to registry. + */ + public static void registrySetStringValue(HKEY root, String keyPath, String name, String value) { + HKEYByReference phkKey = new HKEYByReference(); + int rc = Advapi32.INSTANCE.RegOpenKeyEx(root, keyPath, 0, WinNT.KEY_READ | WinNT.KEY_WRITE, phkKey); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + try { + registrySetStringValue(phkKey.getValue(), name, value); + } finally { + rc = Advapi32.INSTANCE.RegCloseKey(phkKey.getValue()); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + } + + /** + * Set an expandable string value in registry. + * + * @param hKey Parent key. + * @param name Value name. + * @param value Value to write to registry. + */ + public static void registrySetExpandableStringValue(HKEY hKey, String name, String value) { + char[] data = Native.toCharArray(value); + int rc = Advapi32.INSTANCE.RegSetValueEx(hKey, name, 0, WinNT.REG_EXPAND_SZ, + data, data.length * Native.WCHAR_SIZE); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + + /** + * Set a string value in registry. + * + * @param root Root key. + * @param keyPath Path to an existing registry key. + * @param name Value name. + * @param value Value to write to registry. + */ + public static void registrySetExpandableStringValue(HKEY root, String keyPath, String name, String value) { + HKEYByReference phkKey = new HKEYByReference(); + int rc = Advapi32.INSTANCE.RegOpenKeyEx(root, keyPath, 0, WinNT.KEY_READ | WinNT.KEY_WRITE, phkKey); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + try { + registrySetExpandableStringValue(phkKey.getValue(), name, value); + } finally { + rc = Advapi32.INSTANCE.RegCloseKey(phkKey.getValue()); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + } + + /** + * Set a string array value in registry. + * + * @param hKey Parent key. + * @param name Name. + * @param arr Array of strings to write to registry. + */ + public static void registrySetStringArray(HKEY hKey, String name, String[] arr) { + int size = 0; + for (String s : arr) { + size += s.length() * Native.WCHAR_SIZE; + size += Native.WCHAR_SIZE; + } + + int offset = 0; + Memory data = new Memory(size); + for (String s : arr) { + data.setString(offset, s, true); + offset += s.length() * Native.WCHAR_SIZE; + offset += Native.WCHAR_SIZE; + } + + int rc = Advapi32.INSTANCE.RegSetValueEx(hKey, name, 0, WinNT.REG_MULTI_SZ, + data.getByteArray(0, size), size); + + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + + /** + * Set a string array value in registry. + * + * @param root Root key. + * @param keyPath Path to an existing registry key. + * @param name Value name. + * @param arr Array of strings to write to registry. + */ + public static void registrySetStringArray(HKEY root, String keyPath, String name, String[] arr) { + HKEYByReference phkKey = new HKEYByReference(); + int rc = Advapi32.INSTANCE.RegOpenKeyEx(root, keyPath, 0, WinNT.KEY_READ | WinNT.KEY_WRITE, phkKey); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + try { + registrySetStringArray(phkKey.getValue(), name, arr); + } finally { + rc = Advapi32.INSTANCE.RegCloseKey(phkKey.getValue()); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + } + + /** + * Set a binary value in registry. + * + * @param hKey Parent key. + * @param name Value name. + * @param data Data to write to registry. + */ + public static void registrySetBinaryValue(HKEY hKey, String name, byte[] data) { + int rc = Advapi32.INSTANCE.RegSetValueEx(hKey, name, 0, WinNT.REG_BINARY, data, data.length); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + + /** + * Set a binary value in registry. + * + * @param root Root key. + * @param keyPath Path to an existing registry key. + * @param name Value name. + * @param data Data to write to registry. + */ + public static void registrySetBinaryValue(HKEY root, String keyPath, String name, byte[] data) { + HKEYByReference phkKey = new HKEYByReference(); + int rc = Advapi32.INSTANCE.RegOpenKeyEx(root, keyPath, 0, WinNT.KEY_READ | WinNT.KEY_WRITE, phkKey); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + try { + registrySetBinaryValue(phkKey.getValue(), name, data); + } finally { + rc = Advapi32.INSTANCE.RegCloseKey(phkKey.getValue()); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + } + + /** + * Delete a registry key. + * + * @param hKey Parent key. + * @param keyName Name of the key to delete. + */ + public static void registryDeleteKey(HKEY hKey, String keyName) { + int rc = Advapi32.INSTANCE.RegDeleteKey(hKey, keyName); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + + /** + * Delete a registry key. + * + * @param root Root key. + * @param keyPath Path to an existing registry key. + * @param keyName Name of the key to delete. + */ + public static void registryDeleteKey(HKEY root, String keyPath, String keyName) { + HKEYByReference phkKey = new HKEYByReference(); + int rc = Advapi32.INSTANCE.RegOpenKeyEx(root, keyPath, 0, WinNT.KEY_READ | WinNT.KEY_WRITE, phkKey); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + try { + registryDeleteKey(phkKey.getValue(), keyName); + } finally { + rc = Advapi32.INSTANCE.RegCloseKey(phkKey.getValue()); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + } + + /** + * Delete a registry value. + * + * @param hKey Parent key. + * @param valueName Name of the value to delete. + */ + public static void registryDeleteValue(HKEY hKey, String valueName) { + int rc = Advapi32.INSTANCE.RegDeleteValue(hKey, valueName); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + + /** + * Delete a registry value. + * + * @param root Root key. + * @param keyPath Path to an existing registry key. + * @param valueName Name of the value to delete. + */ + public static void registryDeleteValue(HKEY root, String keyPath, String valueName) { + HKEYByReference phkKey = new HKEYByReference(); + int rc = Advapi32.INSTANCE.RegOpenKeyEx(root, keyPath, 0, WinNT.KEY_READ | WinNT.KEY_WRITE, phkKey); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + try { + registryDeleteValue(phkKey.getValue(), valueName); + } finally { + rc = Advapi32.INSTANCE.RegCloseKey(phkKey.getValue()); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + } + + /** + * Get names of the registry key's sub-keys. + * + * @param hKey Registry key. + * @return Array of registry key names. + */ + public static String[] registryGetKeys(HKEY hKey) { + IntByReference lpcSubKeys = new IntByReference(); + IntByReference lpcMaxSubKeyLen = new IntByReference(); + int rc = Advapi32.INSTANCE.RegQueryInfoKey(hKey, null, null, null, + lpcSubKeys, lpcMaxSubKeyLen, null, null, null, null, null, null); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + ArrayList keys = new ArrayList<>(lpcSubKeys.getValue()); + char[] name = new char[lpcMaxSubKeyLen.getValue() + 1]; + for (int i = 0; i < lpcSubKeys.getValue(); i++) { + IntByReference lpcchValueName = new IntByReference(lpcMaxSubKeyLen.getValue() + 1); + rc = Advapi32.INSTANCE.RegEnumKeyEx(hKey, i, name, lpcchValueName, + null, null, null, null); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + keys.add(Native.toString(name)); + } + return keys.toArray(new String[keys.size()]); + } + + /** + * Get names of the registry key's sub-keys. + * + * @param root Root key. + * @param keyPath Path to a registry key. + * @return Array of registry key names. + */ + public static String[] registryGetKeys(HKEY root, String keyPath) { + HKEYByReference phkKey = new HKEYByReference(); + int rc = Advapi32.INSTANCE.RegOpenKeyEx(root, keyPath, 0, WinNT.KEY_READ, phkKey); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + try { + return registryGetKeys(phkKey.getValue()); + } finally { + rc = Advapi32.INSTANCE.RegCloseKey(phkKey.getValue()); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + } + + /** + * Get a table of registry values. + * + * @param hKey Registry key. + * @return Table of values. + */ + public static TreeMap registryGetValues(HKEY hKey) { + IntByReference lpcValues = new IntByReference(); + IntByReference lpcMaxValueNameLen = new IntByReference(); + IntByReference lpcMaxValueLen = new IntByReference(); + int rc = Advapi32.INSTANCE.RegQueryInfoKey(hKey, null, null, null, null, + null, null, lpcValues, lpcMaxValueNameLen, lpcMaxValueLen, null, null); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + TreeMap keyValues = new TreeMap<>(); + char[] name = new char[lpcMaxValueNameLen.getValue() + 1]; + byte[] data = new byte[lpcMaxValueLen.getValue()]; + for (int i = 0; i < lpcValues.getValue(); i++) { + IntByReference lpcchValueName = new IntByReference(lpcMaxValueNameLen.getValue() + 1); + IntByReference lpcbData = new IntByReference(lpcMaxValueLen.getValue()); + IntByReference lpType = new IntByReference(); + rc = Advapi32.INSTANCE.RegEnumValue(hKey, i, name, lpcchValueName, null, + lpType, data, lpcbData); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + + String nameString = Native.toString(name); + + Memory byteData = new Memory(lpcbData.getValue()); + byteData.write(0, data, 0, lpcbData.getValue()); + + switch (lpType.getValue()) { + case WinNT.REG_DWORD: { + keyValues.put(nameString, byteData.getInt(0)); + break; + } + case WinNT.REG_SZ: + case WinNT.REG_EXPAND_SZ: { + keyValues.put(nameString, byteData.getString(0, true)); + break; + } + case WinNT.REG_BINARY: { + keyValues.put(nameString, byteData.getByteArray(0, lpcbData.getValue())); + break; + } + case WinNT.REG_MULTI_SZ: { + Memory stringData = new Memory(lpcbData.getValue()); + stringData.write(0, data, 0, lpcbData.getValue()); + ArrayList result = new ArrayList<>(); + int offset = 0; + while (offset < stringData.size()) { + String s = stringData.getString(offset, true); + offset += s.length() * Native.WCHAR_SIZE; + offset += Native.WCHAR_SIZE; + result.add(s); + } + keyValues.put(nameString, result.toArray(new String[result.size()])); + break; + } + default: + throw new RuntimeException("Unsupported type: " + lpType.getValue()); + } + } + return keyValues; + } + + /** + * Get a table of registry values. + * + * @param root Registry root. + * @param keyPath Regitry key path. + * @return Table of values. + */ + public static TreeMap registryGetValues(HKEY root, String keyPath) { + HKEYByReference phkKey = new HKEYByReference(); + int rc = Advapi32.INSTANCE.RegOpenKeyEx(root, keyPath, 0, WinNT.KEY_READ, phkKey); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + try { + return registryGetValues(phkKey.getValue()); + } finally { + rc = Advapi32.INSTANCE.RegCloseKey(phkKey.getValue()); + if (rc != W32Errors.ERROR_SUCCESS) { + throw new Win32Exception(rc); + } + } + } + + /** + * Converts a map of environment variables to an environment block suitable + * for {@link Advapi32#CreateProcessAsUser}. This environment block consists + * of null-terminated blocks of null-terminated strings. Each string is in + * the following form: name=value\0 + * + * @param environment Environment variables + * @return A environment block + */ + public static String getEnvironmentBlock(Map environment) { + StringBuilder out = new StringBuilder(); + for (Entry entry : environment.entrySet()) { + if (entry.getValue() != null) { + out.append(entry.getKey()).append("=").append(entry.getValue()).append("\0"); + } + } + return out.toString() + "\0"; + } + + /** + * Event log types. + */ + public static enum EventLogType { + + Error, + Warning, + Informational, + AuditSuccess, + AuditFailure + } + + /** + * An event log record. + */ + public static class EventLogRecord { + + private EVENTLOGRECORD _record = null; + private final String _source; + private byte[] _data; + private String[] _strings; + + /** + * Raw record data. + * + * @return EVENTLOGRECORD. + */ + public EVENTLOGRECORD getRecord() { + return _record; + } + + /** + * Event Id. + * + * @return Integer. + */ + public int getEventId() { + return _record.EventID.intValue(); + } + + /** + * Event source. + * + * @return String. + */ + public String getSource() { + return _source; + } + + /** + * Status code for the facility, part of the Event ID. + * + * @return Status code. + */ + public int getStatusCode() { + return _record.EventID.intValue() & 0xFFFF; + } + + /** + * Record number of the record. This value can be used with the + * EVENTLOG_SEEK_READ flag in the ReadEventLog function to begin reading + * at a specified record. + * + * @return Integer. + */ + public int getRecordNumber() { + return _record.RecordNumber.intValue(); + } + + /** + * Record length, with data. + * + * @return Number of bytes in the record including data. + */ + public int getLength() { + return _record.Length.intValue(); + } + + /** + * Strings associated with this event. + * + * @return Array of strings or null. + */ + public String[] getStrings() { + return _strings; + } + + /** + * Event log type. + * + * @return Event log type. + */ + public EventLogType getType() { + switch (_record.EventType.intValue()) { + case WinNT.EVENTLOG_SUCCESS: + case WinNT.EVENTLOG_INFORMATION_TYPE: + return EventLogType.Informational; + case WinNT.EVENTLOG_AUDIT_FAILURE: + return EventLogType.AuditFailure; + case WinNT.EVENTLOG_AUDIT_SUCCESS: + return EventLogType.AuditSuccess; + case WinNT.EVENTLOG_ERROR_TYPE: + return EventLogType.Error; + case WinNT.EVENTLOG_WARNING_TYPE: + return EventLogType.Warning; + default: + throw new RuntimeException("Invalid type: " + _record.EventType.intValue()); + } + } + + /** + * Raw data associated with the record. + * + * @return Array of bytes or null. + */ + public byte[] getData() { + return _data; + } + + public EventLogRecord(Pointer pevlr) { + _record = new EVENTLOGRECORD(pevlr); + _source = pevlr.getString(_record.size(), true); + // data + if (_record.DataLength.intValue() > 0) { + _data = pevlr.getByteArray(_record.DataOffset.intValue(), + _record.DataLength.intValue()); + } + // strings + if (_record.NumStrings.intValue() > 0) { + ArrayList strings = new ArrayList<>(); + int count = _record.NumStrings.intValue(); + long offset = _record.StringOffset.intValue(); + while (count > 0) { + String s = pevlr.getString(offset, true); + strings.add(s); + offset += s.length() * Native.WCHAR_SIZE; + offset += Native.WCHAR_SIZE; + count--; + } + _strings = strings.toArray(new String[strings.size()]); + } + } + } +} diff --git a/src/com/jpexs/javactivex/jna/BaseTSD.java b/src/com/jpexs/javactivex/jna/BaseTSD.java new file mode 100644 index 0000000..3dbf1c8 --- /dev/null +++ b/src/com/jpexs/javactivex/jna/BaseTSD.java @@ -0,0 +1,124 @@ +package com.jpexs.javactivex.jna; + +import com.sun.jna.IntegerType; +import com.sun.jna.Pointer; +import com.sun.jna.ptr.ByReference; +import com.sun.jna.win32.StdCallLibrary; + +/** + * Based on basetsd.h (various types) + * + * @author dblock[at]dblock[dot]org + */ +@SuppressWarnings("serial") +public interface BaseTSD extends StdCallLibrary { + + /** + * Signed long type for pointer precision. Use when casting a pointer to a + * long to perform pointer arithmetic. + */ + public static class LONG_PTR extends IntegerType { + + public LONG_PTR() { + this(0); + } + + public LONG_PTR(long value) { + super(Pointer.SIZE, value); + } + + public Pointer toPointer() { + return Pointer.createConstant(longValue()); + } + } + + /** + * Signed SIZE_T. + */ + public static class SSIZE_T extends LONG_PTR { + + public SSIZE_T() { + this(0); + } + + public SSIZE_T(long value) { + super(value); + } + } + + /** + * Unsigned LONG_PTR. + */ + public static class ULONG_PTR extends IntegerType { + + public ULONG_PTR() { + this(0); + } + + public ULONG_PTR(long value) { + super(Pointer.SIZE, value, true); + } + + public Pointer toPointer() { + return Pointer.createConstant(longValue()); + } + } + + /** + * PULONG_PTR + */ + public static final class ULONG_PTRByReference extends ByReference { + + public ULONG_PTRByReference() { + this(new ULONG_PTR(0)); + } + + public ULONG_PTRByReference(ULONG_PTR value) { + super(Pointer.SIZE); + setValue(value); + } + + public void setValue(ULONG_PTR value) { + if (Pointer.SIZE == 4) { + getPointer().setInt(0, value.intValue()); + } else { + getPointer().setLong(0, value.longValue()); + } + } + + public ULONG_PTR getValue() { + return new ULONG_PTR(Pointer.SIZE == 4 + ? getPointer().getInt(0) + : getPointer().getLong(0)); + } + } + + /** + * Unsigned DWORD_PTR. + */ + public static class DWORD_PTR extends IntegerType { + + public DWORD_PTR() { + this(0); + } + + public DWORD_PTR(long value) { + super(Pointer.SIZE, value); + } + } + + /** + * The maximum number of bytes to which a pointer can point. Use for a count + * that must span the full range of a pointer. + */ + public static class SIZE_T extends ULONG_PTR { + + public SIZE_T() { + this(0); + } + + public SIZE_T(long value) { + super(value); + } + } +} diff --git a/src/com/jpexs/javactivex/jna/Gdi32.java b/src/com/jpexs/javactivex/jna/Gdi32.java new file mode 100644 index 0000000..0f2a9a9 --- /dev/null +++ b/src/com/jpexs/javactivex/jna/Gdi32.java @@ -0,0 +1,316 @@ +package com.jpexs.javactivex.jna; + +import com.sun.jna.Native; +import com.sun.jna.Pointer; +import com.sun.jna.Structure; +import com.jpexs.javactivex.jna.WinDef.DWORD; +import com.jpexs.javactivex.jna.WinDef.HBITMAP; +import com.jpexs.javactivex.jna.WinDef.HDC; +import com.jpexs.javactivex.jna.WinDef.HRGN; +import com.jpexs.javactivex.jna.WinGDI.BITMAPINFO; +import com.jpexs.javactivex.jna.WinGDI.BITMAPINFOHEADER; +import com.jpexs.javactivex.jna.WinGDI.RGNDATA; +import com.jpexs.javactivex.jna.WinNT.HANDLE; +import com.sun.jna.ptr.PointerByReference; +import com.sun.jna.win32.StdCallLibrary; +import com.sun.jna.win32.W32APIOptions; + +/** + * Definition (incomplete) of gdi32.dll. + */ +public interface Gdi32 extends StdCallLibrary { + + Gdi32 INSTANCE = (Gdi32) Native.loadLibrary("gdi32", Gdi32.class, + W32APIOptions.DEFAULT_OPTIONS); + + /** + * The ExtCreateRegion function creates a region from the specified region + * and transformation data. + * + * @param lpXform Pointer to an XFORM structure that defines the + * transformation to be performed on the region. If this pointer is NULL, + * the identity transformation is used. + * @param nCount Specifies the number of bytes pointed to by lpRgnData. + * @param lpRgnData Pointer to a RGNDATA structure that contains the region + * data in logical units. + * @return If the function succeeds, the return value is the value of the + * region. If the function fails, the return value is NULL. To get extended + * error information, call GetLastError. + */ + public HRGN ExtCreateRegion(Pointer lpXform, int nCount, RGNDATA lpRgnData); + + /** + * The CombineRgn function combines two regions and stores the result in a + * third region. The two regions are combined according to the specified + * mode. + * + * @param hrgnDest Handle to a new region with dimensions defined by + * combining two other regions. + * @param hrgnSrc1 Handle to the first of two regions to be combined. + * @param hrgnSrc2 Handle to the second of two regions to be combined. + * @param fnCombineMode Specifies a mode indicating how the two regions will + * be combined. + * @return The return value specifies the type of the resulting region. + */ + int CombineRgn(HRGN hrgnDest, HRGN hrgnSrc1, HRGN hrgnSrc2, + int fnCombineMode); + + /** + * The CreateRectRgn function creates a rectangular region. + * + * @param nLeftRect Specifies the x-coordinate of the upper-left corner of + * the region in logical units. + * @param nTopRect Specifies the y-coordinate of the upper-left corner of + * the region in logical units. + * @param nRightRect Specifies the x-coordinate of the lower-right corner of + * the region in logical units. + * @param nBottomRect Specifies the y-coordinate of the lower-right corner + * of the region in logical units. + * @return If the function succeeds, the return value is the handle to the + * region. If the function fails, the return value is NULL. To get extended + * error information, call GetLastError. + */ + HRGN CreateRectRgn(int nLeftRect, int nTopRect, int nRightRect, + int nBottomRect); + + /** + * The CreateRoundRectRgn function creates a rectangular region with rounded + * corners. + * + * @param nLeftRect Specifies the x-coordinate of the upper-left corner of + * the region in logical units. + * @param nTopRect Specifies the y-coordinate of the upper-left corner of + * the region in logical units. + * @param nRightRect Specifies the x-coordinate of the lower-right corner of + * the region in logical units. + * @param nBottomRect Specifies the y-coordinate of the lower-right corner + * of the region in logical units. + * @param nWidthEllipse Specifies the width of the ellipse used to create + * the rounded corners in logical units. + * @param nHeightEllipse Specifies the height of the ellipse used to create + * the rounded corners in logical units. + * @return If the function succeeds, the return value is the handle to the + * region. If the function fails, the return value is NULL. To get extended + * error information, call GetLastError. + */ + HRGN CreateRoundRectRgn(int nLeftRect, int nTopRect, int nRightRect, + int nBottomRect, int nWidthEllipse, int nHeightEllipse); + + /** + * The CreatePolyPolygonRgn function creates a region consisting of a series + * of polygons. The polygons can overlap. + * + * @param lppt Pointer to an array of POINT structures that define the + * vertices of the polygons in logical units. The polygons are specified + * consecutively. Each polygon is presumed closed and each vertex is + * specified only once. + * @param lpPolyCounts Pointer to an array of integers, each of which + * specifies the number of points in one of the polygons in the array + * pointed to by lppt. + * @param nCount Specifies the total number of integers in the array pointed + * to by lpPolyCounts. + * @param fnPolyFillMode Specifies the fill mode used to determine which + * pixels are in the region. + * @return If the function succeeds, the return value is the handle to the + * region. If the function fails, the return value is zero. To get extended + * error information, call GetLastError. + */ + HRGN CreatePolyPolygonRgn(WinUser.POINT[] lppt, int[] lpPolyCounts, + int nCount, int fnPolyFillMode); + + /** + * The SetRectRgn function converts a region into a rectangular region with + * the specified coordinates. + * + * @param hrgn Handle to the region. + * @param nLeftRect Specifies the x-coordinate of the upper-left corner of + * the rectangular region in logical units. + * @param nTopRect Specifies the y-coordinate of the upper-left corner of + * the rectangular region in logical units. + * @param nRightRect Specifies the x-coordinate of the lower-right corner of + * the rectangular region in logical units. + * @param nBottomRect Specifies the y-coordinate of the lower-right corner + * of the rectangular region in logical units. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + boolean SetRectRgn(HRGN hrgn, int nLeftRect, int nTopRect, int nRightRect, + int nBottomRect); + + /** + * The SetPixel function sets the pixel at the specified coordinates to the + * specified color. + * + * @param hDC Handle to the device context. + * @param x Specifies the x-coordinate, in logical units, of the point to be + * set. + * @param y Specifies the y-coordinate, in logical units, of the point to be + * set. + * @param crColor Specifies the color to be used to paint the point. To + * create a COLORREF color value, use the RGB macro. + * @return If the function succeeds, the return value is the RGB value that + * the function sets the pixel to. This value may differ from the color + * specified by crColor; that occurs when an exact match for the specified + * color cannot be found. If the function fails, the return value is 1. To + * get extended error information, call GetLastError. This can be the + * following value. + */ + int SetPixel(HDC hDC, int x, int y, int crColor); + + /** + * The CreateCompatibleDC function creates a memory device context (DC) + * compatible with the specified device. + * + * @param hDC Handle to an existing DC. If this handle is NULL, the function + * creates a memory DC compatible with the application's current screen. + * @return If the function succeeds, the return value is the handle to a + * memory DC. If the function fails, the return value is NULL. To get + * extended error information, call GetLastError. + */ + HDC CreateCompatibleDC(HDC hDC); + + /** + * The DeleteDC function deletes the specified device context (DC). + * + * @param hDC Handle to the device context. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + boolean DeleteDC(HDC hDC); + + /** + * The CreateDIBitmap function creates a compatible bitmap (DDB) from a DIB + * and, optionally, sets the bitmap bits. + * + * @param hDC Handle to a device context. + * @param lpbmih Pointer to a bitmap information header structure, which may + * be one of those shown in the following table. + * @param fdwInit Specifies how the system initializes the bitmap bits. + * @param lpbInit Pointer to an array of bytes containing the initial bitmap + * data. + * @param lpbmi Pointer to a BITMAPINFO structure that describes the + * dimensions and color format of the array pointed to by the lpbInit + * parameter. + * @param fuUsage Specifies whether the bmiColors member of the BITMAPINFO + * structure was initialized and, if so, whether bmiColors contains explicit + * red, green, blue (RGB) values or palette indexes. The fuUsage parameter + * must be one of the following values. + * @return If the function succeeds, the return value is a handle to the + * compatible bitmap. If the function fails, the return value is NULL. To + * get extended error information, call GetLastError. + */ + HBITMAP CreateDIBitmap(HDC hDC, BITMAPINFOHEADER lpbmih, int fdwInit, + Pointer lpbInit, BITMAPINFO lpbmi, int fuUsage); + + /** + * The CreateDIBSection function creates a DIB that applications can write + * to directly. The function gives you a pointer to the location of the + * bitmap bit values. You can supply a handle to a file-mapping object that + * the function will use to create the bitmap, or you can let the system + * allocate the memory for the bitmap. + * + * @param hDC Handle to a device context. If the value of iUsage is + * DIB_PAL_COLORS, the function uses this device context's logical palette + * to initialize the DIB colors. + * @param pbmi Pointer to a BITMAPINFO structure that specifies various + * attributes of the DIB, including the bitmap dimensions and colors. + * @param iUsage Specifies the type of data contained in the bmiColors array + * member of the BITMAPINFO structure pointed to by pbmi (either logical + * palette indexes or literal RGB values). + * @param ppvBits Pointer to a variable that receives a pointer to the + * location of the DIB bit values. + * @param hSection Handle to a file-mapping object that the function will + * use to create the DIB. This parameter can be NULL. + * @param dwOffset Specifies the offset from the beginning of the + * file-mapping object referenced by hSection where storage for the bitmap + * bit values is to begin. + * @return Specifies the offset from the beginning of the file-mapping + * object referenced by hSection where storage for the bitmap bit values is + * to begin. + */ + HBITMAP CreateDIBSection(HDC hDC, BITMAPINFO pbmi, int iUsage, + PointerByReference ppvBits, Pointer hSection, int dwOffset); + + /** + * The CreateCompatibleBitmap function creates a bitmap compatible with the + * device that is associated with the specified device context. + * + * @param hDC Handle to a device context. + * @param width Specifies the bitmap width, in pixels. + * @param height Specifies the bitmap height, in pixels. + * @return If the function succeeds, the return value is a handle to the + * compatible bitmap (DDB). If the function fails, the return value is NULL. + * To get extended error information, call GetLastError. + */ + HBITMAP CreateCompatibleBitmap(HDC hDC, int width, int height); + + /** + * The SelectObject function selects an object into the specified device + * context (DC). The new object replaces the previous object of the same + * type. + * + * @param hDC Handle to the DC. + * @param hGDIObj Handle to the object to be selected. + * @return If the selected object is not a region and the function succeeds, + * the return value is a handle to the object being replaced. If the + * selected object is a region and the function succeeds, the return value + * is one of the REGION values. + */ + HANDLE SelectObject(HDC hDC, HANDLE hGDIObj); + + /** + * The DeleteObject function deletes a logical pen, brush, font, bitmap, + * region, or palette, freeing all system resources associated with the + * object. After the object is deleted, the specified handle is no longer + * valid. + * + * @param hObject Handle to a logical pen, brush, font, bitmap, region, or + * palette. + * @return If the function succeeds, the return value is nonzero. If the + * specified handle is not valid or is currently selected into a DC, the + * return value is zero. To get extended error information, call + * GetLastError. + */ + boolean DeleteObject(HANDLE hObject); + + /** + * The GetDeviceCaps function retrieves device-specific information for the + * specified device. + * + * @param hdc A handle to the DC. + * @param nIndex The item to be returned. + * @return The return value specifies the value of the desired item. When + * nIndex is BITSPIXEL and the device has 15bpp or + * 16bpp, the return value is 16. + */ + int GetDeviceCaps(HDC hdc, int nIndex); + + /** + * The GetDIBits function retrieves the bits fo the specified compatible + * bitmap and copies them into a buffer as a DIB using the specified format. + * + * @param hdc A handle to the device context. + * @param hbmp A handle to the bitmap. This must be a compatible bitmap + * (DDB). + * @param uStartScan The first scan line to retrieve + * @param cScanLines The number of scan lines to retrieve. + * @param lpvBits A pointer to a buffer to receive the bitmap data. If this + * parameter is null, the function passes the dimensions and + * format of the bitmap to the {@link BITMAPINFO} structure pointed to by + * the lpbi parameter. + * @param lpbi A pointer to a {@link BITMAPINFO} structure that specifies + * the desired format for the DIB data. + * @param uUsage The format of the bmiColors member of the {@link + * BITMAPINFO} structure. + * @return + */ + int GetDIBits(HDC hdc, HBITMAP hbmp, int uStartScan, int cScanLines, Pointer lpvBits, BITMAPINFO lpbi, int uUsage); + + int GetObject(HANDLE hgdiobj, int cbBuffer, Structure lpvObject); + + DWORD GetPixel(HDC hdc, int nXPos, int nYPos); + + HANDLE CreateSolidBrush(DWORD crColor); +} diff --git a/src/com/jpexs/javactivex/jna/Kernel32.java b/src/com/jpexs/javactivex/jna/Kernel32.java new file mode 100644 index 0000000..49b4734 --- /dev/null +++ b/src/com/jpexs/javactivex/jna/Kernel32.java @@ -0,0 +1,271 @@ +/* Copyright (c) 2007 Timothy Wall, All Rights Reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + *

+ * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + */ +package com.jpexs.javactivex.jna; + +import com.sun.jna.Native; +import com.sun.jna.NativeLong; +import com.sun.jna.Pointer; +import com.sun.jna.ptr.IntByReference; +import com.sun.jna.ptr.NativeLongByReference; +import com.sun.jna.win32.W32APIOptions; + +// TODO: Auto-generated Javadoc +/** + * Interface definitions for kernel32.dll. Includes additional + * alternate mappings from {@link WinNT} which make use of NIO buffers. + */ +public interface Kernel32 extends WinNT { + + /** + * The instance. + */ + Kernel32 INSTANCE = (Kernel32) Native.loadLibrary("kernel32", + Kernel32.class, W32APIOptions.UNICODE_OPTIONS); + + /** + * The CloseHandle function closes an open object handle. + * + * @param hObject Handle to an open object. This parameter can be a pseudo + * handle or INVALID_HANDLE_VALUE. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + boolean CloseHandle(HANDLE hObject); + + /** + * Terminates the specified process and all of its threads. + * + * @param hProcess A handle to the process to be terminated. + * @param uExitCode The exit code to be used by the process and threads + * terminated as a result of this call. + * @return If the function succeeds, the return value is nonzero. + * + * If the function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + boolean TerminateProcess(HANDLE hProcess, int uExitCode); + + /** + * Writes data to the specified file or input/output (I/O) device. + * + * @param hFile A handle to the file or I/O device (for example, a file, + * file stream, physical disk, volume, console buffer, tape drive, socket, + * communications resource, mailslot, or pipe). + * @param lpBuffer A pointer to the buffer containing the data to be written + * to the file or device. + * @param nNumberOfBytesToWrite The number of bytes to be written to the + * file or device. + * @param lpNumberOfBytesWritten A pointer to the variable that receives the + * number of bytes written when using a synchronous hFile parameter. + * @param lpOverlapped A pointer to an OVERLAPPED structure is required if + * the hFile parameter was opened with FILE_FLAG_OVERLAPPED, otherwise this + * parameter can be NULL. + * @return If the function succeeds, the return value is nonzero (TRUE). If + * the function fails, or is completing asynchronously, the return value is + * zero (FALSE). To get extended error information, call the GetLastError + * function. + */ + boolean WriteFile(HANDLE hFile, byte[] lpBuffer, int nNumberOfBytesToWrite, + IntByReference lpNumberOfBytesWritten, + WinBase.OVERLAPPED lpOverlapped); + + boolean ReadFile(HANDLE hFile, byte[] lpBuffer, int nNumberOfBytesToRead, IntByReference lpNumberOfBytesRead, WinBase.OVERLAPPED lpOverlapped); + // + // Define the NamedPipe definitions + // + // + // Define the dwOpenMode values for CreateNamedPipe + // + public static final int PIPE_ACCESS_INBOUND = 0x00000001; + public static final int PIPE_ACCESS_OUTBOUND = 0x00000002; + public static final int PIPE_ACCESS_DUPLEX = 0x00000003; + // + // Define the Named Pipe End flags for GetNamedPipeInfo + // + public static final int PIPE_CLIENT_END = 0x00000000; + public static final int PIPE_SERVER_END = 0x00000001; + // + // Define the dwPipeMode values for CreateNamedPipe + // + public static final int PIPE_WAIT = 0x00000000; + public static final int PIPE_NOWAIT = 0x00000001; + public static final int PIPE_READMODE_BYTE = 0x00000000; + public static final int PIPE_READMODE_MESSAGE = 0x00000002; + public static final int PIPE_TYPE_BYTE = 0x00000000; + public static final int PIPE_TYPE_MESSAGE = 0x00000004; + public static final int PIPE_ACCEPT_REMOTE_CLIENTS = 0x00000000; + public static final int PIPE_REJECT_REMOTE_CLIENTS = 0x00000008; + // + // Define the well known values for CreateNamedPipe nMaxInstances + // + public static final int PIPE_UNLIMITED_INSTANCES = 255; + // + // Define the values for process priority + // + public static final int ABOVE_NORMAL_PRIORITY_CLASS = 0x00008000; + public static final int BELOW_NORMAL_PRIORITY_CLASS = 0x00004000; + public static final int HIGH_PRIORITY_CLASS = 0x00000080; + public static final int IDLE_PRIORITY_CLASS = 0x00000040; + public static final int NORMAL_PRIORITY_CLASS = 0x00000020; + public static final int PROCESS_MODE_BACKGROUND_BEGIN = 0x00100000; + public static final int PROCESS_MODE_BACKGROUND_END = 0x00200000; + public static final int REALTIME_PRIORITY_CLASS = 0x00000100; + +// __out +// HANDLE +// WINAPI +// CreateNamedPipe( +// __in LPCWSTR lpName, +// __in DWORD dwOpenMode, +// __in DWORD dwPipeMode, +// __in DWORD nMaxInstances, +// __in DWORD nOutBufferSize, +// __in DWORD nInBufferSize, +// __in DWORD nDefaultTimeOut, +// __in_opt LPSECURITY_ATTRIBUTES lpSecurityAttributes +// ); + HANDLE CreateNamedPipe(String lpName, int dwOpenMode, int dwPipeMode, int nMaxInstances, int nOutBufferSize, int nInBufferSize, int nDefaultTimeOut, + WinBase.SECURITY_ATTRIBUTES lpSecurityAttributes); + + // WINBASEAPI +// BOOL +// WINAPI +// ConnectNamedPipe( +// __in HANDLE hNamedPipe, +// __inout_opt LPOVERLAPPED lpOverlapped +// ); + boolean ConnectNamedPipe(HANDLE hNamedPipe, WinBase.OVERLAPPED lpOverlapped); + +// WINBASEAPI +// BOOL +// WINAPI +// DisconnectNamedPipe( +// __in HANDLE hNamedPipe +// ); + boolean DisconnectNamedPipe(HANDLE hNamedPipe); + + /** + * Waits until the specified object is in the signaled state or the time-out + * interval elapses. To enter an alertable wait state, use the + * WaitForSingleObjectEx function. To wait for multiple objects, use the + * WaitForMultipleObjects. + * + * @param hHandle A handle to the object. For a list of the object types + * whose handles can be specified, see the following Remarks section. If + * this handle is closed while the wait is still pending, the function's + * behavior is undefined. The handle must have the SYNCHRONIZE access right. + * For more information, see Standard Access Rights. + * @param dwMilliseconds The time-out interval, in milliseconds. If a + * nonzero value is specified, the function waits until the object is + * signaled or the interval elapses. If dwMilliseconds is zero, the function + * does not enter a wait state if the object is not signaled; it always + * returns immediately. If dwMilliseconds is INFINITE, the function will + * return only when the object is signaled. + * @return If the function succeeds, the return value indicates the event + * that caused the function to return. + */ + int WaitForSingleObject(HANDLE hHandle, int dwMilliseconds); + + /** + * This function returns a pseudohandle for the current process. + * + * @return The return value is a pseudohandle to the current process. + */ + HANDLE GetCurrentProcess(); + + int SetProcessAffinityMask(HANDLE hProcess, int mask); + + int SetPriorityClass(HANDLE hProcess, int dwPriorityClass); + + /** + * This function returns a handle to an existing process object. + * + * @param fdwAccess Not supported; set to zero. + * @param fInherit Not supported; set to FALSE. + * @param IDProcess Specifies the process identifier of the process to open. + * @return An open handle to the specified process indicates success. NULL + * indicates failure. To get extended error information, call GetLastError. + */ + HANDLE OpenProcess(int fdwAccess, boolean fInherit, DWORD IDProcess); + + /** + * The GetSystemInfo function returns information about the current system. + * + * @param lpSystemInfo Pointer to a SYSTEM_INFO structure that receives the + * information. + */ + void GetSystemInfo(SYSTEM_INFO lpSystemInfo); + public static final int PROCESS_VM_READ = 0x0010; + public static final int PROCESS_VM_WRITE = 0x0020; + public static final int PROCESS_QUERY_INFORMATION = 0x0400; + public static final int PROCESS_VM_OPERATION = 0x0008; + + /** + * The GetLastError function retrieves the calling thread's last-error code + * value. The last-error code is maintained on a per-thread basis. Multiple + * threads do not overwrite each other's last-error code. + * + * @return The return value is the calling thread's last-error code value. + */ + int GetLastError(); + public static int MEM_COMMIT = 0x1000; + public static int MEM_FREE = 0x10000; + public static int MEM_RESERVE = 0x2000; + public static int MEM_IMAGE = 0x1000000; + public static int MEM_MAPPED = 0x40000; + public static int MEM_PRIVATE = 0x20000; + + boolean ReadProcessMemory(HANDLE hProcess, Pointer inBaseAddress, Pointer outputBuffer, NativeLong nSize, NativeLongByReference outNumberOfBytesRead); + + /** + * Takes a snapshot of the specified processes, as well as the heaps, + * modules, and threads used by these processes. + * + * @param dwFlags The portions of the system to be included in the snapshot. + * + * @param th32ProcessID The process identifier of the process to be included + * in the snapshot. This parameter can be zero to indicate the current + * process. This parameter is used when the TH32CS_SNAPHEAPLIST, + * TH32CS_SNAPMODULE, TH32CS_SNAPMODULE32, or TH32CS_SNAPALL value is + * specified. Otherwise, it is ignored and all processes are included in the + * snapshot. + * + * If the specified process is the Idle process or one of the CSRSS + * processes, this function fails and the last error code is + * ERROR_ACCESS_DENIED because their access restrictions prevent user-level + * code from opening them. + * + * If the specified process is a 64-bit process and the caller is a 32-bit + * process, this function fails and the last error code is + * ERROR_PARTIAL_COPY (299). + * + * @return If the function succeeds, it returns an open handle to the + * specified snapshot. + * + * If the function fails, it returns INVALID_HANDLE_VALUE. To get extended + * error information, call GetLastError. Possible error codes include + * ERROR_BAD_LENGTH. + */ + HANDLE CreateToolhelp32Snapshot(DWORD dwFlags, DWORD th32ProcessID); + + public static int TH32CS_SNAPPROCESS = 0x00000002; + + //Needed for some Windows 7 Versions + //boolean EnumProcesses(int[] ProcessIDsOut, int size, int[] BytesReturned); + int GetProcessImageFileNameW(HANDLE Process, char[] outputname, int lenght); + + DWORD QueryDosDevice(String lpDeviceName, char[] lpTargetPath, int lenght); + + boolean VirtualProtectEx(HANDLE hProcess, LPVOID lpAddress, SIZE_T dwSize, int flNewProtect, IntByReference lpflOldProtect); +} diff --git a/src/com/jpexs/javactivex/jna/SHELLEXECUTEINFO.java b/src/com/jpexs/javactivex/jna/SHELLEXECUTEINFO.java new file mode 100644 index 0000000..db26eb6 --- /dev/null +++ b/src/com/jpexs/javactivex/jna/SHELLEXECUTEINFO.java @@ -0,0 +1,36 @@ +package com.jpexs.javactivex.jna; + +import com.sun.jna.Pointer; +import com.sun.jna.Structure; +import com.sun.jna.WString; +import com.jpexs.javactivex.jna.WinDef.HINSTANCE; +import com.jpexs.javactivex.jna.WinDef.HWND; +import com.jpexs.javactivex.jna.WinNT.HANDLE; +import com.jpexs.javactivex.jna.WinReg.HKEY; +import java.util.Arrays; +import java.util.List; + +public class SHELLEXECUTEINFO extends Structure { + + public int cbSize = size(); + public int fMask; + public HWND hwnd; + public WString lpVerb; + public WString lpFile; + public WString lpParameters; + public WString lpDirectory; + public int nShow; + public HINSTANCE hInstApp; + public Pointer lpIDList; + public WString lpClass; + public HKEY hKeyClass; + public int dwHotKey; + public HANDLE hMonitor; + public HANDLE hProcess; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"cbSize", "fMask", "hwnd", "lpVerb", "lpFile", "lpParameters", "lpDirectory", "nShow", "hInstApp", "lpIDList", + "lpClass", "hKeyClass", "dwHotKey", "hMonitor", "hProcess"}); + } +} diff --git a/src/com/jpexs/javactivex/jna/SHFILEINFO.java b/src/com/jpexs/javactivex/jna/SHFILEINFO.java new file mode 100644 index 0000000..c9ce769 --- /dev/null +++ b/src/com/jpexs/javactivex/jna/SHFILEINFO.java @@ -0,0 +1,25 @@ +package com.jpexs.javactivex.jna; + +import com.sun.jna.Structure; +import com.jpexs.javactivex.jna.WinDef.DWORD; +import com.jpexs.javactivex.jna.WinDef.HICON; +import java.util.Arrays; +import java.util.List; + +/** + * + * @author JPEXS + */ +public class SHFILEINFO extends Structure { + + public HICON hIcon; + public int iIcon; + public DWORD dwAttributes; + public char[] szDisplayName = new char[260]; + public char[] szTypeName = new char[80]; + + @Override + protected List getFieldOrder() { + return Arrays.asList("hIcon", "iIcon", "dwAttributes", "szDisplayName", "szTypeName"); + } +} diff --git a/src/com/jpexs/javactivex/jna/Shell32.java b/src/com/jpexs/javactivex/jna/Shell32.java new file mode 100644 index 0000000..f8dcf02 --- /dev/null +++ b/src/com/jpexs/javactivex/jna/Shell32.java @@ -0,0 +1,41 @@ +/* Copyright (c) 2007 Timothy Wall, All Rights Reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + *

+ * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + */ +package com.jpexs.javactivex.jna; + +import com.sun.jna.Native; +import com.jpexs.javactivex.jna.BaseTSD.DWORD_PTR; +import com.jpexs.javactivex.jna.WinDef.UINT; +import com.sun.jna.ptr.PointerByReference; +import com.sun.jna.win32.StdCallLibrary; +import com.sun.jna.win32.W32APIOptions; + +/** + * Shell32.dll Interface. + */ +public interface Shell32 extends StdCallLibrary { + + Shell32 INSTANCE = (Shell32) Native.loadLibrary("shell32", Shell32.class, + W32APIOptions.UNICODE_OPTIONS); + + /** + * @param lpExecInfo + * @return true if successful. Otherwise false. + */ + boolean ShellExecuteEx(SHELLEXECUTEINFO lpExecInfo); + + UINT ExtractIconEx(String lpszFile, int nIconIndex, PointerByReference phiconLarge, PointerByReference phiconSmall, UINT nIcons); + + DWORD_PTR SHGetFileInfo(String pszPath, int dwFileAttributes, SHFILEINFO psfi, int cbFileInfo, int uFlags); + public static final int SHGFI_ICON = 0x000000100; + public static final int SHGFI_SMALLICON = 0x000000001; +} diff --git a/src/com/jpexs/javactivex/jna/User32.java b/src/com/jpexs/javactivex/jna/User32.java new file mode 100644 index 0000000..fd0e938 --- /dev/null +++ b/src/com/jpexs/javactivex/jna/User32.java @@ -0,0 +1,1516 @@ +/* Copyright (c) 2007, 2013 Timothy Wall, Markus Karg, All Rights Reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + *

+ * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + */ +package com.jpexs.javactivex.jna; + +import com.sun.jna.Native; +import com.sun.jna.Pointer; +import com.sun.jna.Structure; +import com.sun.jna.WString; +import com.jpexs.javactivex.jna.BaseTSD.LONG_PTR; +import com.jpexs.javactivex.jna.WinNT.HANDLE; +import com.sun.jna.ptr.ByteByReference; +import com.sun.jna.ptr.IntByReference; +import com.sun.jna.win32.StdCallLibrary; +import com.sun.jna.win32.W32APIOptions; + +/** + * Provides access to the w32 user32 library. Incomplete implementation to + * support demos. + * + * @author Todd Fast, todd.fast@sun.com + * @author twalljava@dev.java.net + * @author Tobias Wolf, wolf.tobias@gmx.net + * @author Markus KARG (markus[at]headcrashing[dot]eu) + */ +public interface User32 extends StdCallLibrary, WinUser { + + /** + * The instance. + */ + User32 INSTANCE = (User32) Native.loadLibrary("user32", User32.class, + W32APIOptions.DEFAULT_OPTIONS); + /** + * Handle for message-only window. + */ + public static final HWND HWND_MESSAGE = new HWND(Pointer.createConstant(-3)); + /** + * The cs globalclass. + */ + int CS_GLOBALCLASS = 0x4000; + /** + * The ws ex topmost. + */ + int WS_EX_TOPMOST = 0x00000008; + /** + * The ws overlapped. + */ + int WS_OVERLAPPED = 0x00000000; + /** + * The hRecipient parameter is a window handle. + */ + int DEVICE_NOTIFY_WINDOW_HANDLE = 0x00000000; + /** + * The hRecipient parameter is a service status handle. + */ + int DEVICE_NOTIFY_SERVICE_HANDLE = 0x00000001; + /** + * The device notify all interface classes. + */ + int DEVICE_NOTIFY_ALL_INTERFACE_CLASSES = 0x00000004; + + /** + * This function retrieves a handle to a display device context (DC) for the + * client area of the specified window. The display device context can be + * used in subsequent graphics display interface (GDI) functions to draw in + * the client area of the window. + * + * @param hWnd Handle to the window whose device context is to be retrieved. + * If this value is NULL, GetDC retrieves the device context for the entire + * screen. + * @return The handle the device context for the specified window's client + * area indicates success. NULL indicates failure. To get extended error + * information, call GetLastError. + */ + HDC GetDC(HWND hWnd); + + /** + * This function releases a device context (DC), freeing it for use by other + * applications. The effect of ReleaseDC depends on the type of device + * context. + * + * @param hWnd Handle to the window whose device context is to be released. + * @param hDC Handle to the device context to be released. + * @return The return value specifies whether the device context is + * released. 1 indicates that the device context is released. Zero indicates + * that the device context is not released. + */ + int ReleaseDC(HWND hWnd, HDC hDC); + + /** + * This function retrieves the handle to the top-level window whose class + * name and window name match the specified strings. This function does not + * search child windows. + * + * @param lpClassName Long pointer to a null-terminated string that + * specifies the class name or is an atom that identifies the class-name + * string. If this parameter is an atom, it must be a global atom created by + * a previous call to the GlobalAddAtom function. The atom, a 16-bit value, + * must be placed in the low-order word of lpClassName; the high-order word + * must be zero. + * @param lpWindowName Long pointer to a null-terminated string that + * specifies the window name (the window's title). If this parameter is + * NULL, all window names match. + * @return A handle to the window that has the specified class name and + * window name indicates success. NULL indicates failure. To get extended + * error information, call GetLastError. + */ + HWND FindWindow(String lpClassName, String lpWindowName); + + /** + * This function retrieves the name of the class to which the specified + * window belongs. + * + * @param hWnd Handle to the window and, indirectly, the class to which the + * window belongs. + * @param lpClassName Long pointer to the buffer that is to receive the + * class name string. + * @param nMaxCount Specifies the length, in characters, of the buffer + * pointed to by the lpClassName parameter. The class name string is + * truncated if it is longer than the buffer. + * @return The number of characters copied to the specified buffer indicates + * success. Zero indicates failure. To get extended error information, call + * GetLastError. + */ + int GetClassName(HWND hWnd, char[] lpClassName, int nMaxCount); + + /** + * Retrieves information about the active window or a specified graphical + * user interface (GUI) thread. + * + * @param idThread Identifies the thread for which information is to be + * retrieved. To retrieve this value, use the GetWindowThreadProcessId + * function. If this parameter is NULL, the function returns information for + * the foreground thread. + * @param lpgui Pointer to a GUITHREADINFO structure that receives + * information describing the thread. Note that you must set + * GUITHREADINFO.cbSize to sizeof(GUITHREADINFO) before calling this + * function. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + boolean GetGUIThreadInfo(int idThread, GUITHREADINFO lpgui); + + /** + * The GetWindowInfo function retrieves information about the specified + * window. + * + * @param hWnd Handle to the window whose information is to be retrieved. + * @param pwi Pointer to a WINDOWINFO structure to receive the information. + * Note that you must set WINDOWINFO.cbSize to sizeof(WINDOWINFO) before + * calling this function. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. + */ + boolean GetWindowInfo(HWND hWnd, WINDOWINFO pwi); + + /** + * This function retrieves the dimensions of the bounding rectangle of the + * specified window. The dimensions are given in screen coordinates that are + * relative to the upper-left corner of the screen. + * + * @param hWnd Handle to the window. + * @param rect Long pointer to a RECT structure that receives the screen + * coordinates of the upper-left and lower-right corners of the window. + * @return Nonzero indicates success. Zero indicates failure. To get + * extended error information, call GetLastError. + */ + boolean GetWindowRect(HWND hWnd, RECT rect); + + /** + * This function copies the text of the specified window's title bar - if it + * has one - into a buffer. If the specified window is a control, the text + * of the control is copied. + * + * @param hWnd Handle to the window or control containing the text. + * @param lpString Long pointer to the buffer that will receive the text. + * @param nMaxCount Specifies the maximum number of characters to copy to + * the buffer, including the NULL character. If the text exceeds this limit, + * it is truncated. + * @return The length, in characters, of the copied string, not including + * the terminating null character, indicates success. Zero indicates that + * the window has no title bar or text, if the title bar is empty, or if the + * window or control handle is invalid. To get extended error information, + * call GetLastError. This function cannot retrieve the text of an edit + * control in another application. + */ + int GetWindowText(HWND hWnd, char[] lpString, int nMaxCount); + + /** + * This function retrieves the length, in characters, of the specified + * window's title bar text - if the window has a title bar. If the specified + * window is a control, the function retrieves the length of the text within + * the control. + * + * @param hWnd Handle to the window or control. + * @return The length, in characters, of the text indicates success. Under + * certain conditions, this value may actually be greater than the length of + * the text. Zero indicates that the window has no text. To get extended + * error information, call GetLastError. + */ + int GetWindowTextLength(HWND hWnd); + + /** + * The GetWindowModuleFileName function retrieves the full path and file + * name of the module associated with the specified window handle. + * + * @param hWnd Handle to the window whose module file name will be + * retrieved. + * @param lpszFileName Pointer to a buffer that receives the path and file + * name. + * @param cchFileNameMax Specifies the maximum number of TCHARs that can be + * copied into the lpszFileName buffer. + * @return The return value is the total number of TCHARs copied into the + * buffer. + */ + int GetWindowModuleFileName(HWND hWnd, char[] lpszFileName, + int cchFileNameMax); + + /** + * This function retrieves the identifier of the thread that created the + * specified window and, optionally, the identifier of the process that + * created the window. + * + * @param hWnd Handle to the window. + * @param lpdwProcessId Pointer to a 32-bit value that receives the process + * identifier. If this parameter is not NULL, GetWindowThreadProcessId + * copies the identifier of the process to the 32-bit value; otherwise, it + * does not. + * @return The return value is the identifier of the thread that created the + * window. + */ + int GetWindowThreadProcessId(HWND hWnd, IntByReference lpdwProcessId); + + /** + * This function enumerates all top-level windows on the screen by passing + * the handle to each window, in turn, to an application-defined callback + * function. EnumWindows continues until the last top-level window is + * enumerated or the callback function returns FALSE. + * + * @param lpEnumFunc Long pointer to an application-defined callback + * function. + * @param data Specifies an application-defined value to be passed to the + * callback function. + * @return Nonzero indicates success. Zero indicates failure. To get + * extended error information, call GetLastError. + */ + boolean EnumWindows(WNDENUMPROC lpEnumFunc, Pointer data); + + /** + * The EnumChildWindows function enumerates the child windows that belong to + * the specified parent window by passing the handle to each child window, + * in turn, to an application-defined callback function. EnumChildWindows + * continues until the last child window is enumerated or the callback + * function returns FALSE. + * + * @param hWnd Handle to the parent window whose child windows are to be + * enumerated. If this parameter is NULL, this function is equivalent to + * EnumWindows. + * @param lpEnumFunc Pointer to an application-defined callback function. + * @param data Specifies an application-defined value to be passed to the + * callback function. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. If EnumChildProc returns zero, the return + * value is also zero. In this case, the callback function should call + * SetLastError to obtain a meaningful error code to be returned to the + * caller of EnumChildWindows. + */ + boolean EnumChildWindows(HWND hWnd, WNDENUMPROC lpEnumFunc, Pointer data); + + /** + * The EnumThreadWindows function enumerates all nonchild windows associated + * with a thread by passing the handle to each window, in turn, to an + * application-defined callback function. EnumThreadWindows continues until + * the last window is enumerated or the callback function returns FALSE. To + * enumerate child windows of a particular window, use the EnumChildWindows + * function. + * + * @param dwThreadId Identifies the thread whose windows are to be + * enumerated. + * @param lpEnumFunc Pointer to an application-defined callback function. + * @param data Specifies an application-defined value to be passed to the + * callback function. + * @return If the callback function returns TRUE for all windows in the + * thread specified by dwThreadId, the return value is TRUE. If the callback + * function returns FALSE on any enumerated window, or if there are no + * windows found in the thread specified by dwThreadId, the return value is + * FALSE. + */ + boolean EnumThreadWindows(int dwThreadId, WNDENUMPROC lpEnumFunc, + Pointer data); + + /** + * The FlashWindowEx function flashes the specified window. It does not + * change the active state of the window. + * + * @param pfwi Pointer to the FLASHWINFO structure. + * @return The return value specifies the window's state before the call to + * the FlashWindowEx function. If the window caption was drawn as active + * before the call, the return value is nonzero. Otherwise, the return value + * is zero. + */ + boolean FlashWindowEx(FLASHWINFO pfwi); + + /** + * This function loads the specified icon resource from the executable + * (.exe) file associated with an application instance. + * + * @param hInstance Handle to an instance of the module whose executable + * file contains the icon to be loaded. This parameter must be NULL when a + * standard icon is being loaded. + * @param iconName Long pointer to a null-terminated string that contains + * the name of the icon resource to be loaded. Alternatively, this parameter + * can contain the resource identifier in the low-order word and zero in the + * high-order word. Use the MAKEINTRESOURCE macro to create this value. + * @return A handle to the newly loaded icon indicates success. NULL + * indicates failure. To get extended error information, call GetLastError. + */ + HICON LoadIcon(HINSTANCE hInstance, String iconName); + + /** + * This function loads an icon, cursor, or bitmap. + * + * @param hinst Handle to an instance of the module that contains the image + * to be loaded. + * @param name Pointer to a null-terminated string that contains the name of + * the image resource in the hinst module that identifies the image to load. + * @param type Specifies the type of image to be loaded. + * @param xDesired Specifies the width, in pixels, of the icon or cursor. If + * this parameter is zero, the function uses the SM_CXICON or SM_CXCURSOR + * system metric value to set the width. If uType is IMAGE_BITMAP, this + * parameter must be zero. + * @param yDesired Specifies the height, in pixels, of the icon or cursor. + * If this parameter is zero, the function uses the SM_CYICON or SM_CYCURSOR + * system metric value to set the height. If uType is IMAGE_BITMAP, this + * parameter must be zero. + * @param load Set to zero. + * @return The handle of the newly loaded image indicates success. NULL + * indicates failure. To get extended error information, call GetLastError. + */ + HANDLE LoadImage(HINSTANCE hinst, String name, int type, int xDesired, + int yDesired, int load); + + /** + * This function destroys an icon and frees any memory the icon occupied. + * + * @param hicon Handle to the icon to be destroyed. The icon must not be in + * use. + * @return Nonzero indicates success. Zero indicates failure. To get + * extended error information, call GetLastError. + */ + boolean DestroyIcon(HICON hicon); + + /** + * This function retrieves information about the specified window. + * GetWindowLong also retrieves the 32-bit (long) value at the specified + * offset into the extra window memory of a window. + * + * @param hWnd Handle to the window and, indirectly, the class to which the + * window belongs. + * @param nIndex Specifies the zero-based offset to the value to be + * retrieved. + * @return The requested 32-bit value indicates success. Zero indicates + * failure. To get extended error information, call GetLastError. + */ + int GetWindowLong(HWND hWnd, int nIndex); + + /** + * This function changes an attribute of the specified window. SetWindowLong + * also sets a 32-bit (LONG) value at the specified offset into the extra + * window memory of a window. + * + * @param hWnd Handle to the window and, indirectly, the class to which the + * window belongs. + * @param nIndex Specifies the zero-based offset to the value to be set. + * @param dwNewLong Specifies the replacement value. + * @return The previous value of the specified 32-bit integer indicates + * success. Zero indicates failure. To get extended error information, call + * GetLastError. + */ + int SetWindowLong(HWND hWnd, int nIndex, int dwNewLong); + + /** + * This function changes an attribute of the specified window. SetWindowLong + * also sets a 32-bit (LONG) value at the specified offset into the extra + * window memory of a window. Do not use this version on Windows-64. + * + * @param hWnd Handle to the window and, indirectly, the class to which the + * window belongs. + * @param nIndex Specifies the zero-based offset to the value to be set. + * @param dwNewLong Specifies the replacement value. + * @return The previous value of the specified 32-bit integer indicates + * success. Zero indicates failure. To get extended error information, call + * GetLastError. + */ + Pointer SetWindowLong(HWND hWnd, int nIndex, Pointer dwNewLong); + + /** + * The GetWindowLongPtr function retrieves information about the specified + * window. The function also retrieves the value at a specified offset into + * the extra window memory. + * + * @param hWnd Handle to the window and, indirectly, the class to which the + * window belongs. + * @param nIndex Specifies the zero-based offset to the value to be + * retrieved. + * @return If the function succeeds, the return value is the requested + * value. If the function fails, the return value is zero. To get extended + * error information, call GetLastError. If SetWindowLong or + * SetWindowLongPtr has not been called previously, GetWindowLongPtr returns + * zero for values in the extra window or class memory. + */ + LONG_PTR GetWindowLongPtr(HWND hWnd, int nIndex); + + /** + * The SetWindowLongPtr function changes an attribute of the specified + * window. The function also sets a value at the specified offset in the + * extra window memory. + * + * @param hWnd Handle to the window and, indirectly, the class to which the + * window belongs. + * @param nIndex Specifies the zero-based offset to the value to be set. + * @param dwNewLongPtr Specifies the replacement value. + * @return If the function succeeds, the return value is the previous value + * of the specified offset. If the function fails, the return value is zero. + * To get extended error information, call GetLastError. If the previous + * value is zero and the function succeeds, the return value is zero, but + * the function does not clear the last error information. To determine + * success or failure, clear the last error information by calling + * SetLastError(0), then call SetWindowLongPtr. Function failure will be + * indicated by a return value of zero and a GetLastError result that is + * nonzero. + */ + LONG_PTR SetWindowLongPtr(HWND hWnd, int nIndex, LONG_PTR dwNewLongPtr); + + /** + * The SetWindowLongPtr function changes an attribute of the specified + * window. The function also sets a value at the specified offset in the + * extra window memory. + * + * @param hWnd Handle to the window and, indirectly, the class to which the + * window belongs. + * @param nIndex Specifies the zero-based offset to the value to be set. + * @param dwNewLongPtr Specifies the replacement value. + * @return If the function succeeds, the return value is the previous value + * of the specified offset. If the function fails, the return value is zero. + * To get extended error information, call GetLastError. If the previous + * value is zero and the function succeeds, the return value is zero, but + * the function does not clear the last error information. To determine + * success or failure, clear the last error information by calling + * SetLastError(0), then call SetWindowLongPtr. Function failure will be + * indicated by a return value of zero and a GetLastError result that is + * nonzero. + */ + Pointer SetWindowLongPtr(HWND hWnd, int nIndex, Pointer dwNewLongPtr); + + /** + * The SetLayeredWindowAttributes function sets the opacity and transparency + * color key of a layered window. + * + * @param hwnd Handle to the layered window. + * @param crKey COLORREF structure that specifies the transparency color key + * to be used when composing the layered window. + * @param bAlpha Alpha value used to describe the opacity of the layered + * window. + * @param dwFlags Specifies an action to take. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + boolean SetLayeredWindowAttributes(HWND hwnd, int crKey, byte bAlpha, + int dwFlags); + + /** + * The GetLayeredWindowAttributes function retrieves the opacity and + * transparency color key of a layered window. + * + * @param hwnd Handle to the layered window. A layered window is created by + * specifying WS_EX_LAYERED when creating the window with the CreateWindowEx + * function or by setting WS_EX_LAYERED via SetWindowLong after the window + * has been created. + * @param pcrKey Pointer to a COLORREF value that receives the transparency + * color key to be used when composing the layered window. All pixels + * painted by the window in this color will be transparent. This can be NULL + * if the argument is not needed. + * @param pbAlpha Pointer to a BYTE that receives the Alpha value used to + * describe the opacity of the layered window. Similar to the + * SourceConstantAlpha member of the BLENDFUNCTION structure. When the + * variable referred to by pbAlpha is 0, the window is completely + * transparent. When the variable referred to by pbAlpha is 255, the window + * is opaque. This can be NULL if the argument is not needed. + * @param pdwFlags Pointer to a DWORD that receives a layering flag. This + * can be NULL if the argument is not needed. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + boolean GetLayeredWindowAttributes(HWND hwnd, IntByReference pcrKey, + ByteByReference pbAlpha, IntByReference pdwFlags); + + /** + * The UpdateLayeredWindow function updates the position, size, shape, + * content, and translucency of a layered window. + * + * @param hwnd Handle to a layered window. A layered window is created by + * specifying WS_EX_LAYERED when creating the window with the CreateWindowEx + * function. + * @param hdcDst Handle to a device context (DC) for the screen. This handle + * is obtained by specifying NULL when calling the function. It is used for + * palette color matching when the window contents are updated. If hdcDst + * isNULL, the default palette will be used. If hdcSrc is NULL, hdcDst must + * be NULL. + * @param pptDst Pointer to a POINT structure that specifies the new screen + * position of the layered window. If the current position is not changing, + * pptDst can be NULL. + * @param psize Pointer to a SIZE structure that specifies the new size of + * the layered window. If the size of the window is not changing, psize can + * be NULL. If hdcSrc is NULL, psize must be NULL. + * @param hdcSrc Handle to a DC for the surface that defines the layered + * window. This handle can be obtained by calling the CreateCompatibleDC + * function. If the shape and visual context of the window are not changing, + * hdcSrc can be NULL. + * @param pptSrc Pointer to a POINT structure that specifies the location of + * the layer in the device context. If hdcSrc is NULL, pptSrc should be + * NULL. + * @param crKey Pointer to a COLORREF value that specifies the color key to + * be used when composing the layered window. To generate a COLORREF, use + * the RGB macro. + * @param pblend Pointer to a BLENDFUNCTION structure that specifies the + * transparency value to be used when composing the layered window. + * @param dwFlags ULW_* flags. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + boolean UpdateLayeredWindow(HWND hwnd, HDC hdcDst, POINT pptDst, + SIZE psize, HDC hdcSrc, POINT pptSrc, int crKey, + BLENDFUNCTION pblend, int dwFlags); + + /** + * This function sets the window region of a window. The window region + * determines the area within the window where the system permits drawing. + * The system does not display any portion of a window that lies outside of + * the window region. + * + * @param hWnd Handle to the window whose window region is to be set. + * @param hRgn Handle to a region. The function sets the window region of + * the window to this region. If hRgn is NULL, the function sets the window + * region to NULL. + * @param bRedraw Specifies whether the system redraws the window after + * setting the window region. If bRedraw is TRUE, the system does so; + * otherwise, it does not. Typically, you set bRedraw to TRUE if the window + * is visible. + * @return Nonzero indicates success. Zero indicates failure. To get + * extended error information, call GetLastError. + */ + int SetWindowRgn(HWND hWnd, HRGN hRgn, boolean bRedraw); + + /** + * The GetKeyboardState function copies the status of the 256 virtual keys + * to the specified buffer. + * + * @param lpKeyState Pointer to the 256-byte array that receives the status + * data for each virtual key. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + boolean GetKeyboardState(byte[] lpKeyState); + + /** + * This function determines whether a key is up or down at the time the + * function is called, and whether the key was pressed after a previous call + * to GetAsyncKeyState. + * + * @param vKey Specifies one of 256 possible virtual-key codes. + * @return If the function succeeds, the return value specifies whether the + * key was pressed since the last call to GetAsyncKeyState, and whether the + * key is currently up or down. If the most significant bit is set, the key + * is down. + */ + short GetAsyncKeyState(int vKey); + + /** + * The SetWindowsHookEx function installs an application-defined hook + * procedure into a hook chain. You would install a hook procedure to + * monitor the system for certain types of events. These events are + * associated either with a specific thread or with all threads in the same + * desktop as the calling thread. + * + * @param idHook Specifies the type of hook procedure to be installed. + * @param lpfn Pointer to the hook procedure. + * @param hMod Handle to the DLL containing the hook procedure pointed to by + * the lpfn parameter. + * @param dwThreadId Specifies the identifier of the thread with which the + * hook procedure is to be associated. + * @return If the function succeeds, the return value is the handle to the + * hook procedure. If the function fails, the return value is NULL. To get + * extended error information, call GetLastError. + */ + HHOOK SetWindowsHookEx(int idHook, HOOKPROC lpfn, HINSTANCE hMod, + int dwThreadId); + + /** + * The CallNextHookEx function passes the hook information to the next hook + * procedure in the current hook chain. A hook procedure can call this + * function either before or after processing the hook information. + * + * @param hhk Ignored. + * @param nCode Specifies the hook code passed to the current hook + * procedure. The next hook procedure uses this code to determine how to + * process the hook information. + * @param wParam Specifies the wParam value passed to the current hook + * procedure. The meaning of this parameter depends on the type of hook + * associated with the current hook chain. + * @param lParam Specifies the lParam value passed to the current hook + * procedure. The meaning of this parameter depends on the type of hook + * associated with the current hook chain. + * @return This value is returned by the next hook procedure in the chain. + * The current hook procedure must also return this value. The meaning of + * the return value depends on the hook type. + */ + LRESULT CallNextHookEx(HHOOK hhk, int nCode, WPARAM wParam, LPARAM lParam); + + /** + * The CallNextHookEx function passes the hook information to the next hook + * procedure in the current hook chain. A hook procedure can call this + * function either before or after processing the hook information. + * + * @param hhk Ignored. + * @param nCode Specifies the hook code passed to the current hook + * procedure. The next hook procedure uses this code to determine how to + * process the hook information. + * @param wParam Specifies the wParam value passed to the current hook + * procedure. The meaning of this parameter depends on the type of hook + * associated with the current hook chain. + * @param lParam Specifies the lParam value passed to the current hook + * procedure. The meaning of this parameter depends on the type of hook + * associated with the current hook chain. + * @return This value is returned by the next hook procedure in the chain. + * The current hook procedure must also return this value. The meaning of + * the return value depends on the hook type. + */ + LRESULT CallNextHookEx(HHOOK hhk, int nCode, WPARAM wParam, Pointer lParam); + + /** + * The UnhookWindowsHookEx function removes a hook procedure installed in a + * hook chain by the SetWindowsHookEx function. + * + * @param hhk Handle to the hook to be removed. This parameter is a hook + * handle obtained by a previous call to SetWindowsHookEx. + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + boolean UnhookWindowsHookEx(HHOOK hhk); + + /** + * This function retrieves a message from the calling thread's message queue + * and places it in the specified structure. + * + * @param lpMsg Pointer to an MSG structure that receives message + * information from the thread's message queue. + * @param hWnd Handle to the window whose messages are to be retrieved. One + * value has a special meaning. + * @param wMsgFilterMin Specifies the integer value of the lowest message + * value to be retrieved. + * @param wMsgFilterMax Specifies the integer value of the highest message + * value to be retrieved. + * @return Nonzero indicates that the function retrieves a message other + * than WM_QUIT. Zero indicates that the function retrieves the WM_QUIT + * message, or that lpMsg is an invalid pointer. To get extended error + * information, call GetLastError. + */ + int GetMessage(MSG lpMsg, HWND hWnd, int wMsgFilterMin, int wMsgFilterMax); + + /** + * This function checks a thread message queue for a message and places the + * message (if any) in the specified structure. + * + * @param lpMsg Pointer to an MSG structure that receives message + * information. + * @param hWnd Handle to the window whose messages are to be examined. + * @param wMsgFilterMin Specifies the value of the first message in the + * range of messages to be examined. + * @param wMsgFilterMax Specifies the value of the last message in the range + * of messages to be examined. + * @param wRemoveMsg Specifies how messages are handled. This parameter can + * be one of the following values. + * @return Nonzero indicates success. Zero indicates failure. + */ + boolean PeekMessage(MSG lpMsg, HWND hWnd, int wMsgFilterMin, + int wMsgFilterMax, int wRemoveMsg); + + /** + * This function translates virtual-key messages into character messages. + * The character messages are posted to the calling thread's message queue, + * to be read the next time the thread calls the GetMessage or PeekMessage + * function. + * + * @param lpMsg Pointer to an MSG structure that contains message + * information retrieved from the calling thread's message queue by using + * the GetMessage or PeekMessage function. + * @return Nonzero indicates that the message is translated, that is, a + * character message is posted to the thread's message queue. If the message + * is WM_KEYDOWN or WM_SYSKEYDOWN, the return value is nonzero, regardless + * of the translation. Zero indicates that the message is not translated, + * that is, a character message is not posted to the thread's message queue. + */ + boolean TranslateMessage(MSG lpMsg); + + /** + * This function dispatches a message to a window procedure. It is typically + * used to dispatch a message retrieved by the GetMessage function. + * + * @param lpMsg Pointer to an MSG structure that contains the message. + * @return The return value specifies the value returned by the window + * procedure. Although its meaning depends on the message being dispatched, + * the return value generally is ignored. + */ + LRESULT DispatchMessage(MSG lpMsg); + + /** + * This function places a message in the message queue associated with the + * thread that created the specified window and then returns without waiting + * for the thread to process the message. Messages in a message queue are + * retrieved by calls to the GetMessage or PeekMessage function. + * + * @param hWnd Handle to the window whose window procedure is to receive the + * message. + * @param msg Specifies the message to be posted. + * @param wParam Specifies additional message-specific information. + * @param lParam Specifies additional message-specific information. + */ + void PostMessage(HWND hWnd, int msg, WPARAM wParam, LPARAM lParam); + + /** + * This function indicates to Windows that a thread has made a request to + * terminate (quit). It is typically used in response to a WM_DESTROY + * message. + * + * @param nExitCode Specifies an application exit code. This value is used + * as the wParam parameter of the WM_QUIT message. + */ + void PostQuitMessage(int nExitCode); + + /** + * The GetSystemMetrics function retrieves various system metrics (widths + * and heights of display elements) and system configuration settings. All + * dimensions retrieved by GetSystemMetrics are in pixels. + * + * @param nIndex System metric or configuration setting to retrieve. This + * parameter can be one of the following values. Note that all SM_CX* values + * are widths and all SM_CY* values are heights. Also note that all settings + * designed to return Boolean data represent TRUE as any nonzero value, and + * FALSE as a zero value. + * @return If the function succeeds, the return value is the requested + * system metric or configuration setting. If the function fails, the return + * value is zero. GetLastError does not provide extended error information. + */ + public int GetSystemMetrics(int nIndex); + + /** + * Changes the parent window of the specified child window. + * + * @param hWndChild A handle to the child window. + * + * @param hWndNewParent A handle to the new parent window. If this parameter + * is NULL, the desktop window becomes the new parent window. If this + * parameter is HWND_MESSAGE, the child window becomes a message-only + * window. + * + * @return If the function succeeds, the return value is nonzero. + * + * If the function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + HWND SetParent(HWND hWndChild, HWND hWndNewParent); + + /** + * Determines the visibility state of the specified window. + * + * @param hWnd A handle to the window to be tested. + * + * @return If the specified window, its parent window, its parent's parent + * window, and so forth, have the WS_VISIBLE style, the return value is + * nonzero. Otherwise, the return value is zero. + * + * Because the return value specifies whether the window has the WS_VISIBLE + * style, it may be nonzero even if the window is totally obscured by other + * windows. + */ + boolean IsWindowVisible(HWND hWnd); + + /** + * Changes the position and dimensions of the specified window. For a + * top-level window, the position and dimensions are relative to the + * upper-left corner of the screen. For a child window, they are relative to + * the upper-left corner of the parent window's client area. + * + * @param hWnd A handle to the window. + * + * @param X The new position of the left side of the window. + * + * @param Y The new position of the top of the window. + * + * @param nWidth The new width of the window. + * + * @param nHeight The new height of the window. + * + * @param bRepaint Indicates whether the window is to be repainted. If this + * parameter is TRUE, the window receives a message. If the parameter is + * FALSE, no repainting of any kind occurs. This applies to the client area, + * the nonclient area (including the title bar and scroll bars), and any + * part of the parent window uncovered as a result of moving a child window. + * + * @return If the function succeeds, the return value is nonzero. + * + * If the function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + boolean MoveWindow(HWND hWnd, int X, int Y, int nWidth, int nHeight, + boolean bRepaint); + + /** + * Changes the size, position, and Z order of a child, pop-up, or top-level + * window. These windows are ordered according to their appearance on the + * screen. The topmost window receives the highest rank and is the first + * window in the Z order. + * + * @param hWnd A handle to the window. + * + * @param hWndInsertAfter A handle to the window to precede the positioned + * window in the Z order. + * + * @param X The new position of the left side of the window, in client + * coordinates. + * + * @param Y The new position of the top of the window, in client + * coordinates. + * + * @param cx The new width of the window, in pixels. + * + * @param cy The new height of the window, in pixels. + * + * @param uFlags The window sizing and positioning flags. + * + * @return If the function succeeds, the return value is nonzero. + * + * If the function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + boolean SetWindowPos(HWND hWnd, HWND hWndInsertAfter, int X, int Y, int cx, + int cy, int uFlags); + + /** + * Attaches or detaches the input processing mechanism of one thread to that + * of another thread. + * + * @param idAttach The identifier of the thread to be attached to another + * thread. The thread to be attached cannot be a system thread. + * + * @param idAttachTo The identifier of the thread to which idAttach will be + * attached. This thread cannot be a system thread. A thread cannot attach + * to itself. Therefore, idAttachTo cannot equal idAttach. + * + * @param fAttach If this parameter is TRUE, the two threads are attached. + * If the parameter is FALSE, the threads are detached. + * + * @return If the function succeeds, the return value is nonzero. + */ + boolean AttachThreadInput(DWORD idAttach, DWORD idAttachTo, boolean fAttach); + + /** + * Brings the thread that created the specified window into the foreground + * and activates the window. Keyboard input is directed to the window, and + * various visual cues are changed for the user. The system assigns a + * slightly higher priority to the thread that created the foreground window + * than it does to other threads. + * + * @param hWnd A handle to the window that should be activated and brought + * to the foreground. + * + * @return If the window was brought to the foreground, the return value is + * nonzero. + */ + boolean SetForegroundWindow(HWND hWnd); + + /** + * Retrieves a handle to the foreground window (the window with which the + * user is currently working). The system assigns a slightly higher priority + * to the thread that creates the foreground window than it does to other + * threads. + * + * @return The return value is a handle to the foreground window. The + * foreground window can be NULL in certain circumstances, such as when a + * window is losing activation. + */ + HWND GetForegroundWindow(); + + /** + * Sets the keyboard focus to the specified window. The window must be + * attached to the calling thread's message queue. + * + * @param hWnd A handle to the window that will receive the keyboard input. + * If this parameter is NULL, keystrokes are ignored. + * + * @return If the function succeeds, the return value is the handle to the + * window that previously had the keyboard focus. If the hWnd parameter is + * invalid or the window is not attached to the calling thread's message + * queue, the return value is NULL. To get extended error information, call + * GetLastError. + */ + HWND SetFocus(HWND hWnd); + + /** + * Synthesizes keystrokes, mouse motions, and button clicks. + * + * @param nInputs The number of structures in the pInputs array. + * + * @param pInputs An array of INPUT structures. Each structure represents an + * event to be inserted into the keyboard or mouse input stream. + * + * @param cbSize The size, in bytes, of an INPUT structure. If cbSize is not + * the size of an INPUT structure, the function fails. + * + * @return The function returns the number of events that it successfully + * inserted into the keyboard or mouse input stream. If the function returns + * zero, the input was already blocked by another thread. To get extended + * error information, call GetLastError. + * + * This function fails when it is blocked by UIPI. Note that neither + * GetLastError nor the return value will indicate the failure was caused by + * UIPI blocking. + */ + DWORD SendInput(DWORD nInputs, WinUser.INPUT[] pInputs, int cbSize); + + /** + * Waits until the specified process has finished processing its initial + * input and is waiting for user input with no input pending, or until the + * time-out interval has elapsed. + * + * @param hProcess A handle to the process. If this process is a console + * application or does not have a message queue, WaitForInputIdle returns + * immediately. + * + * @param dwMilliseconds The time-out interval, in milliseconds. If + * dwMilliseconds is INFINITE, the function does not return until the + * process is idle. + * + * @return The following table shows the possible return values for this + * function. + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Return code/valueDescription
0The wait was satisfied successfully.
WAIT_TIMEOUTThe wait was terminated because the time-out interval elapsed.
WAIT_FAILEDAn error occurred.
+ */ + DWORD WaitForInputIdle(HANDLE hProcess, DWORD dwMilliseconds); + + /** + * The InvalidateRect function adds a rectangle to the specified window's + * update region. The update region represents the portion of the window's + * client area that must be redrawn. + * + * @param hWnd A handle to the window whose update region has changed. If + * this parameter is NULL, the system invalidates and redraws all windows, + * not just the windows for this application, and sends the WM_ERASEBKGND + * and WM_NCPAINT messages before the function returns. Setting this + * parameter to NULL is not recommended. + * + * @param lpRect A pointer to a RECT structure that contains the client + * coordinates of the rectangle to be added to the update region. If this + * parameter is NULL, the entire client area is added to the update region. + * + * @param bErase Specifies whether the background within the update region + * is to be erased when the update region is processed. If this parameter is + * TRUE, the background is erased when the BeginPaint function is called. If + * this parameter is FALSE, the background remains unchanged. + * + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. + */ + boolean InvalidateRect(HWND hWnd, RECT lpRect, boolean bErase); + + /** + * The RedrawWindow function updates the specified rectangle or region in a + * window's client area. + * + * @param hWnd A handle to the window to be redrawn. If this parameter is + * NULL, the desktop window is updated. + * + * @param lprcUpdate A pointer to a RECT structure containing the + * coordinates, in device units, of the update rectangle. This parameter is + * ignored if the hrgnUpdate parameter identifies a region. + * + * @param hrgnUpdate A handle to the update region. If both the hrgnUpdate + * and lprcUpdate parameters are NULL, the entire client area is added to + * the update region. + * + * @param flags One or more redraw flags. This parameter can be used to + * invalidate or validate a window, control repainting, and control which + * windows are affected by RedrawWindow. + * + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. + */ + boolean RedrawWindow(HWND hWnd, RECT lprcUpdate, + HRGN hrgnUpdate, DWORD flags); + + /** + * Retrieves a handle to a window that has the specified relationship + * (Z-Order or owner) to the specified window. + * + * @param hWnd A handle to a window. The window handle retrieved is relative + * to this window, based on the value of the uCmd parameter. + * + * @param uCmd The relationship between the specified window and the window + * whose handle is to be retrieved. + * + * @return If the function succeeds, the return value is a window handle. If + * no window exists with the specified relationship to the specified window, + * the return value is NULL. To get extended error information, call + * GetLastError. + */ + HWND GetWindow(HWND hWnd, DWORD uCmd); + + /** + * The UpdateWindow function updates the client area of the specified window + * by sending a WM_PAINT message to the window if the window's update region + * is not empty. The function sends a WM_PAINT message directly to the + * window procedure of the specified window, bypassing the application + * queue. If the update region is empty, no message is sent. + * + * @param hWnd Handle to the window to be updated. + * + * @return If the function succeeds, the return value is nonzero. If the + * function fails, the return value is zero. + */ + boolean UpdateWindow(HWND hWnd); + + /** + * Sets the specified window's show state. + * + * @param hWnd A handle to the window. + * + * @param nCmdShow Controls how the window is to be shown. This parameter is + * ignored the first time an application calls ShowWindow, if the program + * that launched the application provides a STARTUPINFO structure. + * Otherwise, the first time ShowWindow is called, the value should be the + * value obtained by the WinMain function in its nCmdShow parameter. + * + * @return If the function succeeds, the return value is nonzero. + * + * If the function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + boolean ShowWindow(HWND hWnd, int nCmdShow); + + /** + * Minimizes (but does not destroy) the specified window. + * + * @param hWnd A handle to the window to be minimized. + * + * @return If the function succeeds, the return value is nonzero. + * + * If the function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + boolean CloseWindow(HWND hWnd); + + /** + * Defines a system-wide hot key. + * + * @param hWnd A handle to the window that will receive + * @param id The identifier of the hot key + * @param fsModifiers The keys that must be pressed in combination with the + * key specified by the uVirtKey parameter in order to generate the + * @param vk The virtual-key code of the hot key + * @return If the function succeeds, the return value is nonzero. + * + * If the function fails, the return value is zero. To get extended error + * information, call {@link Kernel32#GetLastError}. + * {@link WinUser#WM_HOTKEY} messages generated by the hot key + * {@link WinUser#WM_HOTKEY} message.
+ * A combination of the following values + *

    + *
  • {@link WinUser#MOD_ALT} Either ALT key must be held down.
  • + *
  • {@link WinUser#MOD_CONTROL} Either CTRL key must be held down.
  • + *
  • {@link WinUser#MOD_NOREPEAT} Changes the hotkey behavior so that the + * keyboard auto-repeat does not yield multiple hotkey notifications. + *
    + * Windows Vista and Windows XP/2000: This flag is not supported.
  • + *
  • {@link WinUser#MOD_SHIFT} Either SHIFT key must be held down. + *
  • + *
  • {@link WinUser#MOD_WIN} Either WINDOWS key was held down. These keys + * are labeled with the Windows logo.
  • + *
+ */ + boolean RegisterHotKey(HWND hWnd, int id, int fsModifiers, int vk); + + /** + * Frees a hot key previously registered by the calling thread. + * + * @param hWnd A handle to the window associated with the hot key to be + * freed. This parameter should be NULL if the hot key is not associated + * with a window. + * + * @param id The identifier of the hot key to be freed. + * + * @return If the function succeeds, the return value is nonzero. + * + * If the function fails, the return value is zero. To get extended error + * information, call {@link Kernel32#GetLastError}. + */ + boolean UnregisterHotKey(Pointer hWnd, int id); + + /** + * Retrieves the time of the last input event. + * + * @param plii structure that receives the time of the last input event + * @return If the function succeeds, the return value is nonzero. + * + * If the function fails, the return value is zero. To get extended error + * information, call {@link Kernel32#GetLastError}. + */ + boolean GetLastInputInfo(LASTINPUTINFO plii); + + /** + * Registers a window class for subsequent use in calls to the CreateWindow + * or CreateWindowEx function. + * + * @param lpwcx Type: const WNDCLASSEX* A pointer to a WNDCLASSEX structure. + * You must fill the structure with the appropriate class attributes before + * passing it to the function. + * + * @return If the function succeeds, the return value is a class atom that + * uniquely identifies the class being registered. This atom can only be + * used by the CreateWindow, CreateWindowEx, GetClassInfo, GetClassInfoEx, + * FindWindow, FindWindowEx, and UnregisterClass functions and the + * IActiveIMMap::FilterClientWindows method. + * + * If the function fails, the return value is zero. To get extended error + * information, call {@link Kernel32#GetLastError}. + */ + public ATOM RegisterClassEx(WNDCLASSEX lpwcx); + + /** + * Unregisters a window class, freeing the memory required for the class. + * + * @param lpClassName [in] Type: LPCTSTR + * + * A null-terminated string or a class atom. If lpClassName is a string, it + * specifies the window class name. This class name must have been + * registered by a previous call to the RegisterClass or RegisterClassEx + * function. System classes, such as dialog box controls, cannot be + * unregistered. If this parameter is an atom, it must be a class atom + * created by a previous call to the RegisterClass or RegisterClassEx + * function. The atom must be in the low-order word of lpClassName; the + * high-order word must be zero. + * + * @param hInstance [in,optional] Type: HINSTANCE A handle to the instance + * of the module that created the class. * + * + * @return Type: BOOL If the function succeeds, the return value is nonzero. + * + * If the function fails, the return value is zero. To get extended error + * information, call {@link Kernel32#GetLastError}. + */ + public boolean UnregisterClass(WString lpClassName, HINSTANCE hInstance); + + /** + * Creates an overlapped, pop-up, or child window with an extended window + * style; otherwise, this function is identical to the CreateWindow + * function. For more information about creating a window and for full + * descriptions of the other parameters of CreateWindowEx, see CreateWindow. + * + * @param dwExStyle [in] Type: DWORD + * + * The extended window style of the window being created. For a list of + * possible values,see Extended Window Styles. + * + * @param lpClassName [in, optional] Type: LPCTSTR + * + * A null-terminated string or a class atom created by a previous call to + * the RegisterClass or RegisterClassEx function. The atom must be in the + * low-order word of lpClassName; the high-order word must be zero. If + * lpClassName is a string, it specifies the window class name. The class + * name can be any name registered with RegisterClass or RegisterClassEx, + * provided that the module that registers the class is also the module that + * creates the window. The class name can also be any of the predefined + * system class names. + * + * @param lpWindowName [in, optional] Type: LPCTSTR + * + * The window name. If the window style specifies a title bar, the window + * title pointed to by lpWindowName is displayed in the title bar. When + * using CreateWindow to create controls, such as buttons, check boxes, and + * static controls, use lpWindowName to specify the text of the control. + * When creating a static control with the SS_ICON style, use lpWindowName + * to specify the icon name or identifier. To specify an identifier, use the + * syntax "#num". + * + * @param dwStyle [in] Type: DWORD + * + * The style of the window being created. This parameter can be a + * combination of the window style values, plus the control styles indicated + * in the Remarks section. + * + * @param x [in] Type: int + * + * The initial horizontal position of the window. For an overlapped or + * pop-up window, the x parameter is the initial x-coordinate of the + * window's upper-left corner, in screen coordinates. For a child window, x + * is the x-coordinate of the upper-left corner of the window relative to + * the upper-left corner of the parent window's client area. If x is set to + * CW_USEDEFAULT, the system selects the default position for the window's + * upper-left corner and ignores the y parameter. CW_USEDEFAULT is valid + * only for overlapped windows; if it is specified for a pop-up or child + * window, the x and y parameters are set to zero. + * + * @param y [in] Type: int + * + * The initial vertical position of the window. For an overlapped or pop-up + * window, the y parameter is the initial y-coordinate of the window's + * upper-left corner, in screen coordinates. For a child window, y is the + * initial y-coordinate of the upper-left corner of the child window + * relative to the upper-left corner of the parent window's client area. For + * a list box y is the initial y-coordinate of the upper-left corner of the + * list box's client area relative to the upper-left corner of the parent + * window's client area. + * + * If an overlapped window is created with the WS_VISIBLE style bit set and + * the x parameter is set to CW_USEDEFAULT, then the y parameter determines + * how the window is shown. If the y parameter is CW_USEDEFAULT, then the + * window manager calls ShowWindow with the SW_SHOW flag after the window + * has been created. If the y parameter is some other value, then the window + * manager calls ShowWindow with that value as the nCmdShow parameter. + * + * @param nWidth [in] Type: int + * + * The width, in device units, of the window. For overlapped windows, nWidth + * is the window's width, in screen coordinates, or CW_USEDEFAULT. If nWidth + * is CW_USEDEFAULT, the system selects a default width and height for the + * window; the default width extends from the initial x-coordinates to the + * right edge of the screen; the default height extends from the initial + * y-coordinate to the top of the icon area. CW_USEDEFAULT is valid only for + * overlapped windows; if CW_USEDEFAULT is specified for a pop-up or child + * window, the nWidth and nHeight parameter are set to zero. + * + * @param nHeight [in] Type: int + * + * The height, in device units, of the window. For overlapped windows, + * nHeight is the window's height, in screen coordinates. If the nWidth + * parameter is set to CW_USEDEFAULT, the system ignores nHeight. + * + * @param hWndParent [in, optional] Type: HWND + * + * A handle to the parent or owner window of the window being created. To + * create a child window or an owned window, supply a valid window handle. + * This parameter is optional for pop-up windows. + * + * To create a message-only window, supply HWND_MESSAGE or a handle to an + * existing message-only window. + * + * @param hMenu [in, optional] Type: HMENU + * + * A handle to a menu, or specifies a child-window identifier, depending on + * the window style. For an overlapped or pop-up window, hMenu identifies + * the menu to be used with the window; it can be NULL if the class menu is + * to be used. For a child window, hMenu specifies the child-window + * identifier, an integer value used by a dialog box control to notify its + * parent about events. The application determines the child-window + * identifier; it must be unique for all child windows with the same parent + * window. + * + * @param hInstance [in, optional] Type: HINSTANCE + * + * A handle to the instance of the module to be associated with the window. + * + * @param lpParam [in, optional] Type: LPVOID + * + * Pointer to a value to be passed to the window through the CREATESTRUCT + * structure (lpCreateParams member) pointed to by the lParam param of the + * WM_CREATE message. This message is sent to the created window by this + * function before it returns. + * + * If an application calls CreateWindow to create a MDI client window, + * lpParam should point to a CLIENTCREATESTRUCT structure. If an MDI client + * window calls CreateWindow to create an MDI child window, lpParam should + * point to a MDICREATESTRUCT structure. lpParam may be NULL if no + * additional data is needed. + * + * @return Type: HWND + * + * If the function succeeds, the return value is a handle to the new window. + * + * If the function fails, the return value is NULL. To get extended error + * information, call GetLastError. + * + * This function typically fails for one of the following reasons: + *

+ * - an invalid parameter value

+ * - the system class was registered by a different module

+ * - The WH_CBT hook is installed and returns a failure code

+ * - if one of the controls in the dialog template is not registered, or its + * window window procedure fails WM_CREATE or WM_NCCREATE + */ + public HWND CreateWindowEx(int dwExStyle, WString lpClassName, + String lpWindowName, int dwStyle, int x, int y, int nWidth, + int nHeight, HWND hWndParent, HMENU hMenu, HINSTANCE hInstance, + LPVOID lpParam); + + /** + * Destroys the specified window. The function sends WM_DESTROY and + * WM_NCDESTROY messages to the window to deactivate it and remove the + * keyboard focus from it. The function also destroys the window's menu, + * flushes the thread message queue, destroys timers, removes clipboard + * ownership, and breaks the clipboard viewer chain (if the window is at the + * top of the viewer chain). + * + * If the specified window is a parent or owner window, DestroyWindow + * automatically destroys the associated child or owned windows when it + * destroys the parent or owner window. The function first destroys child or + * owned windows, and then it destroys the parent or owner window. + * + * DestroyWindow also destroys modeless dialog boxes created by the + * CreateDialog function. + * + * @param hWnd [in] Type: HWND A handle to the window to be destroyed. + * + * @return Type: BOOL If the function succeeds, the return value is nonzero. + * + * If the function fails, the return value is zero. To get extended error + * information, call {@link Kernel32#GetLastError}. + */ + public boolean DestroyWindow(HWND hWnd); + + /** + * Retrieves information about a window class, including a handle to the + * small icon associated with the window class. The GetClassInfo function + * does not retrieve a handle to the small icon. + * + * @param hinst [in, optional] Type: HINSTANCE + * + * A handle to the instance of the application that created the class. To + * retrieve information about classes defined by the system (such as buttons + * or list boxes), set this parameter to NULL. + * + * @param lpszClass [in] Type: LPCTSTR + * + * The class name. The name must be that of a preregistered class or a class + * registered by a previous call to the RegisterClass or RegisterClassEx + * function. Alternatively, this parameter can be a class atom created by a + * previous call to RegisterClass or RegisterClassEx. The atom must be in + * the low-order word of lpszClass; the high-order word must be zero. + * + * @param lpwcx [out] Type: LPWNDCLASSEX + * + * A pointer to a WNDCLASSEX structure that receives the information about + * the class. + * + * @return Type: BOOL If the function finds a matching class and + * successfully copies the data, the return value is nonzero. + * + * If the function fails, the return value is zero. To get extended error + * information, call {@link Kernel32#GetLastError} . + */ + public boolean GetClassInfoEx(HINSTANCE hinst, WString lpszClass, + WNDCLASSEX lpwcx); + + /** + * Calls the default window procedure to provide default processing for any + * window messages that an application does not process. This function + * ensures that every message is processed. DefWindowProc is called with the + * same parameters received by the window procedure. + * + * @param hWnd [in] Type: HWND + * + * A handle to the window procedure that received the message. + * + * @param Msg [in] Type: UINT + * + * The message. + * + * @param wParam [in] Type: WPARAM + * + * Additional message information. The content of this parameter depends on + * the value of the Msg parameter. + * + * @param lParam [in] Type: LPARAM + * + * Additional message information. The content of this parameter depends on + * the value of the Msg parameter. + * + * @return Type: LRESULT The return value is the result of the message + * processing and depends on the message. + * + * If the function fails, the return value is zero. To get extended error + * information, call {@link Kernel32#GetLastError}. + */ + public LRESULT DefWindowProc(HWND hWnd, int Msg, WPARAM wParam, + LPARAM lParam); + + /** + * Registers the device or type of device for which a window will receive + * notifications. + * + * @param hRecipient [in] A handle to the window or service that will + * receive device events for the devices specified in the NotificationFilter + * parameter. The same window handle can be used in multiple calls to + * RegisterDeviceNotification. + * + * Services can specify either a window handle or service status handle. + * + * @param notificationFilter [in] A pointer to a block of data that + * specifies the type of device for which notifications should be sent. This + * block always begins with the DEV_BROADCAST_HDR structure. The data + * following this header is dependent on the value of the dbch_devicetype + * member, which can be DBT_DEVTYP_DEVICEINTERFACE or DBT_DEVTYP_HANDLE. For + * more information, see Remarks. + * + * @param Flags [in] This parameter can be one of the following values. + * DEVICE_NOTIFY_WINDOW_HANDLE0x00000000 The hRecipient parameter is a + * window handle. + * + * DEVICE_NOTIFY_SERVICE_HANDLE0x00000001 The hRecipient parameter is a + * service status handle. + * + * In addition, you can specify the following value. + * + * DEVICE_NOTIFY_ALL_INTERFACE_CLASSES0x00000004 Notifies the recipient of + * device interface events for all device interface classes. (The + * dbcc_classguid member is ignored.) + * + * This value can be used only if the dbch_devicetype member is + * DBT_DEVTYP_DEVICEINTERFACE. + * + * @return value + * + * If the function succeeds, the return value is a device notification + * handle. + * + * If the function fails, the return value is NULL. To get extended error + * information, call GetLastError. + */ + HDEVNOTIFY RegisterDeviceNotification(HANDLE hRecipient, + Structure notificationFilter, int Flags); + + /** + * Closes the specified device notification handle. + * + * @param Handle [in] Device notification handle returned by the + * RegisterDeviceNotification function. + * + * @return Return value + * + * If the function succeeds, the return value is nonzero. + * + * If the function fails, the return value is zero. To get extended error + * information, call GetLastError. + */ + boolean UnregisterDeviceNotification(HDEVNOTIFY Handle); + + /** + * Defines a new window message that is guaranteed to be unique throughout + * the system. The message value can be used when sending or posting + * messages. + * + * @param string The message to be registered. + * + * @return If the message is successfully registered, the return value is a + * message identifier in the range 0xC000 through 0xFFFF. + *

+ * If the function fails, the return value is zero. To get extended error + * information, call GetLastError. + *

+ */ + int RegisterWindowMessage(String string); + + boolean DrawIcon(HDC hDC, int X, int Y, HICON hIcon); + + boolean DrawIconEx(HDC hdc, int xLeft, int yTop, HICON hIcon, int cxWidth, int cyWidth, UINT istepIfAniCur, HBRUSH hbrFlickerFreeDraw, int diFlags); + + HWND GetDesktopWindow(); + public static final int DI_MASK = 1; + public static final int DI_IMAGE = 2; + public static final int DI_NORMAL = 3; + public static final int DI_COMPAT = 4; + public static final int DI_DEFAULTSIZE = 8; + + int FillRect(HDC hDC, RECT lprc, HANDLE hbr); +} diff --git a/src/com/jpexs/javactivex/jna/W32Errors.java b/src/com/jpexs/javactivex/jna/W32Errors.java new file mode 100644 index 0000000..e42b3a0 --- /dev/null +++ b/src/com/jpexs/javactivex/jna/W32Errors.java @@ -0,0 +1,181 @@ +/* Copyright (c) 2010,2011 Daniel Doubrovkine, All Rights Reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + */ +package com.jpexs.javactivex.jna; + +import com.jpexs.javactivex.jna.WinNT.HRESULT; + +// TODO: Auto-generated Javadoc +/** + * Utility class for some common error functions. + */ +public abstract class W32Errors implements WinError { + + /** + * Generic test for success on any status value (non-negative numbers + * indicate success). + * + * @param hr the hr + * @return true, if successful + */ + public static final boolean SUCCEEDED(int hr) { + return hr >= 0; + } + + /** + * and the inverse. + * + * @param hr the hr + * @return true, if successful + */ + public static final boolean FAILED(int hr) { + return hr < 0; + } + + /** + * Succeeded. + * + * @param hr the hr + * @return true, if successful + */ + public static final boolean SUCCEEDED(HRESULT hr) { + if (hr != null) { + return SUCCEEDED(hr.intValue()); + } else { + return false; + } + } + + /** + * Failed. + * + * @param hr the hr + * @return true, if successful + */ + public static final boolean FAILED(HRESULT hr) { + if (hr != null) { + return FAILED(hr.intValue()); + } else { + return false; + } + } + + /** + * Extract error code from HRESULT. + * + * @param hr the hr + * @return the int + */ + public static final int HRESULT_CODE(int hr) { + return hr & 0xFFFF; + } + + /** + * Extract error code from SCODE. + * + * @param sc the sc + * @return the int + */ + public static final int SCODE_CODE(int sc) { + return sc & 0xFFFF; + } + + /** + * Return the facility. + * + * @param hr the hr + * @return the int + */ + public static final int HRESULT_FACILITY(int hr) { + return (hr >>= 16) & 0x1fff; + } + + /** + * Scode facility. + * + * @param sc the sc + * @return the int + */ + public static final int SCODE_FACILITY(short sc) { + return (sc >>= 16) & 0x1fff; + } + + /** + * Return the severity. + * + * @param hr the hr + * @return the short + */ + public static short HRESULT_SEVERITY(int hr) { + return (short) ((hr >>= 31) & 0x1); + } + + /** + * Scode severity. + * + * @param sc the sc + * @return the short + */ + public static short SCODE_SEVERITY(short sc) { + return (short) ((sc >>= 31) & 0x1); + } + + /** + * Create an HRESULT value from component pieces. + * + * @param sev the sev + * @param fac the fac + * @param code the code + * @return the int + */ + public static int MAKE_HRESULT(short sev, short fac, short code) { + return ((sev << 31) | (fac << 16) | code); + } + + /** + * Make scode. + * + * @param sev the sev + * @param fac the fac + * @param code the code + * @return the int + */ + public static final int MAKE_SCODE(short sev, short fac, short code) { + return ((sev << 31) | (fac << 16) | code); + } + + /** + * Map a WIN32 error value into a HRESULT Note: This assumes that WIN32 + * errors fall in the range -32k to=32k. + * + * @param x original w32 error code + * @return the converted value + */ + public static final HRESULT HRESULT_FROM_WIN32(int x) { + int f = FACILITY_WIN32; + return new HRESULT(x <= 0 ? x : ((x) & 0x0000FFFF) | (f <<= 16) + | 0x80000000); + } + + /** + * FACILITY_USERMODE_FILTER_MANAGER + * + * Translation macro for converting: NTSTATUS --> HRESULT. + * + * @param x the x + * @return the int + */ + public static final int FILTER_HRESULT_FROM_FLT_NTSTATUS(int x) { + int f = FACILITY_USERMODE_FILTER_MANAGER; + return (((x) & 0x8000FFFF) | (f <<= 16)); + } +} diff --git a/src/com/jpexs/javactivex/jna/Win32Exception.java b/src/com/jpexs/javactivex/jna/Win32Exception.java new file mode 100644 index 0000000..84555ae --- /dev/null +++ b/src/com/jpexs/javactivex/jna/Win32Exception.java @@ -0,0 +1,55 @@ +package com.jpexs.javactivex.jna; + +/* Copyright (c) 2010 Daniel Doubrovkine, All Rights Reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + */ +import com.jpexs.javactivex.jna.WinNT.HRESULT; + +/** + * Win32 exception. + * + * @author dblock[at]dblock[dot]org + */ +public class Win32Exception extends RuntimeException { + + private static final long serialVersionUID = 1L; + private HRESULT _hr; + + /** + * Returns the error code of the error. + * + * @return Error code. + */ + public HRESULT getHR() { + return _hr; + } + + /** + * New Win32 exception from HRESULT. + * + * @param hr HRESULT + */ + public Win32Exception(HRESULT hr) { + //super(Kernel32Util.formatMessageFromHR(hr)); + _hr = hr; + } + + /** + * New Win32 exception from an error code, usually obtained from + * GetLastError. + * + * @param code Error code. + */ + public Win32Exception(int code) { + this(W32Errors.HRESULT_FROM_WIN32(code)); + } +} diff --git a/src/com/jpexs/javactivex/jna/WinBase.java b/src/com/jpexs/javactivex/jna/WinBase.java new file mode 100644 index 0000000..d8d32e8 --- /dev/null +++ b/src/com/jpexs/javactivex/jna/WinBase.java @@ -0,0 +1,899 @@ +/* Copyright (c) 2010 Daniel Doubrovkine, All Rights Reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + */ +package com.jpexs.javactivex.jna; + +import com.sun.jna.Platform; +import com.sun.jna.Pointer; +import com.sun.jna.Structure; +import com.sun.jna.Union; +import com.jpexs.javactivex.jna.WinNT.HANDLE; +import com.sun.jna.ptr.ByteByReference; +import com.sun.jna.win32.StdCallLibrary; +import java.util.Arrays; +import java.util.Date; +import java.util.List; + +/** + * Ported from Winbase.h (kernel32.dll/kernel services). Microsoft Windows SDK + * 6.0A. + * + * @author dblock[at]dblock.org + */ +public interface WinBase extends StdCallLibrary, WinDef, BaseTSD { + + /** + * Constant value representing an invalid HANDLE. + */ + HANDLE INVALID_HANDLE_VALUE + = new HANDLE(Pointer.createConstant(Pointer.SIZE == 8 + ? -1 : 0xFFFFFFFFL)); + /** + * Maximum computer name length. The value is 15 on Mac, 31 on everything + * else. + */ + int MAX_COMPUTERNAME_LENGTH = Platform.isMac() ? 15 : 31; + /** + * This logon type is intended for users who will be interactively using the + * computer, such as a user being logged on by a terminal server, remote + * shell, or similar process. This logon type has the additional expense of + * caching logon information for disconnected operations; therefore, it is + * inappropriate for some client/server applications, such as a mail server. + */ + int LOGON32_LOGON_INTERACTIVE = 2; + /** + * This logon type is intended for high performance servers to authenticate + * plaintext passwords. The LogonUser function does not cache credentials + * for this logon type. + */ + int LOGON32_LOGON_NETWORK = 3; + /** + * This logon type is intended for batch servers, where processes may be + * executing on behalf of a user without their direct intervention. This + * type is also for higher performance servers that process many plaintext + * authentication attempts at a time, such as mail or Web servers. The + * LogonUser function does not cache credentials for this logon type. + */ + int LOGON32_LOGON_BATCH = 4; + /** + * Indicates a service-type logon. The account provided must have the + * service privilege enabled. + */ + int LOGON32_LOGON_SERVICE = 5; + /** + * This logon type is for GINA DLLs that log on users who will be + * interactively using the computer. This logon type can generate a unique + * audit record that shows when the workstation was unlocked. + */ + int LOGON32_LOGON_UNLOCK = 7; + /** + * This logon type preserves the name and password in the authentication + * package, which allows the server to make connections to other network + * servers while impersonating the client. A server can accept plaintext + * credentials from a client, call LogonUser, verify that the user can + * access the system across the network, and still communicate with other + * servers. + */ + int LOGON32_LOGON_NETWORK_CLEARTEXT = 8; + /** + * This logon type allows the caller to clone its current token and specify + * new credentials for outbound connections. The new logon session has the + * same local identifier but uses different credentials for other network + * connections. This logon type is supported only by the + * LOGON32_PROVIDER_WINNT50 logon provider. + */ + int LOGON32_LOGON_NEW_CREDENTIALS = 9; + /** + * Use the standard logon provider for the system. The default security + * provider is negotiate, unless you pass NULL for the domain name and the + * user name is not in UPN format. In this case, the default provider is + * NTLM. + */ + int LOGON32_PROVIDER_DEFAULT = 0; + /** + * Use the Windows NT 3.5 logon provider. + */ + int LOGON32_PROVIDER_WINNT35 = 1; + /** + * Use the NTLM logon provider. + */ + int LOGON32_PROVIDER_WINNT40 = 2; + /** + * Use the negotiate logon provider. + */ + int LOGON32_PROVIDER_WINNT50 = 3; + /** + * If this flag is set, a child process created with the bInheritHandles + * parameter of CreateProcess set to TRUE will inherit the object handle. + */ + int HANDLE_FLAG_INHERIT = 1; + /** + * If this flag is set, calling the {@link Kernel32#CloseHandle} function + * will not close the object handle. + */ + int HANDLE_FLAG_PROTECT_FROM_CLOSE = 2; + // STARTUPINFO flags + int STARTF_USESHOWWINDOW = 0x001; + int STARTF_USESIZE = 0x002; + int STARTF_USEPOSITION = 0x004; + int STARTF_USECOUNTCHARS = 0x008; + int STARTF_USEFILLATTRIBUTE = 0x010; + int STARTF_RUNFULLSCREEN = 0x020; + int STARTF_FORCEONFEEDBACK = 0x040; + int STARTF_FORCEOFFFEEDBACK = 0x080; + int STARTF_USESTDHANDLES = 0x100; + // Process Creation flags + int DEBUG_PROCESS = 0x00000001; + int DEBUG_ONLY_THIS_PROCESS = 0x00000002; + int CREATE_SUSPENDED = 0x00000004; + int DETACHED_PROCESS = 0x00000008; + int CREATE_NEW_CONSOLE = 0x00000010; + int CREATE_NEW_PROCESS_GROUP = 0x00000200; + int CREATE_UNICODE_ENVIRONMENT = 0x00000400; + int CREATE_SEPARATE_WOW_VDM = 0x00000800; + int CREATE_SHARED_WOW_VDM = 0x00001000; + int CREATE_FORCEDOS = 0x00002000; + int INHERIT_PARENT_AFFINITY = 0x00010000; + int CREATE_PROTECTED_PROCESS = 0x00040000; + int EXTENDED_STARTUPINFO_PRESENT = 0x00080000; + int CREATE_BREAKAWAY_FROM_JOB = 0x01000000; + int CREATE_PRESERVE_CODE_AUTHZ_LEVEL = 0x02000000; + int CREATE_DEFAULT_ERROR_MODE = 0x04000000; + int CREATE_NO_WINDOW = 0x08000000; + + /* Invalid return values */ + int INVALID_FILE_SIZE = 0xFFFFFFFF; + int INVALID_SET_FILE_POINTER = 0xFFFFFFFF; + int INVALID_FILE_ATTRIBUTES = 0xFFFFFFFF; + /** + * Return code for a process still active. + */ + int STILL_ACTIVE = WinNT.STATUS_PENDING; + + /** + * The FILETIME structure is a 64-bit value representing the number of + * 100-nanosecond intervals since January 1, 1601 (UTC). Conversion code in + * this class Copyright 2002-2004 Apache Software Foundation. + * + * @author Rainer Klute (klute@rainer-klute.de) for the Apache Software + * Foundation (org.apache.poi.hpsf) + */ + public static class FILETIME extends Structure { + + public int dwLowDateTime; + public int dwHighDateTime; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"dwLowDateTime", "dwHighDateTime"}); + } + + public static class ByReference extends FILETIME implements Structure.ByReference { + + public ByReference() { + } + + public ByReference(Pointer memory) { + super(memory); + } + } + + public FILETIME(Date date) { + long rawValue = dateToFileTime(date); + dwHighDateTime = (int) (rawValue >> 32 & 0xffffffffL); + dwLowDateTime = (int) (rawValue & 0xffffffffL); + } + + public FILETIME() { + } + + public FILETIME(Pointer memory) { + super(memory); + read(); + } + /** + *

+ * The difference between the Windows epoch (1601-01-01 00:00:00) and + * the Unix epoch (1970-01-01 00:00:00) in milliseconds: + * 11644473600000L. (Use your favorite spreadsheet program to verify the + * correctness of this value. By the way, did you notice that you can + * tell from the epochs which operating system is the modern one? + * :-))

+ */ + private static final long EPOCH_DIFF = 11644473600000L; + + /** + *

+ * Converts a Windows FILETIME into a {@link Date}. The Windows FILETIME + * structure holds a date and time associated with a file. The structure + * identifies a 64-bit integer specifying the number of 100-nanosecond + * intervals which have passed since January 1, 1601. This 64-bit value + * is split into the two double words stored in the structure.

+ * + * @param high The higher double word of the FILETIME structure. + * @param low The lower double word of the FILETIME structure. + * @return The Windows FILETIME as a {@link Date}. + */ + public static Date filetimeToDate(final int high, final int low) { + final long filetime = (long) high << 32 | low & 0xffffffffL; + final long ms_since_16010101 = filetime / (1000 * 10); + final long ms_since_19700101 = ms_since_16010101 - EPOCH_DIFF; + return new Date(ms_since_19700101); + } + + /** + *

+ * Converts a {@link Date} into a filetime.

+ * + * @param date The date to be converted + * @return The filetime + * + * @see #filetimeToDate + */ + public static long dateToFileTime(final Date date) { + final long ms_since_19700101 = date.getTime(); + final long ms_since_16010101 = ms_since_19700101 + EPOCH_DIFF; + return ms_since_16010101 * 1000 * 10; + } + + public Date toDate() { + return filetimeToDate(dwHighDateTime, dwLowDateTime); + } + + public long toLong() { + return toDate().getTime(); + } + + @Override + public String toString() { + return super.toString() + ": " + toDate().toString(); //$NON-NLS-1$ + } + } + /* Local Memory Flags */ + int LMEM_FIXED = 0x0000; + int LMEM_MOVEABLE = 0x0002; + int LMEM_NOCOMPACT = 0x0010; + int LMEM_NODISCARD = 0x0020; + int LMEM_ZEROINIT = 0x0040; + int LMEM_MODIFY = 0x0080; + int LMEM_DISCARDABLE = 0x0F00; + int LMEM_VALID_FLAGS = 0x0F72; + int LMEM_INVALID_HANDLE = 0x8000; + int LHND = (LMEM_MOVEABLE | LMEM_ZEROINIT); + int LPTR = (LMEM_FIXED | LMEM_ZEROINIT); + + /* Flags returned by LocalFlags (in addition to LMEM_DISCARDABLE) */ + int LMEM_DISCARDED = 0x4000; + int LMEM_LOCKCOUNT = 0x00FF; + + /** + * Specifies a date and time, using individual members for the month, day, + * year, weekday, hour, minute, second, and millisecond. The time is either + * in coordinated universal time (UTC) or local time, depending on the + * function that is being called. + * http://msdn.microsoft.com/en-us/library/ms724950(VS.85).aspx + */ + public static class SYSTEMTIME extends Structure { + // The year. The valid values for this member are 1601 through 30827. + + public short wYear; + // The month. The valid values for this member are 1 through 12. + public short wMonth; + // The day of the week. The valid values for this member are 0 through 6. + public short wDayOfWeek; + // The day of the month. The valid values for this member are 1 through 31. + public short wDay; + // The hour. The valid values for this member are 0 through 23. + public short wHour; + // The minute. The valid values for this member are 0 through 59. + public short wMinute; + // The second. The valid values for this member are 0 through 59. + public short wSecond; + // The millisecond. The valid values for this member are 0 through 999. + public short wMilliseconds; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"wYear", "wMonth", "wDayOfWeek", "wDay", "wHour", "wMinute", "wSecond", "wMilliseconds"}); + } + } + /** + * The lpBuffer parameter is a pointer to a PVOID pointer, and that the + * nSize parameter specifies the minimum number of TCHARs to allocate for an + * output message buffer. The function allocates a buffer large enough to + * hold the formatted message, and places a pointer to the allocated buffer + * at the address specified by lpBuffer. The caller should use the LocalFree + * function to free the buffer when it is no longer needed. + */ + int FORMAT_MESSAGE_ALLOCATE_BUFFER = 0x00000100; + /** + * Insert sequences in the message definition are to be ignored and passed + * through to the output buffer unchanged. This flag is useful for fetching + * a message for later formatting. If this flag is set, the Arguments + * parameter is ignored. + */ + int FORMAT_MESSAGE_IGNORE_INSERTS = 0x00000200; + /** + * The lpSource parameter is a pointer to a null-terminated message + * definition. The message definition may contain insert sequences, just as + * the message text in a message table resource may. Cannot be used with + * FORMAT_MESSAGE_FROM_HMODULE or FORMAT_MESSAGE_FROM_SYSTEM. + */ + int FORMAT_MESSAGE_FROM_STRING = 0x00000400; + /** + * The lpSource parameter is a module handle containing the message-table + * resource(s) to search. If this lpSource handle is NULL, the current + * process's application image file will be searched. Cannot be used with + * FORMAT_MESSAGE_FROM_STRING. + */ + int FORMAT_MESSAGE_FROM_HMODULE = 0x00000800; + /** + * The function should search the system message-table resource(s) for the + * requested message. If this flag is specified with + * FORMAT_MESSAGE_FROM_HMODULE, the function searches the system message + * table if the message is not found in the module specified by lpSource. + * Cannot be used with FORMAT_MESSAGE_FROM_STRING. If this flag is + * specified, an application can pass the result of the GetLastError + * function to retrieve the message text for a system-defined error. + */ + int FORMAT_MESSAGE_FROM_SYSTEM = 0x00001000; + /** + * The Arguments parameter is not a va_list structure, but is a pointer to + * an array of values that represent the arguments. This flag cannot be used + * with 64-bit argument values. If you are using 64-bit values, you must use + * the va_list structure. + */ + int FORMAT_MESSAGE_ARGUMENT_ARRAY = 0x00002000; + /** + * The drive type cannot be determined. + */ + int DRIVE_UNKNOWN = 0; + /** + * The root path is invalid, for example, no volume is mounted at the path. + */ + int DRIVE_NO_ROOT_DIR = 1; + /** + * The drive is a type that has removable media, for example, a floppy drive + * or removable hard disk. + */ + int DRIVE_REMOVABLE = 2; + /** + * The drive is a type that cannot be removed, for example, a fixed hard + * drive. + */ + int DRIVE_FIXED = 3; + /** + * The drive is a remote (network) drive. + */ + int DRIVE_REMOTE = 4; + /** + * The drive is a CD-ROM drive. + */ + int DRIVE_CDROM = 5; + /** + * The drive is a RAM disk. + */ + int DRIVE_RAMDISK = 6; + + /** + * The OVERLAPPED structure contains information used in asynchronous (or + * overlapped) input and output (I/O). + */ + public static class OVERLAPPED extends Structure { + + public ULONG_PTR Internal; + public ULONG_PTR InternalHigh; + public int Offset; + public int OffsetHigh; + public HANDLE hEvent; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"Internal", "InternalHigh", "Offset", "OffsetHigh", "hEvent"}); + } + } + int INFINITE = 0xFFFFFFFF; + + /** + * Contains information about the current computer system. This includes the + * architecture and type of the processor, the number of processors in the + * system, the page size, and other such information. + */ + public static class SYSTEM_INFO extends Structure { + + /** + * Unnamed inner structure. + */ + public static class PI extends Structure { + + public static class ByReference extends PI implements Structure.ByReference { + } + /** + * System's processor architecture. This value can be one of the + * following values: + * + * PROCESSOR_ARCHITECTURE_UNKNOWN PROCESSOR_ARCHITECTURE_INTEL + * PROCESSOR_ARCHITECTURE_IA64 PROCESSOR_ARCHITECTURE_AMD64 + */ + public WORD wProcessorArchitecture; + /** + * Reserved for future use. + */ + public WORD wReserved; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"wProcessorArchitecture", "wReserved"}); + } + } + + /** + * Unnamed inner union. + */ + public static class UNION extends Union { + + public static class ByReference extends UNION implements Structure.ByReference { + } + /** + * An obsolete member that is retained for compatibility with + * Windows NT 3.5 and earlier. New applications should use the + * wProcessorArchitecture branch of the union. Windows Me/98/95: The + * system always sets this member to zero, the value defined for + * PROCESSOR_ARCHITECTURE_INTEL. + */ + public DWORD dwOemID; + /** + * Processor architecture (unnamed struct). + */ + public PI pi; + } + /** + * Processor architecture (unnamed union). + */ + public UNION processorArchitecture; + /** + * Page size and the granularity of page protection and commitment. + */ + public DWORD dwPageSize; + /** + * Pointer to the lowest memory address accessible to applications and + * dynamic-link libraries (DLLs). + */ + public Pointer lpMinimumApplicationAddress; + /** + * Pointer to the highest memory address accessible to applications and + * DLLs. + */ + public Pointer lpMaximumApplicationAddress; + /** + * Mask representing the set of processors configured into the system. + * Bit 0 is processor 0; bit 31 is processor 31. + */ + public DWORD_PTR dwActiveProcessorMask; + /** + * Number of processors in the system. + */ + public DWORD dwNumberOfProcessors; + /** + * An obsolete member that is retained for compatibility with Windows NT + * 3.5 and Windows Me/98/95. Use the wProcessorArchitecture, + * wProcessorLevel, and wProcessorRevision members to determine the type + * of processor. PROCESSOR_INTEL_386 PROCESSOR_INTEL_486 + * PROCESSOR_INTEL_PENTIUM + */ + public DWORD dwProcessorType; + /** + * Granularity for the starting address at which virtual memory can be + * allocated. + */ + public DWORD dwAllocationGranularity; + /** + * System's architecture-dependent processor level. It should be used + * only for display purposes. To determine the feature set of a + * processor, use the IsProcessorFeaturePresent function. If + * wProcessorArchitecture is PROCESSOR_ARCHITECTURE_INTEL, + * wProcessorLevel is defined by the CPU vendor. If + * wProcessorArchitecture is PROCESSOR_ARCHITECTURE_IA64, + * wProcessorLevel is set to 1. + */ + public WORD wProcessorLevel; + /** + * Architecture-dependent processor revision. + */ + public WORD wProcessorRevision; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"processorArchitecture", "dwPageSize", "lpMinimumApplicationAddress", "lpMaximumApplicationAddress", "dwActiveProcessorMask", "dwNumberOfProcessors", "dwProcessorType", "dwAllocationGranularity", "wProcessorLevel", "wProcessorRevision"}); + } + } + + /** + * Contains information about the current state of both physical and virtual + * memory, including extended memory. The GlobalMemoryStatusEx function + * stores information in this structure. + */ + public static class MEMORYSTATUSEX extends Structure { + + /** + * The size of the structure, in bytes. + */ + public DWORD dwLength; + /** + * A number between 0 and 100 that specifies the approximate percentage + * of physical memory that is in use (0 indicates no memory use and 100 + * indicates full memory use). + */ + public DWORD dwMemoryLoad; + /** + * The amount of actual physical memory, in bytes. + */ + public DWORDLONG ullTotalPhys; + /** + * The amount of physical memory currently available, in bytes. This is + * the amount of physical memory that can be immediately reused without + * having to write its contents to disk first. It is the sum of the size + * of the standby, free, and zero lists. + */ + public DWORDLONG ullAvailPhys; + /** + * The current committed memory limit for the system or the current + * process, whichever is smaller, in bytes. + */ + public DWORDLONG ullTotalPageFile; + /** + * The maximum amount of memory the current process can commit, in + * bytes. This value is equal to or smaller than the system-wide + * available commit value. + */ + public DWORDLONG ullAvailPageFile; + /** + * The size of the user-mode portion of the virtual address space of the + * calling process, in bytes. + */ + public DWORDLONG ullTotalVirtual; + /** + * The amount of unreserved and uncommitted memory currently in the + * user-mode portion of the virtual address space of the calling + * process, in bytes. + */ + public DWORDLONG ullAvailVirtual; + /** + * Reserved. This value is always 0. + */ + public DWORDLONG ullAvailExtendedVirtual; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"dwLength", "dwMemoryLoad", "ullTotalPhys", "ullAvailPhys", "ullTotalPageFile", "ullAvailPageFile", "ullTotalVirtual", "ullAvailVirtual", "ullAvailExtendedVirtual"}); + } + + public MEMORYSTATUSEX() { + dwLength = new DWORD(size()); + } + }; + + /** + * The SECURITY_ATTRIBUTES structure contains the security descriptor for an + * object and specifies whether the handle retrieved by specifying this + * structure is inheritable. This structure provides security settings for + * objects created by various functions, such as Kernel32#CreateFile, + * Kernel32#CreatePipe, or Advapi32#RegCreateKeyEx. + */ + public static class SECURITY_ATTRIBUTES extends Structure { + + /** + * The size of the structure, in bytes. + */ + public DWORD dwLength; + /** + * A pointer to a SECURITY_DESCRIPTOR structure that controls access to + * the object. + */ + public Pointer lpSecurityDescriptor; + /** + * A Boolean value that specifies whether the returned handle is + * inherited when a new process is created + */ + public boolean bInheritHandle; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"dwLength", "lpSecurityDescriptor", "bInheritHandle"}); + } + + public SECURITY_ATTRIBUTES() { + dwLength = new DWORD(size()); + } + } + + /** + * Specifies the window station, desktop, standard handles, and appearance + * of the main window for a process at creation time. + */ + public static class STARTUPINFO extends Structure { + + /** + * The size of the structure, in bytes. + */ + public DWORD cb; + /** + * Reserved; must be NULL. + */ + public String lpReserved; + /** + * The name of the desktop, or the name of both the desktop and window + * station for this process. A backslash in the string indicates that + * the string includes both the desktop and window station names. For + * more information, see Thread Connection to a Desktop. + */ + public String lpDesktop; + /** + * For console processes, this is the title displayed in the title bar + * if a new console window is created. If NULL, the name of the + * executable file is used as the window title instead. This parameter + * must be NULL for GUI or console processes that do not create a new + * console window. + */ + public String lpTitle; + /** + * If dwFlags specifies STARTF_USEPOSITION, this member is the x offset + * of the upper left corner of a window if a new window is created, in + * pixels. Otherwise, this member is ignored. + * + * The offset is from the upper left corner of the screen. For GUI + * processes, the specified position is used the first time the new + * process calls CreateWindow to create an overlapped window if the x + * parameter of CreateWindow is CW_USEDEFAULT. + */ + public DWORD dwX; + /** + * If dwFlags specifies STARTF_USEPOSITION, this member is the y offset + * of the upper left corner of a window if a new window is created, in + * pixels. Otherwise, this member is ignored. + * + * The offset is from the upper left corner of the screen. For GUI + * processes, the specified position is used the first time the new + * process calls CreateWindow to create an overlapped window if the y + * parameter of CreateWindow is CW_USEDEFAULT. + */ + public DWORD dwY; + /** + * If dwFlags specifies STARTF_USESIZE, this member is the width of the + * window if a new window is created, in pixels. Otherwise, this member + * is ignored. + * + * For GUI processes, this is used only the first time the new process + * calls CreateWindow to create an overlapped window if the nWidth + * parameter of CreateWindow is CW_USEDEFAULT. + */ + public DWORD dwXSize; + /** + * If dwFlags specifies STARTF_USESIZE, this member is the height of the + * window if a new window is created, in pixels. Otherwise, this member + * is ignored. + * + * For GUI processes, this is used only the first time the new process + * calls CreateWindow to create an overlapped window if the nHeight + * parameter of CreateWindow is CW_USEDEFAULT. + */ + public DWORD dwYSize; + /** + * If dwFlags specifies STARTF_USECOUNTCHARS, if a new console window is + * created in a console process, this member specifies the screen buffer + * width, in character columns. Otherwise, this member is ignored. + */ + public DWORD dwXCountChars; + /** + * If dwFlags specifies STARTF_USECOUNTCHARS, if a new console window is + * created in a console process, this member specifies the screen buffer + * height, in character rows. Otherwise, this member is ignored. + */ + public DWORD dwYCountChars; + /** + * If dwFlags specifies STARTF_USEFILLATTRIBUTE, this member is the + * initial text and background colors if a new console window is created + * in a console application. Otherwise, this member is ignored. + * + * This value can be any combination of the following values: + * FOREGROUND_BLUE, FOREGROUND_GREEN, FOREGROUND_RED, + * FOREGROUND_INTENSITY, BACKGROUND_BLUE, BACKGROUND_GREEN, + * BACKGROUND_RED, and BACKGROUND_INTENSITY. For example, the following + * combination of values produces red text on a white background: + * + * FOREGROUND_RED| BACKGROUND_RED| BACKGROUND_GREEN| BACKGROUND_BLUE + */ + public DWORD dwFillAttribute; + /** + * A bit field that determines whether certain STARTUPINFO members are + * used when the process creates a window. + */ + public int dwFlags; + /** + * If dwFlags specifies STARTF_USESHOWWINDOW, this member can be any of + * the values that can be specified in the nCmdShow parameter for the + * ShowWindow function, except for SW_SHOWDEFAULT. Otherwise, this + * member is ignored. + * + * For GUI processes, the first time ShowWindow is called, its nCmdShow + * parameter is ignored wShowWindow specifies the default value. In + * subsequent calls to ShowWindow, the wShowWindow member is used if the + * nCmdShow parameter of ShowWindow is set to SW_SHOWDEFAULT. + */ + public WORD wShowWindow; + /** + * Reserved for use by the C Run-time; must be zero. + */ + public WORD cbReserved2; + /** + * Reserved for use by the C Run-time; must be NULL. + */ + public ByteByReference lpReserved2; + /** + * If dwFlags specifies STARTF_USESTDHANDLES, this member is the + * standard input handle for the process. If STARTF_USESTDHANDLES is not + * specified, the default for standard input is the keyboard buffer. + * + * If dwFlags specifies STARTF_USEHOTKEY, this member specifies a hotkey + * value that is sent as the wParam parameter of a WM_SETHOTKEY message + * to the first eligible top-level window created by the application + * that owns the process. If the window is created with the WS_POPUP + * window style, it is not eligible unless the WS_EX_APPWINDOW extended + * window style is also set. For more information, see CreateWindowEx. + * + * Otherwise, this member is ignored. + */ + public HANDLE hStdInput; + /** + * If dwFlags specifies STARTF_USESTDHANDLES, this member is the + * standard output handle for the process. Otherwise, this member is + * ignored and the default for standard output is the console window's + * buffer. + */ + public HANDLE hStdOutput; + /** + * If dwFlags specifies STARTF_USESTDHANDLES, this member is the + * standard error handle for the process. Otherwise, this member is + * ignored and the default for standard error is the console window's + * buffer. + */ + public HANDLE hStdError; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"cb", "lpReserved", "lpDesktop", "lpTitle", "dwX", "dwY", "dwXSize", "dwYSize", "dwXCountChars", "dwYCountChars", "dwFillAttribute", "dwFlags", "wShowWindow", "cbReserved2", "lpReserved2", "hStdInput", "hStdOutput", "hStdError"}); + } + + public STARTUPINFO() { + cb = new DWORD(size()); + } + } + + /** + * Contains information about a newly created process and its primary + * thread. It is used with the CreateProcess, CreateProcessAsUser, + * CreateProcessWithLogonW, or CreateProcessWithTokenW function. + */ + public static class PROCESS_INFORMATION extends Structure { + + /** + * A handle to the newly created process. The handle is used to specify + * the process in all functions that perform operations on the process + * object. + */ + public HANDLE hProcess; + /** + * A handle to the primary thread of the newly created process. The + * handle is used to specify the thread in all functions that perform + * operations on the thread object. + */ + public HANDLE hThread; + /** + * A value that can be used to identify a process. The value is valid + * from the time the process is created until all handles to the process + * are closed and the process object is freed; at this point, the + * identifier may be reused. + */ + public DWORD dwProcessId; + /** + * A value that can be used to identify a thread. The value is valid + * from the time the thread is created until all handles to the thread + * are closed and the thread object is freed; at this point, the + * identifier may be reused. + */ + public DWORD dwThreadId; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"hProcess", "hThread", "dwProcessId", "dwThreadId"}); + } + + public static class ByReference extends PROCESS_INFORMATION implements Structure.ByReference { + + public ByReference() { + } + + public ByReference(Pointer memory) { + super(memory); + } + } + + public PROCESS_INFORMATION() { + } + + public PROCESS_INFORMATION(Pointer memory) { + super(memory); + read(); + } + } + /** + * If the file is to be moved to a different volume, the function simulates + * the move by using the CopyFile and DeleteFile functions. + * + * This value cannot be used with MOVEFILE_DELAY_UNTIL_REBOOT. + */ + int MOVEFILE_COPY_ALLOWED = 0x2; + /** + * Reserved for future use. + */ + int MOVEFILE_CREATE_HARDLINK = 0x10; + /** + * The system does not move the file until the operating system is + * restarted. The system moves the file immediately after AUTOCHK is + * executed, but before creating any paging files. Consequently, this + * parameter enables the function to delete paging files from previous + * startups. + * + * This value can be used only if the process is in the context of a user + * who belongs to the administrators group or the LocalSystem account. + * + * This value cannot be used with MOVEFILE_COPY_ALLOWED. + * + * Windows Server 2003 and Windows XP: For information about special + * situations where this functionality can fail, and a suggested workaround + * solution, see Files are not exchanged when Windows Server 2003 restarts + * if you use the MoveFileEx function to schedule a replacement for some + * files in the Help and Support Knowledge Base. + * + * Windows 2000: If you specify the MOVEFILE_DELAY_UNTIL_REBOOT flag for + * dwFlags, you cannot also prepend the file name that is specified by + * lpExistingFileName with "\\?". + */ + int MOVEFILE_DELAY_UNTIL_REBOOT = 0x4; + /** + * The function fails if the source file is a link source, but the file + * cannot be tracked after the move. This situation can occur if the + * destination is a volume formatted with the FAT file system. + */ + int MOVEFILE_FAIL_IF_NOT_TRACKABLE = 0x20; + /** + * If a file named lpNewFileName exists, the function replaces its contents + * with the contents of the lpExistingFileName file, provided that security + * requirements regarding access control lists (ACLs) are met. For more + * information, see the Remarks section of this topic. + * + * This value cannot be used if lpNewFileName or lpExistingFileName names a + * directory. + */ + int MOVEFILE_REPLACE_EXISTING = 0x1; + /** + * The function does not return until the file is actually moved on the + * disk. + * + * Setting this value guarantees that a move performed as a copy and delete + * operation is flushed to disk before the function returns. The flush + * occurs at the end of the copy operation. + * + * This value has no effect if MOVEFILE_DELAY_UNTIL_REBOOT is set. + */ + int MOVEFILE_WRITE_THROUGH = 0x8; +} diff --git a/src/com/jpexs/javactivex/jna/WinDef.java b/src/com/jpexs/javactivex/jna/WinDef.java new file mode 100644 index 0000000..8c5a336 --- /dev/null +++ b/src/com/jpexs/javactivex/jna/WinDef.java @@ -0,0 +1,1132 @@ +/* Copyright (c) 2010 Daniel Doubrovkine, All Rights Reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + */ +package com.jpexs.javactivex.jna; + +import com.sun.jna.IntegerType; +import com.sun.jna.Pointer; +import com.sun.jna.Structure; +import com.jpexs.javactivex.jna.BaseTSD.LONG_PTR; +import com.jpexs.javactivex.jna.WinNT.HANDLE; +import com.sun.jna.ptr.ByReference; +import com.sun.jna.win32.StdCallLibrary; +import java.awt.Rectangle; +import java.util.Arrays; +import java.util.List; + +// TODO: Auto-generated Javadoc +/** + * Ported from Windef.h (various macros and types). Microsoft Windows SDK 6.0A. + * + * @author dblock[at]dblock.org + */ +@SuppressWarnings("serial") +public interface WinDef extends StdCallLibrary { + + /** + * The max path. + */ + int MAX_PATH = 260; + + /** + * 16-bit unsigned integer. + */ + public static class WORD extends IntegerType { + + public static final int SIZE = 2; + + /** + * Instantiates a new word. + */ + public WORD() { + this(0); + } + + /** + * Instantiates a new word. + * + * @param value the value + */ + public WORD(long value) { + super(SIZE, value, true); + } + } + + public static final class WORDbyReference extends ByReference { + + public WORDbyReference() { + this(new WORD(0)); + } + + public WORDbyReference(WORD value) { + super(WORD.SIZE); + setValue(value); + } + + public void setValue(WORD value) { + getPointer().setInt(0, value.intValue()); + } + + public WORD getValue() { + return new WORD(getPointer().getInt(0)); + } + } + + /** + * 32-bit unsigned integer. + */ + public static class DWORD extends IntegerType { + + public static final int SIZE = 4; + + /** + * Instantiates a new dword. + */ + public DWORD() { + this(0); + } + + /** + * Instantiates a new dword. + * + * @param value the value + */ + public DWORD(long value) { + super(SIZE, value, true); + } + + /** + * Low WORD. + * + * @return Low WORD. + */ + public WORD getLow() { + return new WORD(longValue() & 0xFF); + } + + /** + * High WORD. + * + * @return High WORD. + */ + public WORD getHigh() { + return new WORD((longValue() >> 16) & 0xFF); + } + } + + public static final class DWORDbyReference extends ByReference { + + public DWORDbyReference() { + this(new DWORD(0)); + } + + public DWORDbyReference(DWORD value) { + super(DWORD.SIZE); + setValue(value); + } + + public void setValue(DWORD value) { + getPointer().setInt(0, value.intValue()); + } + + public DWORD getValue() { + return new DWORD(getPointer().getInt(0)); + } + } + + public static class LONG extends IntegerType { + + public static final int SIZE = 4; + + public LONG() { + this(0); + } + + public LONG(int value) { + super(SIZE, value); + } + } + + public static final class LONGbyReference extends ByReference { + + public LONGbyReference() { + this(new LONG(0)); + } + + public LONGbyReference(LONG value) { + super(LONG.SIZE); + setValue(value); + } + + public void setValue(LONG value) { + getPointer().setInt(0, value.intValue()); + } + + public LONG getValue() { + return new LONG(getPointer().getInt(0)); + } + } + + public static class LONGLONG extends IntegerType { + + public static final int SIZE = 8; + + public LONGLONG() { + this(0); + } + + public LONGLONG(long value) { + super(8, value, false); + } + } + + public static final class LONGLONGbyReference extends ByReference { + + public LONGLONGbyReference() { + this(new LONGLONG(0)); + } + + public LONGLONGbyReference(LONGLONG value) { + super(LONGLONG.SIZE); + setValue(value); + } + + public void setValue(LONGLONG value) { + getPointer().setLong(0, value.longValue()); + } + + public LONGLONG getValue() { + return new LONGLONG(getPointer().getLong(0)); + } + } + + /** + * Handle to a device context (DC). + */ + public static class HDC extends HANDLE { + + /** + * Instantiates a new hdc. + */ + public HDC() { + } + + /** + * Instantiates a new hdc. + * + * @param p the p + */ + public HDC(Pointer p) { + super(p); + } + } + + /** + * Handle to an icon. + */ + public static class HICON extends HANDLE { + + /** + * Instantiates a new hicon. + */ + public HICON() { + } + + /** + * Instantiates a new hicon. + * + * @param p the p + */ + public HICON(Pointer p) { + super(p); + } + } + + /** + * Handle to a cursor. + */ + public static class HCURSOR extends HICON { + + /** + * Instantiates a new hcursor. + */ + public HCURSOR() { + } + + /** + * Instantiates a new hcursor. + * + * @param p the p + */ + public HCURSOR(Pointer p) { + super(p); + } + } + + /** + * Handle to a cursor. + */ + public static class HMENU extends HANDLE { + + /** + * Instantiates a new hmenu. + */ + public HMENU() { + } + + /** + * Instantiates a new hmenu. + * + * @param p the p + */ + public HMENU(Pointer p) { + super(p); + } + } + + /** + * Handle to a pen. + */ + public static class HPEN extends HANDLE { + + /** + * Instantiates a new hpen. + */ + public HPEN() { + } + + /** + * Instantiates a new hpen. + * + * @param p the p + */ + public HPEN(Pointer p) { + super(p); + } + } + + /** + * Handle to a resource. + */ + public static class HRSRC extends HANDLE { + + /** + * Instantiates a new hrsrc. + */ + public HRSRC() { + } + + /** + * Instantiates a new hrsrc. + * + * @param p the p + */ + public HRSRC(Pointer p) { + super(p); + } + } + + /** + * Handle to a palette. + */ + public static class HPALETTE extends HANDLE { + + /** + * Instantiates a new hpalette. + */ + public HPALETTE() { + } + + /** + * Instantiates a new hpalette. + * + * @param p the p + */ + public HPALETTE(Pointer p) { + super(p); + } + } + + /** + * Handle to a bitmap. + */ + public static class HBITMAP extends HANDLE { + + /** + * Instantiates a new hbitmap. + */ + public HBITMAP() { + } + + /** + * Instantiates a new hbitmap. + * + * @param p the p + */ + public HBITMAP(Pointer p) { + super(p); + } + } + + /** + * Handle to a region. + */ + public static class HRGN extends HANDLE { + + /** + * Instantiates a new hrgn. + */ + public HRGN() { + } + + /** + * Instantiates a new hrgn. + * + * @param p the p + */ + public HRGN(Pointer p) { + super(p); + } + } + + /** + * Handle to a window. + */ + public static class HWND extends HANDLE { + + /** + * Instantiates a new hwnd. + */ + public HWND() { + super(); + } + + /** + * Instantiates a new hwnd. + * + * @param p the p + */ + public HWND(Pointer p) { + super(p); + } + } + + /** + * Handle to an instance. + */ + public static class HINSTANCE extends HANDLE { + } + + /** + * Handle to a module. The value is the base address of the module. + */ + public static class HMODULE extends HINSTANCE { + } + + /** + * Handle to a font. + */ + public static class HFONT extends HANDLE { + + /** + * Instantiates a new hfont. + */ + public HFONT() { + } + + /** + * Instantiates a new hfont. + * + * @param p the p + */ + public HFONT(Pointer p) { + super(p); + } + } + + /** + * Message parameter. + */ + public static class LPARAM extends LONG_PTR { + + /** + * Instantiates a new lparam. + */ + public LPARAM() { + this(0); + } + + /** + * Instantiates a new lparam. + * + * @param value the value + */ + public LPARAM(long value) { + super(value); + } + } + + /** + * Signed result of message processing. + */ + public static class LRESULT extends LONG_PTR { + + /** + * Instantiates a new lresult. + */ + public LRESULT() { + this(0); + } + + /** + * Instantiates a new lresult. + * + * @param value the value + */ + public LRESULT(long value) { + super(value); + } + } + + /** + * Integer type big enough for a pointer. + */ + public static class INT_PTR extends IntegerType { + + /** + * Instantiates a new int ptr. + */ + public INT_PTR() { + super(Pointer.SIZE); + } + + /** + * Instantiates a new int ptr. + * + * @param value the value + */ + public INT_PTR(long value) { + super(Pointer.SIZE, value); + } + + /** + * To pointer. + * + * @return the pointer + */ + public Pointer toPointer() { + return Pointer.createConstant(longValue()); + } + } + + /** + * Unsigned INT_PTR. + */ + public static class UINT_PTR extends IntegerType { + + /** + * Instantiates a new uint ptr. + */ + public UINT_PTR() { + super(Pointer.SIZE); + } + + /** + * Instantiates a new uint ptr. + * + * @param value the value + */ + public UINT_PTR(long value) { + super(Pointer.SIZE, value, true); + } + + /** + * To pointer. + * + * @return the pointer + */ + public Pointer toPointer() { + return Pointer.createConstant(longValue()); + } + } + + /** + * Message parameter. + */ + public static class WPARAM extends UINT_PTR { + + /** + * Instantiates a new wparam. + */ + public WPARAM() { + this(0); + } + + /** + * Instantiates a new wparam. + * + * @param value the value + */ + public WPARAM(long value) { + super(value); + } + } + + /** + * The Class RECT. + */ + public class RECT extends Structure { + + /** + * The left. + */ + public int left; + /** + * The top. + */ + public int top; + /** + * The right. + */ + public int right; + /** + * The bottom. + */ + public int bottom; + + /* + * (non-Javadoc) + * + * @see com.sun.jna.Structure#getFieldOrder() + */ + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"left", "top", "right", + "bottom"}); + } + + /** + * To rectangle. + * + * @return the rectangle + */ + public Rectangle toRectangle() { + return new Rectangle(left, top, right - left, bottom - top); + } + + /* + * (non-Javadoc) + * + * @see com.sun.jna.Structure#toString() + */ + @Override + public String toString() { + return "[(" + left + "," + top + ")(" + right + "," + bottom + ")]"; + } + } + + /** + * 32-bit unsigned integer. + */ + public static class ULONG extends IntegerType { + + public static final int SIZE = 4; + + /** + * Instantiates a new ulong. + */ + public ULONG() { + this(0); + } + + /** + * Instantiates a new ulong. + * + * @param value the value + */ + public ULONG(int value) { + super(SIZE, value, true); + } + } + + public static final class ULONGbyReference extends ByReference { + + public ULONGbyReference() { + this(new ULONG(0)); + } + + public ULONGbyReference(ULONG value) { + super(ULONG.SIZE); + setValue(value); + } + + public void setValue(ULONG value) { + getPointer().setInt(0, value.intValue()); + } + + public ULONG getValue() { + return new ULONG(getPointer().getInt(0)); + } + } + + public static class ULONGLONG extends IntegerType { + + public static final int SIZE = 8; + + public ULONGLONG() { + this(0); + } + + public ULONGLONG(long value) { + super(SIZE, value, true); + } + } + + public static final class ULONGLONGbyReference extends ByReference { + + public ULONGLONGbyReference() { + this(new ULONGLONG(0)); + } + + public ULONGLONGbyReference(ULONGLONG value) { + super(ULONGLONG.SIZE); + setValue(value); + } + + public void setValue(ULONGLONG value) { + getPointer().setLong(0, value.longValue()); + } + + public ULONGLONG getValue() { + return new ULONGLONG(getPointer().getLong(0)); + } + } + + /** + * 64-bit unsigned integer. + */ + public static class DWORDLONG extends IntegerType { + + public static final int SIZE = 8; + + /** + * Instantiates a new dwordlong. + */ + public DWORDLONG() { + this(0); + } + + /** + * Instantiates a new dwordlong. + * + * @param value the value + */ + public DWORDLONG(long value) { + super(SIZE, value, true); + } + } + + /** + * Handle to a bitmap. + */ + public static class HBRUSH extends HANDLE { + + /** + * Instantiates a new hbrush. + */ + public HBRUSH() { + } + + /** + * Instantiates a new hbrush. + * + * @param p the p + */ + public HBRUSH(Pointer p) { + super(p); + } + } + + /** + * 16-bit unsigned integer. + */ + public static class ATOM extends WORD { + + /** + * Instantiates a new atom. + */ + public ATOM() { + this(0); + } + + /** + * Instantiates a new atom. + * + * @param value the value + */ + public ATOM(long value) { + super(value); + } + } + + /** + * The Class PVOID. + */ + public static class PVOID extends HANDLE { + + /** + * Instantiates a new pvoid. + */ + public PVOID() { + } + + /** + * Instantiates a new pvoid. + * + * @param p the p + */ + public PVOID(Pointer p) { + super(p); + } + } + + /** + * Message parameter. + */ + public static class LPVOID extends LONG_PTR { + + /** + * Instantiates a new lpvoid. + */ + public LPVOID() { + this(0); + } + + /** + * Instantiates a new lpvoid. + * + * @param value the value + */ + public LPVOID(long value) { + super(value); + } + } + + /** + * The Class POINT. + */ + public class POINT extends Structure { + + /** + * The Class ByReference. + */ + public static class ByReference extends POINT implements + Structure.ByReference { + } + + /** + * Instantiates a new point. + */ + public POINT() { + } + + /** + * Instantiates a new point. + * + * @param memory the memory + */ + public POINT(Pointer memory) { + super(memory); + read(); + } + /** + * The y. + */ + public int x, y; + + /** + * Instantiates a new point. + * + * @param x the x + * @param y the y + */ + public POINT(int x, int y) { + this.x = x; + this.y = y; + } + + /* + * (non-Javadoc) + * + * @see com.sun.jna.Structure#getFieldOrder() + */ + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"x", "y"}); + } + } + + /** + * 16-bit unsigned short. + */ + public static class USHORT extends IntegerType { + + public static final int SIZE = 2; + + /** + * Instantiates a new ushort. + */ + public USHORT() { + this(0); + } + + /** + * Instantiates a new ushort. + * + * @param value the value + */ + public USHORT(long value) { + super(2, value, true); + } + } + + public static final class USHORTbyReference extends ByReference { + + public USHORTbyReference() { + this(new USHORT(0)); + } + + public USHORTbyReference(USHORT value) { + super(USHORT.SIZE); + setValue(value); + } + + public void setValue(USHORT value) { + getPointer().setShort(0, value.shortValue()); + } + + public USHORT getValue() { + return new USHORT(getPointer().getShort(0)); + } + } + + /** + * 16-bit short. + */ + public static class SHORT extends IntegerType { + + public static final int SIZE = 2; + + /** + * Instantiates a new ushort. + */ + public SHORT() { + this(0); + } + + /** + * Instantiates a new ushort. + * + * @param value the value + */ + public SHORT(long value) { + super(SIZE, value, false); + } + } + + /** + * 32-bit unsigned int. + */ + public static class UINT extends IntegerType { + + public static final int SIZE = 4; + + /** + * Instantiates a new uint. + */ + public UINT() { + this(0); + } + + /** + * Instantiates a new uint. + * + * @param value the value + */ + public UINT(long value) { + super(SIZE, value, true); + } + } + + public static final class UINTbyReference extends ByReference { + + public UINTbyReference() { + this(new UINT(0)); + } + + public UINTbyReference(UINT value) { + super(UINT.SIZE); + setValue(value); + } + + public void setValue(UINT value) { + getPointer().setInt(0, value.intValue()); + } + + public UINT getValue() { + return new UINT(getPointer().getInt(0)); + } + } + + /** + * The Class SCODE. + */ + public static class SCODE extends ULONG { + + /** + * Instantiates a new scode. + */ + public SCODE() { + this(0); + } + + /** + * Instantiates a new scode. + * + * @param value the value + */ + public SCODE(int value) { + super(value); + } + } + + public static final class SCODEbyReference extends ByReference { + + public SCODEbyReference() { + this(new SCODE(0)); + } + + public SCODEbyReference(SCODE value) { + super(SCODE.SIZE); + setValue(value); + } + + public void setValue(SCODE value) { + getPointer().setInt(0, value.intValue()); + } + + public SCODE getValue() { + return new SCODE(getPointer().getInt(0)); + } + } + + public static class LCID extends DWORD { + + public LCID() { + super(0); + } + + public LCID(long value) { + super(value); + } + } + + public static class BOOL extends IntegerType { + + public static final int SIZE = 4; + + public BOOL() { + super(0); + } + + public BOOL(long value) { + super(SIZE, value, false); + } + } + + public static final class BOOLbyReference extends ByReference { + + public BOOLbyReference() { + this(new BOOL(0)); + } + + public BOOLbyReference(BOOL value) { + super(BOOL.SIZE); + setValue(value); + } + + public void setValue(BOOL value) { + getPointer().setInt(0, value.intValue()); + } + + public BOOL getValue() { + return new BOOL(getPointer().getInt(0)); + } + } + + public static class UCHAR extends IntegerType { + + public static final int SIZE = 1; + + public UCHAR() { + this(0); + } + + public UCHAR(long value) { + super(SIZE, value, true); + } + } + + public static class BYTE extends UCHAR { + + public BYTE() { + this(0); + } + + public BYTE(long value) { + super(value); + } + } + + public static class CHAR extends IntegerType { + + public static final int SIZE = 1; + + public CHAR() { + this(0); + } + + public CHAR(long value) { + super(1, value, false); + } + } + + public static final class CHARbyReference extends ByReference { + + public CHARbyReference() { + this(new CHAR(0)); + } + + public CHARbyReference(CHAR value) { + super(CHAR.SIZE); + setValue(value); + } + + public void setValue(CHAR value) { + getPointer().setByte(0, value.byteValue()); + } + + public CHAR getValue() { + return new CHAR(getPointer().getChar(0)); + } + } +} diff --git a/src/com/jpexs/javactivex/jna/WinError.java b/src/com/jpexs/javactivex/jna/WinError.java new file mode 100644 index 0000000..e93eaf1 --- /dev/null +++ b/src/com/jpexs/javactivex/jna/WinError.java @@ -0,0 +1,36390 @@ +/* Copyright (c) 2011 Daniel Doubrovkine, All Rights Reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + */ +package com.jpexs.javactivex.jna; + +import com.jpexs.javactivex.jna.WinNT.HRESULT; + +/** + * Error code definitions for the Win32 API functions. Ported from Windows SDK + * 6.0A + * + * @author dblock[at]dblock.org + */ +public interface WinError { + + // + // Values are 32 bit values laid out as follows: + // + // 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 + // 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 + // +---+-+-+-----------------------+-------------------------------+ + // |Sev|C|R| Facility | Code | + // +---+-+-+-----------------------+-------------------------------+ + // + // where + // + // Sev - is the severity code + // + // 00 - Success + // 01 - Informational + // 10 - Warning + // 11 - Error + // + // C - is the Customer code flag + // + // R - is a reserved bit + // + // Facility - is the facility code + // + // Code - is the facility's status code + // + // Define the facility codes + // + short FACILITY_WINRM = 51; + short FACILITY_WINDOWSUPDATE = 36; + short FACILITY_WINDOWS_DEFENDER = 80; + short FACILITY_WINDOWS_CE = 24; + short FACILITY_WINDOWS = 8; + short FACILITY_URT = 19; + short FACILITY_UMI = 22; + short FACILITY_TPM_SOFTWARE = 41; + short FACILITY_TPM_SERVICES = 40; + short FACILITY_SXS = 23; + short FACILITY_STORAGE = 3; + short FACILITY_STATE_MANAGEMENT = 34; + short FACILITY_SSPI = 9; + short FACILITY_SCARD = 16; + short FACILITY_SHELL = 39; + short FACILITY_SETUPAPI = 15; + short FACILITY_SECURITY = 9; + short FACILITY_RPC = 1; + short FACILITY_PLA = 48; + short FACILITY_WIN32 = 7; + short FACILITY_CONTROL = 10; + short FACILITY_NULL = 0; + short FACILITY_NDIS = 52; + short FACILITY_METADIRECTORY = 35; + short FACILITY_MSMQ = 14; + short FACILITY_MEDIASERVER = 13; + short FACILITY_INTERNET = 12; + short FACILITY_ITF = 4; + short FACILITY_USERMODE_HYPERVISOR = 53; + short FACILITY_HTTP = 25; + short FACILITY_GRAPHICS = 38; + short FACILITY_FWP = 50; + short FACILITY_FVE = 49; + short FACILITY_USERMODE_FILTER_MANAGER = 31; + short FACILITY_DPLAY = 21; + short FACILITY_DISPATCH = 2; + short FACILITY_DIRECTORYSERVICE = 37; + short FACILITY_CONFIGURATION = 33; + short FACILITY_COMPLUS = 17; + short FACILITY_USERMODE_COMMONLOG = 26; + short FACILITY_CMI = 54; + short FACILITY_CERT = 11; + short FACILITY_BACKGROUNDCOPY = 32; + short FACILITY_ACS = 20; + short FACILITY_AAF = 18; + // + // Define the severity codes + // + // + // MessageId: ERROR_SUCCESS + // + // MessageText: + // + // The operation completed successfully. + // + int ERROR_SUCCESS = 0; + int NO_ERROR = 0; // dderror + int SEC_E_OK = 0; + // + // MessageId: ERROR_INVALID_FUNCTION + // + // MessageText: + // + // Incorrect function. + // + int ERROR_INVALID_FUNCTION = 1; // dderror + // + // MessageId: ERROR_FILE_NOT_FOUND + // + // MessageText: + // + // The system cannot find the file specified. + // + int ERROR_FILE_NOT_FOUND = 2; + // + // MessageId: ERROR_PATH_NOT_FOUND + // + // MessageText: + // + // The system cannot find the path specified. + // + int ERROR_PATH_NOT_FOUND = 3; + // + // MessageId: ERROR_TOO_MANY_OPEN_FILES + // + // MessageText: + // + // The system cannot open the file. + // + int ERROR_TOO_MANY_OPEN_FILES = 4; + // + // MessageId: ERROR_ACCESS_DENIED + // + // MessageText: + // + // Access is denied. + // + int ERROR_ACCESS_DENIED = 5; + // + // MessageId: ERROR_INVALID_HANDLE + // + // MessageText: + // + // The handle is invalid. + // + int ERROR_INVALID_HANDLE = 6; + // + // MessageId: ERROR_ARENA_TRASHED + // + // MessageText: + // + // The storage control blocks were destroyed. + // + int ERROR_ARENA_TRASHED = 7; + // + // MessageId: ERROR_NOT_ENOUGH_MEMORY + // + // MessageText: + // + // Not enough storage is available to process this command. + // + int ERROR_NOT_ENOUGH_MEMORY = 8; // dderror + // + // MessageId: ERROR_INVALID_BLOCK + // + // MessageText: + // + // The storage control block address is invalid. + // + int ERROR_INVALID_BLOCK = 9; + // + // MessageId: ERROR_BAD_ENVIRONMENT + // + // MessageText: + // + // The environment is incorrect. + // + int ERROR_BAD_ENVIRONMENT = 10; + // + // MessageId: ERROR_BAD_FORMAT + // + // MessageText: + // + // An attempt was made to load a program with an incorrect format. + // + int ERROR_BAD_FORMAT = 11; + // + // MessageId: ERROR_INVALID_ACCESS + // + // MessageText: + // + // The access code is invalid. + // + int ERROR_INVALID_ACCESS = 12; + // + // MessageId: ERROR_INVALID_DATA + // + // MessageText: + // + // The data is invalid. + // + int ERROR_INVALID_DATA = 13; + // + // MessageId: ERROR_OUTOFMEMORY + // + // MessageText: + // + // Not enough storage is available to complete this operation. + // + int ERROR_OUTOFMEMORY = 14; + // + // MessageId: ERROR_INVALID_DRIVE + // + // MessageText: + // + // The system cannot find the drive specified. + // + int ERROR_INVALID_DRIVE = 15; + // + // MessageId: ERROR_CURRENT_DIRECTORY + // + // MessageText: + // + // The directory cannot be removed. + // + int ERROR_CURRENT_DIRECTORY = 16; + // + // MessageId: ERROR_NOT_SAME_DEVICE + // + // MessageText: + // + // The system cannot move the file to a different disk drive. + // + int ERROR_NOT_SAME_DEVICE = 17; + // + // MessageId: ERROR_NO_MORE_FILES + // + // MessageText: + // + // There are no more files. + // + int ERROR_NO_MORE_FILES = 18; + // + // MessageId: ERROR_WRITE_PROTECT + // + // MessageText: + // + // The media is write protected. + // + int ERROR_WRITE_PROTECT = 19; + // + // MessageId: ERROR_BAD_UNIT + // + // MessageText: + // + // The system cannot find the device specified. + // + int ERROR_BAD_UNIT = 20; + // + // MessageId: ERROR_NOT_READY + // + // MessageText: + // + // The device is not ready. + // + int ERROR_NOT_READY = 21; + // + // MessageId: ERROR_BAD_COMMAND + // + // MessageText: + // + // The device does not recognize the command. + // + int ERROR_BAD_COMMAND = 22; + // + // MessageId: ERROR_CRC + // + // MessageText: + // + // Data error (cyclic redundancy check). + // + int ERROR_CRC = 23; + // + // MessageId: ERROR_BAD_LENGTH + // + // MessageText: + // + // The program issued a command but the command length is incorrect. + // + int ERROR_BAD_LENGTH = 24; + // + // MessageId: ERROR_SEEK + // + // MessageText: + // + // The drive cannot locate a specific area or track on the disk. + // + int ERROR_SEEK = 25; + // + // MessageId: ERROR_NOT_DOS_DISK + // + // MessageText: + // + // The specified disk or diskette cannot be accessed. + // + int ERROR_NOT_DOS_DISK = 26; + // + // MessageId: ERROR_SECTOR_NOT_FOUND + // + // MessageText: + // + // The drive cannot find the sector requested. + // + int ERROR_SECTOR_NOT_FOUND = 27; + // + // MessageId: ERROR_OUT_OF_PAPER + // + // MessageText: + // + // The printer is out of paper. + // + int ERROR_OUT_OF_PAPER = 28; + // + // MessageId: ERROR_WRITE_FAULT + // + // MessageText: + // + // The system cannot write to the specified device. + // + int ERROR_WRITE_FAULT = 29; + // + // MessageId: ERROR_READ_FAULT + // + // MessageText: + // + // The system cannot read from the specified device. + // + int ERROR_READ_FAULT = 30; + // + // MessageId: ERROR_GEN_FAILURE + // + // MessageText: + // + // A device attached to the system is not functioning. + // + int ERROR_GEN_FAILURE = 31; + // + // MessageId: ERROR_SHARING_VIOLATION + // + // MessageText: + // + // The process cannot access the file because it is being used by another + // process. + // + int ERROR_SHARING_VIOLATION = 32; + // + // MessageId: ERROR_LOCK_VIOLATION + // + // MessageText: + // + // The process cannot access the file because another process has locked a + // portion of the file. + // + int ERROR_LOCK_VIOLATION = 33; + // + // MessageId: ERROR_WRONG_DISK + // + // MessageText: + // + // The wrong diskette is in the drive. + // Insert %2 (Volume Serial Number: %3) into drive %1. + // + int ERROR_WRONG_DISK = 34; + // + // MessageId: ERROR_SHARING_BUFFER_EXCEEDED + // + // MessageText: + // + // Too many files opened for sharing. + // + int ERROR_SHARING_BUFFER_EXCEEDED = 36; + // + // MessageId: ERROR_HANDLE_EOF + // + // MessageText: + // + // Reached the end of the file. + // + int ERROR_HANDLE_EOF = 38; + // + // MessageId: ERROR_HANDLE_DISK_FULL + // + // MessageText: + // + // The disk is full. + // + int ERROR_HANDLE_DISK_FULL = 39; + // + // MessageId: ERROR_NOT_SUPPORTED + // + // MessageText: + // + // The request is not supported. + // + int ERROR_NOT_SUPPORTED = 50; + // + // MessageId: ERROR_REM_NOT_LIST + // + // MessageText: + // + // Windows cannot find the network path. Verify that the network path is + // correct and the destination computer is not busy or turned off. If + // Windows still cannot find the network path, contact your network + // administrator. + // + int ERROR_REM_NOT_LIST = 51; + // + // MessageId: ERROR_DUP_NAME + // + // MessageText: + // + // You were not connected because a duplicate name exists on the network. If + // joining a domain, go to System in Control Panel to change the computer + // name and try again. If joining a workgroup, choose another workgroup + // name. + // + int ERROR_DUP_NAME = 52; + // + // MessageId: ERROR_BAD_NETPATH + // + // MessageText: + // + // The network path was not found. + // + int ERROR_BAD_NETPATH = 53; + // + // MessageId: ERROR_NETWORK_BUSY + // + // MessageText: + // + // The network is busy. + // + int ERROR_NETWORK_BUSY = 54; + // + // MessageId: ERROR_DEV_NOT_EXIST + // + // MessageText: + // + // The specified network resource or device is no longer available. + // + int ERROR_DEV_NOT_EXIST = 55; // dderror + // + // MessageId: ERROR_TOO_MANY_CMDS + // + // MessageText: + // + // The network BIOS command limit has been reached. + // + int ERROR_TOO_MANY_CMDS = 56; + // + // MessageId: ERROR_ADAP_HDW_ERR + // + // MessageText: + // + // A network adapter hardware error occurred. + // + int ERROR_ADAP_HDW_ERR = 57; + // + // MessageId: ERROR_BAD_NET_RESP + // + // MessageText: + // + // The specified server cannot perform the requested operation. + // + int ERROR_BAD_NET_RESP = 58; + // + // MessageId: ERROR_UNEXP_NET_ERR + // + // MessageText: + // + // An unexpected network error occurred. + // + int ERROR_UNEXP_NET_ERR = 59; + // + // MessageId: ERROR_BAD_REM_ADAP + // + // MessageText: + // + // The remote adapter is not compatible. + // + int ERROR_BAD_REM_ADAP = 60; + // + // MessageId: ERROR_PRINTQ_FULL + // + // MessageText: + // + // The printer queue is full. + // + int ERROR_PRINTQ_FULL = 61; + // + // MessageId: ERROR_NO_SPOOL_SPACE + // + // MessageText: + // + // Space to store the file waiting to be printed is not available on the + // server. + // + int ERROR_NO_SPOOL_SPACE = 62; + // + // MessageId: ERROR_PRINT_CANCELLED + // + // MessageText: + // + // Your file waiting to be printed was deleted. + // + int ERROR_PRINT_CANCELLED = 63; + // + // MessageId: ERROR_NETNAME_DELETED + // + // MessageText: + // + // The specified network name is no longer available. + // + int ERROR_NETNAME_DELETED = 64; + // + // MessageId: ERROR_NETWORK_ACCESS_DENIED + // + // MessageText: + // + // Network access is denied. + // + int ERROR_NETWORK_ACCESS_DENIED = 65; + // + // MessageId: ERROR_BAD_DEV_TYPE + // + // MessageText: + // + // The network resource type is not correct. + // + int ERROR_BAD_DEV_TYPE = 66; + // + // MessageId: ERROR_BAD_NET_NAME + // + // MessageText: + // + // The network name cannot be found. + // + int ERROR_BAD_NET_NAME = 67; + // + // MessageId: ERROR_TOO_MANY_NAMES + // + // MessageText: + // + // The name limit for the local computer network adapter card was exceeded. + // + int ERROR_TOO_MANY_NAMES = 68; + // + // MessageId: ERROR_TOO_MANY_SESS + // + // MessageText: + // + // The network BIOS session limit was exceeded. + // + int ERROR_TOO_MANY_SESS = 69; + // + // MessageId: ERROR_SHARING_PAUSED + // + // MessageText: + // + // The remote server has been paused or is in the process of being started. + // + int ERROR_SHARING_PAUSED = 70; + // + // MessageId: ERROR_REQ_NOT_ACCEP + // + // MessageText: + // + // No more connections can be made to this remote computer at this time + // because there are already as many connections as the computer can accept. + // + int ERROR_REQ_NOT_ACCEP = 71; + // + // MessageId: ERROR_REDIR_PAUSED + // + // MessageText: + // + // The specified printer or disk device has been paused. + // + int ERROR_REDIR_PAUSED = 72; + // + // MessageId: ERROR_FILE_EXISTS + // + // MessageText: + // + // The file exists. + // + int ERROR_FILE_EXISTS = 80; + // + // MessageId: ERROR_CANNOT_MAKE + // + // MessageText: + // + // The directory or file cannot be created. + // + int ERROR_CANNOT_MAKE = 82; + // + // MessageId: ERROR_FAIL_I24 + // + // MessageText: + // + // Fail on INT=24. + // + int ERROR_FAIL_I24 = 83; + // + // MessageId: ERROR_OUT_OF_STRUCTURES + // + // MessageText: + // + // Storage to process this request is not available. + // + int ERROR_OUT_OF_STRUCTURES = 84; + // + // MessageId: ERROR_ALREADY_ASSIGNED + // + // MessageText: + // + // The local device name is already in use. + // + int ERROR_ALREADY_ASSIGNED = 85; + // + // MessageId: ERROR_INVALID_PASSWORD + // + // MessageText: + // + // The specified network password is not correct. + // + int ERROR_INVALID_PASSWORD = 86; + // + // MessageId: ERROR_INVALID_PARAMETER + // + // MessageText: + // + // The parameter is incorrect. + // + int ERROR_INVALID_PARAMETER = 87; // dderror + // + // MessageId: ERROR_NET_WRITE_FAULT + // + // MessageText: + // + // A write fault occurred on the network. + // + int ERROR_NET_WRITE_FAULT = 88; + // + // MessageId: ERROR_NO_PROC_SLOTS + // + // MessageText: + // + // The system cannot start another process at this time. + // + int ERROR_NO_PROC_SLOTS = 89; + // + // MessageId: ERROR_TOO_MANY_SEMAPHORES + // + // MessageText: + // + // Cannot create another system semaphore. + // + int ERROR_TOO_MANY_SEMAPHORES = 100; + // + // MessageId: ERROR_EXCL_SEM_ALREADY_OWNED + // + // MessageText: + // + // The exclusive semaphore is owned by another process. + // + int ERROR_EXCL_SEM_ALREADY_OWNED = 101; + // + // MessageId: ERROR_SEM_IS_SET + // + // MessageText: + // + // The semaphore is set and cannot be closed. + // + int ERROR_SEM_IS_SET = 102; + // + // MessageId: ERROR_TOO_MANY_SEM_REQUESTS + // + // MessageText: + // + // The semaphore cannot be set again. + // + int ERROR_TOO_MANY_SEM_REQUESTS = 103; + // + // MessageId: ERROR_INVALID_AT_INTERRUPT_TIME + // + // MessageText: + // + // Cannot request exclusive semaphores at interrupt time. + // + int ERROR_INVALID_AT_INTERRUPT_TIME = 104; + // + // MessageId: ERROR_SEM_OWNER_DIED + // + // MessageText: + // + // The previous ownership of this semaphore has ended. + // + int ERROR_SEM_OWNER_DIED = 105; + // + // MessageId: ERROR_SEM_USER_LIMIT + // + // MessageText: + // + // Insert the diskette for drive %1. + // + int ERROR_SEM_USER_LIMIT = 106; + // + // MessageId: ERROR_DISK_CHANGE + // + // MessageText: + // + // The program stopped because an alternate diskette was not inserted. + // + int ERROR_DISK_CHANGE = 107; + // + // MessageId: ERROR_DRIVE_LOCKED + // + // MessageText: + // + // The disk is in use or locked by another process. + // + int ERROR_DRIVE_LOCKED = 108; + // + // MessageId: ERROR_BROKEN_PIPE + // + // MessageText: + // + // The pipe has been ended. + // + int ERROR_BROKEN_PIPE = 109; + // + // MessageId: ERROR_OPEN_FAILED + // + // MessageText: + // + // The system cannot open the device or file specified. + // + int ERROR_OPEN_FAILED = 110; + // + // MessageId: ERROR_BUFFER_OVERFLOW + // + // MessageText: + // + // The file name is too long. + // + int ERROR_BUFFER_OVERFLOW = 111; + // + // MessageId: ERROR_DISK_FULL + // + // MessageText: + // + // There is not enough space on the disk. + // + int ERROR_DISK_FULL = 112; + // + // MessageId: ERROR_NO_MORE_SEARCH_HANDLES + // + // MessageText: + // + // No more internal file identifiers available. + // + int ERROR_NO_MORE_SEARCH_HANDLES = 113; + // + // MessageId: ERROR_INVALID_TARGET_HANDLE + // + // MessageText: + // + // The target internal file identifier is incorrect. + // + int ERROR_INVALID_TARGET_HANDLE = 114; + // + // MessageId: ERROR_INVALID_CATEGORY + // + // MessageText: + // + // The IOCTL call made by the application program is not correct. + // + int ERROR_INVALID_CATEGORY = 117; + // + // MessageId: ERROR_INVALID_VERIFY_SWITCH + // + // MessageText: + // + // The verify-on-write switch parameter value is not correct. + // + int ERROR_INVALID_VERIFY_SWITCH = 118; + // + // MessageId: ERROR_BAD_DRIVER_LEVEL + // + // MessageText: + // + // The system does not support the command requested. + // + int ERROR_BAD_DRIVER_LEVEL = 119; + // + // MessageId: ERROR_CALL_NOT_IMPLEMENTED + // + // MessageText: + // + // This function is not supported on this system. + // + int ERROR_CALL_NOT_IMPLEMENTED = 120; + // + // MessageId: ERROR_SEM_TIMEOUT + // + // MessageText: + // + // The semaphore timeout period has expired. + // + int ERROR_SEM_TIMEOUT = 121; + // + // MessageId: ERROR_INSUFFICIENT_BUFFER + // + // MessageText: + // + // The data area passed to a system call is too small. + // + int ERROR_INSUFFICIENT_BUFFER = 122; // dderror + // + // MessageId: ERROR_INVALID_NAME + // + // MessageText: + // + // The filename, directory name, or volume label syntax is incorrect. + // + int ERROR_INVALID_NAME = 123; // dderror + // + // MessageId: ERROR_INVALID_LEVEL + // + // MessageText: + // + // The system call level is not correct. + // + int ERROR_INVALID_LEVEL = 124; + // + // MessageId: ERROR_NO_VOLUME_LABEL + // + // MessageText: + // + // The disk has no volume label. + // + int ERROR_NO_VOLUME_LABEL = 125; + // + // MessageId: ERROR_MOD_NOT_FOUND + // + // MessageText: + // + // The specified module could not be found. + // + int ERROR_MOD_NOT_FOUND = 126; + // + // MessageId: ERROR_PROC_NOT_FOUND + // + // MessageText: + // + // The specified procedure could not be found. + // + int ERROR_PROC_NOT_FOUND = 127; + // + // MessageId: ERROR_WAIT_NO_CHILDREN + // + // MessageText: + // + // There are no child processes to wait for. + // + int ERROR_WAIT_NO_CHILDREN = 128; + // + // MessageId: ERROR_CHILD_NOT_COMPLETE + // + // MessageText: + // + // The %1 application cannot be run in Win32 mode. + // + int ERROR_CHILD_NOT_COMPLETE = 129; + // + // MessageId: ERROR_DIRECT_ACCESS_HANDLE + // + // MessageText: + // + // Attempt to use a file handle to an open disk partition for an operation + // other than raw disk I/O. + // + int ERROR_DIRECT_ACCESS_HANDLE = 130; + // + // MessageId: ERROR_NEGATIVE_SEEK + // + // MessageText: + // + // An attempt was made to move the file pointer before the beginning of the + // file. + // + int ERROR_NEGATIVE_SEEK = 131; + // + // MessageId: ERROR_SEEK_ON_DEVICE + // + // MessageText: + // + // The file pointer cannot be set on the specified device or file. + // + int ERROR_SEEK_ON_DEVICE = 132; + // + // MessageId: ERROR_IS_JOIN_TARGET + // + // MessageText: + // + // A JOIN or SUBST command cannot be used for a drive that contains + // previously joined drives. + // + int ERROR_IS_JOIN_TARGET = 133; + // + // MessageId: ERROR_IS_JOINED + // + // MessageText: + // + // An attempt was made to use a JOIN or SUBST command on a drive that has + // already been joined. + // + int ERROR_IS_JOINED = 134; + // + // MessageId: ERROR_IS_SUBSTED + // + // MessageText: + // + // An attempt was made to use a JOIN or SUBST command on a drive that has + // already been substituted. + // + int ERROR_IS_SUBSTED = 135; + // + // MessageId: ERROR_NOT_JOINED + // + // MessageText: + // + // The system tried to delete the JOIN of a drive that is not joined. + // + int ERROR_NOT_JOINED = 136; + // + // MessageId: ERROR_NOT_SUBSTED + // + // MessageText: + // + // The system tried to delete the substitution of a drive that is not + // substituted. + // + int ERROR_NOT_SUBSTED = 137; + // + // MessageId: ERROR_JOIN_TO_JOIN + // + // MessageText: + // + // The system tried to join a drive to a directory on a joined drive. + // + int ERROR_JOIN_TO_JOIN = 138; + // + // MessageId: ERROR_SUBST_TO_SUBST + // + // MessageText: + // + // The system tried to substitute a drive to a directory on a substituted + // drive. + // + int ERROR_SUBST_TO_SUBST = 139; + // + // MessageId: ERROR_JOIN_TO_SUBST + // + // MessageText: + // + // The system tried to join a drive to a directory on a substituted drive. + // + int ERROR_JOIN_TO_SUBST = 140; + // + // MessageId: ERROR_SUBST_TO_JOIN + // + // MessageText: + // + // The system tried to SUBST a drive to a directory on a joined drive. + // + int ERROR_SUBST_TO_JOIN = 141; + // + // MessageId: ERROR_BUSY_DRIVE + // + // MessageText: + // + // The system cannot perform a JOIN or SUBST at this time. + // + int ERROR_BUSY_DRIVE = 142; + // + // MessageId: ERROR_SAME_DRIVE + // + // MessageText: + // + // The system cannot join or substitute a drive to or for a directory on the + // same drive. + // + int ERROR_SAME_DRIVE = 143; + // + // MessageId: ERROR_DIR_NOT_ROOT + // + // MessageText: + // + // The directory is not a subdirectory of the root directory. + // + int ERROR_DIR_NOT_ROOT = 144; + // + // MessageId: ERROR_DIR_NOT_EMPTY + // + // MessageText: + // + // The directory is not empty. + // + int ERROR_DIR_NOT_EMPTY = 145; + // + // MessageId: ERROR_IS_SUBST_PATH + // + // MessageText: + // + // The path specified is being used in a substitute. + // + int ERROR_IS_SUBST_PATH = 146; + // + // MessageId: ERROR_IS_JOIN_PATH + // + // MessageText: + // + // Not enough resources are available to process this command. + // + int ERROR_IS_JOIN_PATH = 147; + // + // MessageId: ERROR_PATH_BUSY + // + // MessageText: + // + // The path specified cannot be used at this time. + // + int ERROR_PATH_BUSY = 148; + // + // MessageId: ERROR_IS_SUBST_TARGET + // + // MessageText: + // + // An attempt was made to join or substitute a drive for which a directory + // on the drive is the target of a previous substitute. + // + int ERROR_IS_SUBST_TARGET = 149; + // + // MessageId: ERROR_SYSTEM_TRACE + // + // MessageText: + // + // System trace information was not specified in your CONFIG.SYS file, or + // tracing is disallowed. + // + int ERROR_SYSTEM_TRACE = 150; + // + // MessageId: ERROR_INVALID_EVENT_COUNT + // + // MessageText: + // + // The number of specified semaphore events for DosMuxSemWait is not + // correct. + // + int ERROR_INVALID_EVENT_COUNT = 151; + // + // MessageId: ERROR_TOO_MANY_MUXWAITERS + // + // MessageText: + // + // DosMuxSemWait did not execute; too many semaphores are already set. + // + int ERROR_TOO_MANY_MUXWAITERS = 152; + // + // MessageId: ERROR_INVALID_LIST_FORMAT + // + // MessageText: + // + // The DosMuxSemWait list is not correct. + // + int ERROR_INVALID_LIST_FORMAT = 153; + // + // MessageId: ERROR_LABEL_TOO_LONG + // + // MessageText: + // + // The volume label you entered exceeds the label character limit of the + // target file system. + // + int ERROR_LABEL_TOO_LONG = 154; + // + // MessageId: ERROR_TOO_MANY_TCBS + // + // MessageText: + // + // Cannot create another thread. + // + int ERROR_TOO_MANY_TCBS = 155; + // + // MessageId: ERROR_SIGNAL_REFUSED + // + // MessageText: + // + // The recipient process has refused the signal. + // + int ERROR_SIGNAL_REFUSED = 156; + // + // MessageId: ERROR_DISCARDED + // + // MessageText: + // + // The segment is already discarded and cannot be locked. + // + int ERROR_DISCARDED = 157; + // + // MessageId: ERROR_NOT_LOCKED + // + // MessageText: + // + // The segment is already unlocked. + // + int ERROR_NOT_LOCKED = 158; + // + // MessageId: ERROR_BAD_THREADID_ADDR + // + // MessageText: + // + // The address for the thread ID is not correct. + // + int ERROR_BAD_THREADID_ADDR = 159; + // + // MessageId: ERROR_BAD_ARGUMENTS + // + // MessageText: + // + // One or more arguments are not correct. + // + int ERROR_BAD_ARGUMENTS = 160; + // + // MessageId: ERROR_BAD_PATHNAME + // + // MessageText: + // + // The specified path is invalid. + // + int ERROR_BAD_PATHNAME = 161; + // + // MessageId: ERROR_SIGNAL_PENDING + // + // MessageText: + // + // A signal is already pending. + // + int ERROR_SIGNAL_PENDING = 162; + // + // MessageId: ERROR_MAX_THRDS_REACHED + // + // MessageText: + // + // No more threads can be created in the system. + // + int ERROR_MAX_THRDS_REACHED = 164; + // + // MessageId: ERROR_LOCK_FAILED + // + // MessageText: + // + // Unable to lock a region of a file. + // + int ERROR_LOCK_FAILED = 167; + // + // MessageId: ERROR_BUSY + // + // MessageText: + // + // The requested resource is in use. + // + int ERROR_BUSY = 170; // dderror + // + // MessageId: ERROR_CANCEL_VIOLATION + // + // MessageText: + // + // A lock request was not outstanding for the supplied cancel region. + // + int ERROR_CANCEL_VIOLATION = 173; + // + // MessageId: ERROR_ATOMIC_LOCKS_NOT_SUPPORTED + // + // MessageText: + // + // The file system does not support atomic changes to the lock type. + // + int ERROR_ATOMIC_LOCKS_NOT_SUPPORTED = 174; + // + // MessageId: ERROR_INVALID_SEGMENT_NUMBER + // + // MessageText: + // + // The system detected a segment number that was not correct. + // + int ERROR_INVALID_SEGMENT_NUMBER = 180; + // + // MessageId: ERROR_INVALID_ORDINAL + // + // MessageText: + // + // The operating system cannot run %1. + // + int ERROR_INVALID_ORDINAL = 182; + // + // MessageId: ERROR_ALREADY_EXISTS + // + // MessageText: + // + // Cannot create a file when that file already exists. + // + int ERROR_ALREADY_EXISTS = 183; + // + // MessageId: ERROR_INVALID_FLAG_NUMBER + // + // MessageText: + // + // The flag passed is not correct. + // + int ERROR_INVALID_FLAG_NUMBER = 186; + // + // MessageId: ERROR_SEM_NOT_FOUND + // + // MessageText: + // + // The specified system semaphore name was not found. + // + int ERROR_SEM_NOT_FOUND = 187; + // + // MessageId: ERROR_INVALID_STARTING_CODESEG + // + // MessageText: + // + // The operating system cannot run %1. + // + int ERROR_INVALID_STARTING_CODESEG = 188; + // + // MessageId: ERROR_INVALID_STACKSEG + // + // MessageText: + // + // The operating system cannot run %1. + // + int ERROR_INVALID_STACKSEG = 189; + // + // MessageId: ERROR_INVALID_MODULETYPE + // + // MessageText: + // + // The operating system cannot run %1. + // + int ERROR_INVALID_MODULETYPE = 190; + // + // MessageId: ERROR_INVALID_EXE_SIGNATURE + // + // MessageText: + // + // Cannot run %1 in Win32 mode. + // + int ERROR_INVALID_EXE_SIGNATURE = 191; + // + // MessageId: ERROR_EXE_MARKED_INVALID + // + // MessageText: + // + // The operating system cannot run %1. + // + int ERROR_EXE_MARKED_INVALID = 192; + // + // MessageId: ERROR_BAD_EXE_FORMAT + // + // MessageText: + // + // %1 is not a valid Win32 application. + // + int ERROR_BAD_EXE_FORMAT = 193; + // + // MessageId: ERROR_ITERATED_DATA_EXCEEDS_64k + // + // MessageText: + // + // The operating system cannot run %1. + // + int ERROR_ITERATED_DATA_EXCEEDS_64k = 194; + // + // MessageId: ERROR_INVALID_MINALLOCSIZE + // + // MessageText: + // + // The operating system cannot run %1. + // + int ERROR_INVALID_MINALLOCSIZE = 195; + // + // MessageId: ERROR_DYNLINK_FROM_INVALID_RING + // + // MessageText: + // + // The operating system cannot run this application program. + // + int ERROR_DYNLINK_FROM_INVALID_RING = 196; + // + // MessageId: ERROR_IOPL_NOT_ENABLED + // + // MessageText: + // + // The operating system is not presently configured to run this application. + // + int ERROR_IOPL_NOT_ENABLED = 197; + // + // MessageId: ERROR_INVALID_SEGDPL + // + // MessageText: + // + // The operating system cannot run %1. + // + int ERROR_INVALID_SEGDPL = 198; + // + // MessageId: ERROR_AUTODATASEG_EXCEEDS_64k + // + // MessageText: + // + // The operating system cannot run this application program. + // + int ERROR_AUTODATASEG_EXCEEDS_64k = 199; + // + // MessageId: ERROR_RING2SEG_MUST_BE_MOVABLE + // + // MessageText: + // + // The code segment cannot be greater than or equal to=64K. + // + int ERROR_RING2SEG_MUST_BE_MOVABLE = 200; + // + // MessageId: ERROR_RELOC_CHAIN_XEEDS_SEGLIM + // + // MessageText: + // + // The operating system cannot run %1. + // + int ERROR_RELOC_CHAIN_XEEDS_SEGLIM = 201; + // + // MessageId: ERROR_INFLOOP_IN_RELOC_CHAIN + // + // MessageText: + // + // The operating system cannot run %1. + // + int ERROR_INFLOOP_IN_RELOC_CHAIN = 202; + // + // MessageId: ERROR_ENVVAR_NOT_FOUND + // + // MessageText: + // + // The system could not find the environment option that was entered. + // + int ERROR_ENVVAR_NOT_FOUND = 203; + // + // MessageId: ERROR_NO_SIGNAL_SENT + // + // MessageText: + // + // No process in the command subtree has a signal handler. + // + int ERROR_NO_SIGNAL_SENT = 205; + // + // MessageId: ERROR_FILENAME_EXCED_RANGE + // + // MessageText: + // + // The filename or extension is too long. + // + int ERROR_FILENAME_EXCED_RANGE = 206; + // + // MessageId: ERROR_RING2_STACK_IN_USE + // + // MessageText: + // + // The ring=2 stack is in use. + // + int ERROR_RING2_STACK_IN_USE = 207; + // + // MessageId: ERROR_META_EXPANSION_TOO_LONG + // + // MessageText: + // + // The global filename characters, * or ?, are entered incorrectly or too + // many global filename characters are specified. + // + int ERROR_META_EXPANSION_TOO_LONG = 208; + // + // MessageId: ERROR_INVALID_SIGNAL_NUMBER + // + // MessageText: + // + // The signal being posted is not correct. + // + int ERROR_INVALID_SIGNAL_NUMBER = 209; + // + // MessageId: ERROR_THREAD_1_INACTIVE + // + // MessageText: + // + // The signal handler cannot be set. + // + int ERROR_THREAD_1_INACTIVE = 210; + // + // MessageId: ERROR_LOCKED + // + // MessageText: + // + // The segment is locked and cannot be reallocated. + // + int ERROR_LOCKED = 212; + // + // MessageId: ERROR_TOO_MANY_MODULES + // + // MessageText: + // + // Too many dynamic-link modules are attached to this program or + // dynamic-link module. + // + int ERROR_TOO_MANY_MODULES = 214; + // + // MessageId: ERROR_NESTING_NOT_ALLOWED + // + // MessageText: + // + // Cannot nest calls to LoadModule. + // + int ERROR_NESTING_NOT_ALLOWED = 215; + // + // MessageId: ERROR_EXE_MACHINE_TYPE_MISMATCH + // + // MessageText: + // + // This version of %1 is not compatible with the version of Windows you're + // running. Check your computer's system information to see whether you need + // a x86 (32-bit) or x64 (64-bit) version of the program, and then contact + // the software publisher. + // + int ERROR_EXE_MACHINE_TYPE_MISMATCH = 216; + // + // MessageId: ERROR_EXE_CANNOT_MODIFY_SIGNED_BINARY + // + // MessageText: + // + // The image file %1 is signed, unable to modify. + // + int ERROR_EXE_CANNOT_MODIFY_SIGNED_BINARY = 217; + // + // MessageId: ERROR_EXE_CANNOT_MODIFY_STRONG_SIGNED_BINARY + // + // MessageText: + // + // The image file %1 is strong signed, unable to modify. + // + int ERROR_EXE_CANNOT_MODIFY_STRONG_SIGNED_BINARY = 218; + // + // MessageId: ERROR_FILE_CHECKED_OUT + // + // MessageText: + // + // This file is checked out or locked for editing by another user. + // + int ERROR_FILE_CHECKED_OUT = 220; + // + // MessageId: ERROR_CHECKOUT_REQUIRED + // + // MessageText: + // + // The file must be checked out before saving changes. + // + int ERROR_CHECKOUT_REQUIRED = 221; + // + // MessageId: ERROR_BAD_FILE_TYPE + // + // MessageText: + // + // The file type being saved or retrieved has been blocked. + // + int ERROR_BAD_FILE_TYPE = 222; + // + // MessageId: ERROR_FILE_TOO_LARGE + // + // MessageText: + // + // The file size exceeds the limit allowed and cannot be saved. + // + int ERROR_FILE_TOO_LARGE = 223; + // + // MessageId: ERROR_FORMS_AUTH_REQUIRED + // + // MessageText: + // + // Access Denied. Before opening files in this location, you must first + // browse to the web site and select the option to login automatically. + // + int ERROR_FORMS_AUTH_REQUIRED = 224; + // + // MessageId: ERROR_VIRUS_INFECTED + // + // MessageText: + // + // Operation did not complete successfully because the file contains a + // virus. + // + int ERROR_VIRUS_INFECTED = 225; + // + // MessageId: ERROR_VIRUS_DELETED + // + // MessageText: + // + // This file contains a virus and cannot be opened. Due to the nature of + // this virus, the file has been removed from this location. + // + int ERROR_VIRUS_DELETED = 226; + // + // MessageId: ERROR_PIPE_LOCAL + // + // MessageText: + // + // The pipe is local. + // + int ERROR_PIPE_LOCAL = 229; + // + // MessageId: ERROR_BAD_PIPE + // + // MessageText: + // + // The pipe state is invalid. + // + int ERROR_BAD_PIPE = 230; + // + // MessageId: ERROR_PIPE_BUSY + // + // MessageText: + // + // All pipe instances are busy. + // + int ERROR_PIPE_BUSY = 231; + // + // MessageId: ERROR_NO_DATA + // + // MessageText: + // + // The pipe is being closed. + // + int ERROR_NO_DATA = 232; + // + // MessageId: ERROR_PIPE_NOT_CONNECTED + // + // MessageText: + // + // No process is on the other end of the pipe. + // + int ERROR_PIPE_NOT_CONNECTED = 233; + // + // MessageId: ERROR_MORE_DATA + // + // MessageText: + // + // More data is available. + // + int ERROR_MORE_DATA = 234; // dderror + // + // MessageId: ERROR_VC_DISCONNECTED + // + // MessageText: + // + // The session was canceled. + // + int ERROR_VC_DISCONNECTED = 240; + // + // MessageId: ERROR_INVALID_EA_NAME + // + // MessageText: + // + // The specified extended attribute name was invalid. + // + int ERROR_INVALID_EA_NAME = 254; + // + // MessageId: ERROR_EA_LIST_INCONSISTENT + // + // MessageText: + // + // The extended attributes are inconsistent. + // + int ERROR_EA_LIST_INCONSISTENT = 255; + // + // MessageId: WAIT_TIMEOUT + // + // MessageText: + // + // The wait operation timed out. + // + int WAIT_TIMEOUT = 258; // dderror + // + // MessageId: ERROR_NO_MORE_ITEMS + // + // MessageText: + // + // No more data is available. + // + int ERROR_NO_MORE_ITEMS = 259; + // + // MessageId: ERROR_CANNOT_COPY + // + // MessageText: + // + // The copy functions cannot be used. + // + int ERROR_CANNOT_COPY = 266; + // + // MessageId: ERROR_DIRECTORY + // + // MessageText: + // + // The directory name is invalid. + // + int ERROR_DIRECTORY = 267; + // + // MessageId: ERROR_EAS_DIDNT_FIT + // + // MessageText: + // + // The extended attributes did not fit in the buffer. + // + int ERROR_EAS_DIDNT_FIT = 275; + // + // MessageId: ERROR_EA_FILE_CORRUPT + // + // MessageText: + // + // The extended attribute file on the mounted file system is corrupt. + // + int ERROR_EA_FILE_CORRUPT = 276; + // + // MessageId: ERROR_EA_TABLE_FULL + // + // MessageText: + // + // The extended attribute table file is full. + // + int ERROR_EA_TABLE_FULL = 277; + // + // MessageId: ERROR_INVALID_EA_HANDLE + // + // MessageText: + // + // The specified extended attribute handle is invalid. + // + int ERROR_INVALID_EA_HANDLE = 278; + // + // MessageId: ERROR_EAS_NOT_SUPPORTED + // + // MessageText: + // + // The mounted file system does not support extended attributes. + // + int ERROR_EAS_NOT_SUPPORTED = 282; + // + // MessageId: ERROR_NOT_OWNER + // + // MessageText: + // + // Attempt to release mutex not owned by caller. + // + int ERROR_NOT_OWNER = 288; + // + // MessageId: ERROR_TOO_MANY_POSTS + // + // MessageText: + // + // Too many posts were made to a semaphore. + // + int ERROR_TOO_MANY_POSTS = 298; + // + // MessageId: ERROR_PARTIAL_COPY + // + // MessageText: + // + // Only part of a ReadProcessMemory or WriteProcessMemory request was + // completed. + // + int ERROR_PARTIAL_COPY = 299; + // + // MessageId: ERROR_OPLOCK_NOT_GRANTED + // + // MessageText: + // + // The oplock request is denied. + // + int ERROR_OPLOCK_NOT_GRANTED = 300; + // + // MessageId: ERROR_INVALID_OPLOCK_PROTOCOL + // + // MessageText: + // + // An invalid oplock acknowledgment was received by the system. + // + int ERROR_INVALID_OPLOCK_PROTOCOL = 301; + // + // MessageId: ERROR_DISK_TOO_FRAGMENTED + // + // MessageText: + // + // The volume is too fragmented to complete this operation. + // + int ERROR_DISK_TOO_FRAGMENTED = 302; + // + // MessageId: ERROR_DELETE_PENDING + // + // MessageText: + // + // The file cannot be opened because it is in the process of being deleted. + // + int ERROR_DELETE_PENDING = 303; + // + // MessageId: ERROR_MR_MID_NOT_FOUND + // + // MessageText: + // + // The system cannot find message text for message number 0x%1 in the + // message file for %2. + // + int ERROR_MR_MID_NOT_FOUND = 317; + // + // MessageId: ERROR_SCOPE_NOT_FOUND + // + // MessageText: + // + // The scope specified was not found. + // + int ERROR_SCOPE_NOT_FOUND = 318; + // + // MessageId: ERROR_FAIL_NOACTION_REBOOT + // + // MessageText: + // + // No action was taken as a system reboot is required. + // + int ERROR_FAIL_NOACTION_REBOOT = 350; + // + // MessageId: ERROR_FAIL_SHUTDOWN + // + // MessageText: + // + // The shutdown operation failed. + // + int ERROR_FAIL_SHUTDOWN = 351; + // + // MessageId: ERROR_FAIL_RESTART + // + // MessageText: + // + // The restart operation failed. + // + int ERROR_FAIL_RESTART = 352; + // + // MessageId: ERROR_MAX_SESSIONS_REACHED + // + // MessageText: + // + // The maximum number of sessions has been reached. + // + int ERROR_MAX_SESSIONS_REACHED = 353; + // + // MessageId: ERROR_THREAD_MODE_ALREADY_BACKGROUND + // + // MessageText: + // + // The thread is already in background processing mode. + // + int ERROR_THREAD_MODE_ALREADY_BACKGROUND = 400; + // + // MessageId: ERROR_THREAD_MODE_NOT_BACKGROUND + // + // MessageText: + // + // The thread is not in background processing mode. + // + int ERROR_THREAD_MODE_NOT_BACKGROUND = 401; + // + // MessageId: ERROR_PROCESS_MODE_ALREADY_BACKGROUND + // + // MessageText: + // + // The process is already in background processing mode. + // + int ERROR_PROCESS_MODE_ALREADY_BACKGROUND = 402; + // + // MessageId: ERROR_PROCESS_MODE_NOT_BACKGROUND + // + // MessageText: + // + // The process is not in background processing mode. + // + int ERROR_PROCESS_MODE_NOT_BACKGROUND = 403; + // + // MessageId: ERROR_INVALID_ADDRESS + // + // MessageText: + // + // Attempt to access invalid address. + // + int ERROR_INVALID_ADDRESS = 487; + // + // MessageId: ERROR_USER_PROFILE_LOAD + // + // MessageText: + // + // User profile cannot be loaded. + // + int ERROR_USER_PROFILE_LOAD = 500; + // + // MessageId: ERROR_ARITHMETIC_OVERFLOW + // + // MessageText: + // + // Arithmetic result exceeded=32 bits. + // + int ERROR_ARITHMETIC_OVERFLOW = 534; + // + // MessageId: ERROR_PIPE_CONNECTED + // + // MessageText: + // + // There is a process on other end of the pipe. + // + int ERROR_PIPE_CONNECTED = 535; + // + // MessageId: ERROR_PIPE_LISTENING + // + // MessageText: + // + // Waiting for a process to open the other end of the pipe. + // + int ERROR_PIPE_LISTENING = 536; + // + // MessageId: ERROR_VERIFIER_STOP + // + // MessageText: + // + // Application verifier has found an error in the current process. + // + int ERROR_VERIFIER_STOP = 537; + // + // MessageId: ERROR_ABIOS_ERROR + // + // MessageText: + // + // An error occurred in the ABIOS subsystem. + // + int ERROR_ABIOS_ERROR = 538; + // + // MessageId: ERROR_WX86_WARNING + // + // MessageText: + // + // A warning occurred in the WX86 subsystem. + // + int ERROR_WX86_WARNING = 539; + // + // MessageId: ERROR_WX86_ERROR + // + // MessageText: + // + // An error occurred in the WX86 subsystem. + // + int ERROR_WX86_ERROR = 540; + // + // MessageId: ERROR_TIMER_NOT_CANCELED + // + // MessageText: + // + // An attempt was made to cancel or set a timer that has an associated APC + // and the subject thread is not the thread that originally set the timer + // with an associated APC routine. + // + int ERROR_TIMER_NOT_CANCELED = 541; + // + // MessageId: ERROR_UNWIND + // + // MessageText: + // + // Unwind exception code. + // + int ERROR_UNWIND = 542; + // + // MessageId: ERROR_BAD_STACK + // + // MessageText: + // + // An invalid or unaligned stack was encountered during an unwind operation. + // + int ERROR_BAD_STACK = 543; + // + // MessageId: ERROR_INVALID_UNWIND_TARGET + // + // MessageText: + // + // An invalid unwind target was encountered during an unwind operation. + // + int ERROR_INVALID_UNWIND_TARGET = 544; + // + // MessageId: ERROR_INVALID_PORT_ATTRIBUTES + // + // MessageText: + // + // Invalid Object Attributes specified to NtCreatePort or invalid Port + // Attributes specified to NtConnectPort + // + int ERROR_INVALID_PORT_ATTRIBUTES = 545; + // + // MessageId: ERROR_PORT_MESSAGE_TOO_LONG + // + // MessageText: + // + // Length of message passed to NtRequestPort or NtRequestWaitReplyPort was + // longer than the maximum message allowed by the port. + // + int ERROR_PORT_MESSAGE_TOO_LONG = 546; + // + // MessageId: ERROR_INVALID_QUOTA_LOWER + // + // MessageText: + // + // An attempt was made to lower a quota limit below the current usage. + // + int ERROR_INVALID_QUOTA_LOWER = 547; + // + // MessageId: ERROR_DEVICE_ALREADY_ATTACHED + // + // MessageText: + // + // An attempt was made to attach to a device that was already attached to + // another device. + // + int ERROR_DEVICE_ALREADY_ATTACHED = 548; + // + // MessageId: ERROR_INSTRUCTION_MISALIGNMENT + // + // MessageText: + // + // An attempt was made to execute an instruction at an unaligned address and + // the host system does not support unaligned instruction references. + // + int ERROR_INSTRUCTION_MISALIGNMENT = 549; + // + // MessageId: ERROR_PROFILING_NOT_STARTED + // + // MessageText: + // + // Profiling not started. + // + int ERROR_PROFILING_NOT_STARTED = 550; + // + // MessageId: ERROR_PROFILING_NOT_STOPPED + // + // MessageText: + // + // Profiling not stopped. + // + int ERROR_PROFILING_NOT_STOPPED = 551; + // + // MessageId: ERROR_COULD_NOT_INTERPRET + // + // MessageText: + // + // The passed ACL did not contain the minimum required information. + // + int ERROR_COULD_NOT_INTERPRET = 552; + // + // MessageId: ERROR_PROFILING_AT_LIMIT + // + // MessageText: + // + // The number of active profiling objects is at the maximum and no more may + // be started. + // + int ERROR_PROFILING_AT_LIMIT = 553; + // + // MessageId: ERROR_CANT_WAIT + // + // MessageText: + // + // Used to indicate that an operation cannot continue without blocking for + // I/O. + // + int ERROR_CANT_WAIT = 554; + // + // MessageId: ERROR_CANT_TERMINATE_SELF + // + // MessageText: + // + // Indicates that a thread attempted to terminate itself by default (called + // NtTerminateThread with NUL; and it was the last thread in the current + // process. + // + int ERROR_CANT_TERMINATE_SELF = 555; + // + // MessageId: ERROR_UNEXPECTED_MM_CREATE_ERR + // + // MessageText: + // + // If an MM error is returned which is not defined in the standard FsRtl + // filter, it is converted to one of the following errors which is + // guaranteed to be in the filter. + // In this case information is lost, however, the filter correctly handles + // the exception. + // + int ERROR_UNEXPECTED_MM_CREATE_ERR = 556; + // + // MessageId: ERROR_UNEXPECTED_MM_MAP_ERROR + // + // MessageText: + // + // If an MM error is returned which is not defined in the standard FsRtl + // filter, it is converted to one of the following errors which is + // guaranteed to be in the filter. + // In this case information is lost, however, the filter correctly handles + // the exception. + // + int ERROR_UNEXPECTED_MM_MAP_ERROR = 557; + // + // MessageId: ERROR_UNEXPECTED_MM_EXTEND_ERR + // + // MessageText: + // + // If an MM error is returned which is not defined in the standard FsRtl + // filter, it is converted to one of the following errors which is + // guaranteed to be in the filter. + // In this case information is lost, however, the filter correctly handles + // the exception. + // + int ERROR_UNEXPECTED_MM_EXTEND_ERR = 558; + // + // MessageId: ERROR_BAD_FUNCTION_TABLE + // + // MessageText: + // + // A malformed function table was encountered during an unwind operation. + // + int ERROR_BAD_FUNCTION_TABLE = 559; + // + // MessageId: ERROR_NO_GUID_TRANSLATION + // + // MessageText: + // + // Indicates that an attempt was made to assign protection to a file system + // file or directory and one of the SIDs in the security descriptor could + // not be translated into a GUID that could be stored by the file system. + // This causes the protection attempt to fail, which may cause a file + // creation attempt to fail. + // + int ERROR_NO_GUID_TRANSLATION = 560; + // + // MessageId: ERROR_INVALID_LDT_SIZE + // + // MessageText: + // + // Indicates that an attempt was made to grow an LDT by setting its size, or + // that the size was not an even number of selectors. + // + int ERROR_INVALID_LDT_SIZE = 561; + // + // MessageId: ERROR_INVALID_LDT_OFFSET + // + // MessageText: + // + // Indicates that the starting value for the LDT information was not an + // integral multiple of the selector size. + // + int ERROR_INVALID_LDT_OFFSET = 563; + // + // MessageId: ERROR_INVALID_LDT_DESCRIPTOR + // + // MessageText: + // + // Indicates that the user supplied an invalid descriptor when trying to set + // up Ldt descriptors. + // + int ERROR_INVALID_LDT_DESCRIPTOR = 564; + // + // MessageId: ERROR_TOO_MANY_THREADS + // + // MessageText: + // + // Indicates a process has too many threads to perform the requested action. + // For example, assignment of a primary token may only be performed when a + // process has zero or one threads. + // + int ERROR_TOO_MANY_THREADS = 565; + // + // MessageId: ERROR_THREAD_NOT_IN_PROCESS + // + // MessageText: + // + // An attempt was made to operate on a thread within a specific process, but + // the thread specified is not in the process specified. + // + int ERROR_THREAD_NOT_IN_PROCESS = 566; + // + // MessageId: ERROR_PAGEFILE_QUOTA_EXCEEDED + // + // MessageText: + // + // Page file quota was exceeded. + // + int ERROR_PAGEFILE_QUOTA_EXCEEDED = 567; + // + // MessageId: ERROR_LOGON_SERVER_CONFLICT + // + // MessageText: + // + // The Netlogon service cannot start because another Netlogon service + // running in the domain conflicts with the specified role. + // + int ERROR_LOGON_SERVER_CONFLICT = 568; + // + // MessageId: ERROR_SYNCHRONIZATION_REQUIRED + // + // MessageText: + // + // The SAM database on a Windows Server is significantly out of + // synchronization with the copy on the Domain Controller. A complete + // synchronization is required. + // + int ERROR_SYNCHRONIZATION_REQUIRED = 569; + // + // MessageId: ERROR_NET_OPEN_FAILED + // + // MessageText: + // + // The NtCreateFile API failed. This error should never be returned to an + // application, it is a place holder for the Windows Lan Manager Redirector + // to use in its internal error mapping routines. + // + int ERROR_NET_OPEN_FAILED = 570; + // + // MessageId: ERROR_IO_PRIVILEGE_FAILED + // + // MessageText: + // + // {Privilege Failed} + // The I/O permissions for the process could not be changed. + // + int ERROR_IO_PRIVILEGE_FAILED = 571; + // + // MessageId: ERROR_CONTROL_C_EXIT + // + // MessageText: + // + // {Application Exit by CTRL+C} + // The application terminated as a result of a CTRL+C. + // + int ERROR_CONTROL_C_EXIT = 572; // winnt + // + // MessageId: ERROR_MISSING_SYSTEMFILE + // + // MessageText: + // + // {Missing System File} + // The required system file %hs is bad or missing. + // + int ERROR_MISSING_SYSTEMFILE = 573; + // + // MessageId: ERROR_UNHANDLED_EXCEPTION + // + // MessageText: + // + // {Application Error} + // The exception %s (0x%08;x) occurred in the application at location + // 0x%08;x. + // + int ERROR_UNHANDLED_EXCEPTION = 574; + // + // MessageId: ERROR_APP_INIT_FAILURE + // + // MessageText: + // + // {Application Error} + // The application failed to initialize properly (0x%lx). Click OK to + // terminate the application. + // + int ERROR_APP_INIT_FAILURE = 575; + // + // MessageId: ERROR_PAGEFILE_CREATE_FAILED + // + // MessageText: + // + // {Unable to Create Paging File} + // The creation of the paging file %hs failed (%lx). The requested size was + // %ld. + // + int ERROR_PAGEFILE_CREATE_FAILED = 576; + // + // MessageId: ERROR_INVALID_IMAGE_HASH + // + // MessageText: + // + // Windows cannot verify the digital signature for this file. A recent + // hardware or software change might have installed a file that is signed + // incorrectly or damaged, or that might be malicious software from an + // unknown source. + // + int ERROR_INVALID_IMAGE_HASH = 577; + // + // MessageId: ERROR_NO_PAGEFILE + // + // MessageText: + // + // {No Paging File Specified} + // No paging file was specified in the system configuration. + // + int ERROR_NO_PAGEFILE = 578; + // + // MessageId: ERROR_ILLEGAL_FLOAT_CONTEXT + // + // MessageText: + // + // {EXCEPTION} + // A real-mode application issued a floating-point instruction and + // floating-point hardware is not present. + // + int ERROR_ILLEGAL_FLOAT_CONTEXT = 579; + // + // MessageId: ERROR_NO_EVENT_PAIR + // + // MessageText: + // + // An event pair synchronization operation was performed using the thread + // specific client/server event pair object, but no event pair object was + // associated with the thread. + // + int ERROR_NO_EVENT_PAIR = 580; + // + // MessageId: ERROR_DOMAIN_CTRLR_CONFIG_ERROR + // + // MessageText: + // + // A Windows Server has an incorrect configuration. + // + int ERROR_DOMAIN_CTRLR_CONFIG_ERROR = 581; + // + // MessageId: ERROR_ILLEGAL_CHARACTER + // + // MessageText: + // + // An illegal character was encountered. For a multi-byte character set this + // includes a lead byte without a succeeding trail byte. For the Unicode + // character set this includes the characters 0xFFFF and 0xFFFE. + // + int ERROR_ILLEGAL_CHARACTER = 582; + // + // MessageId: ERROR_UNDEFINED_CHARACTER + // + // MessageText: + // + // The Unicode character is not defined in the Unicode character set + // installed on the system. + // + int ERROR_UNDEFINED_CHARACTER = 583; + // + // MessageId: ERROR_FLOPPY_VOLUME + // + // MessageText: + // + // The paging file cannot be created on a floppy diskette. + // + int ERROR_FLOPPY_VOLUME = 584; + // + // MessageId: ERROR_BIOS_FAILED_TO_CONNECT_INTERRUPT + // + // MessageText: + // + // The system BIOS failed to connect a system interrupt to the device or bus + // for which the device is connected. + // + int ERROR_BIOS_FAILED_TO_CONNECT_INTERRUPT = 585; + // + // MessageId: ERROR_BACKUP_CONTROLLER + // + // MessageText: + // + // This operation is only allowed for the Primary Domain Controller of the + // domain. + // + int ERROR_BACKUP_CONTROLLER = 586; + // + // MessageId: ERROR_MUTANT_LIMIT_EXCEEDED + // + // MessageText: + // + // An attempt was made to acquire a mutant such that its maximum count would + // have been exceeded. + // + int ERROR_MUTANT_LIMIT_EXCEEDED = 587; + // + // MessageId: ERROR_FS_DRIVER_REQUIRED + // + // MessageText: + // + // A volume has been accessed for which a file system driver is required + // that has not yet been loaded. + // + int ERROR_FS_DRIVER_REQUIRED = 588; + // + // MessageId: ERROR_CANNOT_LOAD_REGISTRY_FILE + // + // MessageText: + // + // {Registry File Failure} + // The registry cannot load the hive (file): + // %hs + // or its log or alternate. + // It is corrupt, absent, or not writable. + // + int ERROR_CANNOT_LOAD_REGISTRY_FILE = 589; + // + // MessageId: ERROR_DEBUG_ATTACH_FAILED + // + // MessageText: + // + // {Unexpected Failure in DebugActiveProcess} + // An unexpected failure occurred while processing a DebugActiveProcess API + // request. You may choose OK to terminate the process, or Cancel to ignore + // the error. + // + int ERROR_DEBUG_ATTACH_FAILED = 590; + // + // MessageId: ERROR_SYSTEM_PROCESS_TERMINATED + // + // MessageText: + // + // {Fatal System Error} + // The %hs system process terminated unexpectedly with a status of 0x%08x + // (0x%08x 0x%08x). + // The system has been shut down. + // + int ERROR_SYSTEM_PROCESS_TERMINATED = 591; + // + // MessageId: ERROR_DATA_NOT_ACCEPTED + // + // MessageText: + // + // {Data Not Accepted} + // The TDI client could not handle the data received during an indication. + // + int ERROR_DATA_NOT_ACCEPTED = 592; + // + // MessageId: ERROR_VDM_HARD_ERROR + // + // MessageText: + // + // NTVDM encountered a hard error. + // + int ERROR_VDM_HARD_ERROR = 593; + // + // MessageId: ERROR_DRIVER_CANCEL_TIMEOUT + // + // MessageText: + // + // {Cancel Timeout} + // The driver %hs failed to complete a cancelled I/O request in the allotted + // time. + // + int ERROR_DRIVER_CANCEL_TIMEOUT = 594; + // + // MessageId: ERROR_REPLY_MESSAGE_MISMATCH + // + // MessageText: + // + // {Reply Message Mismatch} + // An attempt was made to reply to an LPC message, but the thread specified + // by the client ID in the message was not waiting on that message. + // + int ERROR_REPLY_MESSAGE_MISMATCH = 595; + // + // MessageId: ERROR_LOST_WRITEBEHIND_DATA + // + // MessageText: + // + // {Delayed Write Failed} + // Windows was unable to save all the data for the file %hs. The data has + // been lost. + // This error may be caused by a failure of your computer hardware or + // network connection. Please try to save this file elsewhere. + // + int ERROR_LOST_WRITEBEHIND_DATA = 596; + // + // MessageId: ERROR_CLIENT_SERVER_PARAMETERS_INVALID + // + // MessageText: + // + // The parameter(s) passed to the server in the client/server shared memory + // window were invalid. Too much data may have been put in the shared memory + // window. + // + int ERROR_CLIENT_SERVER_PARAMETERS_INVALID = 597; + // + // MessageId: ERROR_NOT_TINY_STREAM + // + // MessageText: + // + // The stream is not a tiny stream. + // + int ERROR_NOT_TINY_STREAM = 598; + // + // MessageId: ERROR_STACK_OVERFLOW_READ + // + // MessageText: + // + // The request must be handled by the stack overflow code. + // + int ERROR_STACK_OVERFLOW_READ = 599; + // + // MessageId: ERROR_CONVERT_TO_LARGE + // + // MessageText: + // + // Internal OFS status codes indicating how an allocation operation is + // handled. Either it is retried after the containing onode is moved or the + // extent stream is converted to a large stream. + // + int ERROR_CONVERT_TO_LARGE = 600; + // + // MessageId: ERROR_FOUND_OUT_OF_SCOPE + // + // MessageText: + // + // The attempt to find the object found an object matching by ID on the + // volume but it is out of the scope of the handle used for the operation. + // + int ERROR_FOUND_OUT_OF_SCOPE = 601; + // + // MessageId: ERROR_ALLOCATE_BUCKET + // + // MessageText: + // + // The bucket array must be grown. Retry transaction after doing so. + // + int ERROR_ALLOCATE_BUCKET = 602; + // + // MessageId: ERROR_MARSHALL_OVERFLOW + // + // MessageText: + // + // The user/kernel marshalling buffer has overflowed. + // + int ERROR_MARSHALL_OVERFLOW = 603; + // + // MessageId: ERROR_INVALID_VARIANT + // + // MessageText: + // + // The supplied variant structure contains invalid data. + // + int ERROR_INVALID_VARIANT = 604; + // + // MessageId: ERROR_BAD_COMPRESSION_BUFFER + // + // MessageText: + // + // The specified buffer contains ill-formed data. + // + int ERROR_BAD_COMPRESSION_BUFFER = 605; + // + // MessageId: ERROR_AUDIT_FAILED + // + // MessageText: + // + // {Audit Failed} + // An attempt to generate a security audit failed. + // + int ERROR_AUDIT_FAILED = 606; + // + // MessageId: ERROR_TIMER_RESOLUTION_NOT_SET + // + // MessageText: + // + // The timer resolution was not previously set by the current process. + // + int ERROR_TIMER_RESOLUTION_NOT_SET = 607; + // + // MessageId: ERROR_INSUFFICIENT_LOGON_INFO + // + // MessageText: + // + // There is insufficient account information to log you on. + // + int ERROR_INSUFFICIENT_LOGON_INFO = 608; + // + // MessageId: ERROR_BAD_DLL_ENTRYPOINT + // + // MessageText: + // + // {Invalid DLL Entrypoint} + // The dynamic link library %hs is not written correctly. The stack pointer + // has been left in an inconsistent state. + // The entrypoint should be declared as WINAPI or STDCALL. Select YES to + // fail the DLL load. Select NO to continue execution. Selecting NO may + // cause the application to operate incorrectly. + // + int ERROR_BAD_DLL_ENTRYPOINT = 609; + // + // MessageId: ERROR_BAD_SERVICE_ENTRYPOINT + // + // MessageText: + // + // {Invalid Service Callback Entrypoint} + // The %hs service is not written correctly. The stack pointer has been left + // in an inconsistent state. + // The callback entrypoint should be declared as WINAPI or STDCALL. + // Selecting OK will cause the service to continue operation. However, the + // service process may operate incorrectly. + // + int ERROR_BAD_SERVICE_ENTRYPOINT = 610; + // + // MessageId: ERROR_IP_ADDRESS_CONFLICT1 + // + // MessageText: + // + // There is an IP address conflict with another system on the network + // + int ERROR_IP_ADDRESS_CONFLICT1 = 611; + // + // MessageId: ERROR_IP_ADDRESS_CONFLICT2 + // + // MessageText: + // + // There is an IP address conflict with another system on the network + // + int ERROR_IP_ADDRESS_CONFLICT2 = 612; + // + // MessageId: ERROR_REGISTRY_QUOTA_LIMIT + // + // MessageText: + // + // {Low On Registry Space} + // The system has reached the maximum size allowed for the system part of + // the registry. Additional storage requests will be ignored. + // + int ERROR_REGISTRY_QUOTA_LIMIT = 613; + // + // MessageId: ERROR_NO_CALLBACK_ACTIVE + // + // MessageText: + // + // A callback return system service cannot be executed when no callback is + // active. + // + int ERROR_NO_CALLBACK_ACTIVE = 614; + // + // MessageId: ERROR_PWD_TOO_SHORT + // + // MessageText: + // + // The password provided is too short to meet the policy of your user + // account. + // Please choose a longer password. + // + int ERROR_PWD_TOO_SHORT = 615; + // + // MessageId: ERROR_PWD_TOO_RECENT + // + // MessageText: + // + // The policy of your user account does not allow you to change passwords + // too frequently. + // This is done to prevent users from changing back to a familiar, but + // potentially discovered, password. + // If you feel your password has been compromised then please contact your + // administrator immediately to have a new one assigned. + // + int ERROR_PWD_TOO_RECENT = 616; + // + // MessageId: ERROR_PWD_HISTORY_CONFLICT + // + // MessageText: + // + // You have attempted to change your password to one that you have used in + // the past. + // The policy of your user account does not allow this. Please select a + // password that you have not previously used. + // + int ERROR_PWD_HISTORY_CONFLICT = 617; + // + // MessageId: ERROR_UNSUPPORTED_COMPRESSION + // + // MessageText: + // + // The specified compression format is unsupported. + // + int ERROR_UNSUPPORTED_COMPRESSION = 618; + // + // MessageId: ERROR_INVALID_HW_PROFILE + // + // MessageText: + // + // The specified hardware profile configuration is invalid. + // + int ERROR_INVALID_HW_PROFILE = 619; + // + // MessageId: ERROR_INVALID_PLUGPLAY_DEVICE_PATH + // + // MessageText: + // + // The specified Plug and Play registry device path is invalid. + // + int ERROR_INVALID_PLUGPLAY_DEVICE_PATH = 620; + // + // MessageId: ERROR_QUOTA_LIST_INCONSISTENT + // + // MessageText: + // + // The specified quota list is internally inconsistent with its descriptor. + // + int ERROR_QUOTA_LIST_INCONSISTENT = 621; + // + // MessageId: ERROR_EVALUATION_EXPIRATION + // + // MessageText: + // + // {Windows Evaluation Notification} + // The evaluation period for this installation of Windows has expired. This + // system will shutdown in=1 hour. To restore access to this installation of + // Windows, please upgrade this installation using a licensed distribution + // of this product. + // + int ERROR_EVALUATION_EXPIRATION = 622; + // + // MessageId: ERROR_ILLEGAL_DLL_RELOCATION + // + // MessageText: + // + // {Illegal System DLL Relocation} + // The system DLL %hs was relocated in memory. The application will not run + // properly. + // The relocation occurred because the DLL %hs occupied an address range + // reserved for Windows system DLLs. The vendor supplying the DLL should be + // contacted for a new DLL. + // + int ERROR_ILLEGAL_DLL_RELOCATION = 623; + // + // MessageId: ERROR_DLL_INIT_FAILED_LOGOFF + // + // MessageText: + // + // {DLL Initialization Failed} + // The application failed to initialize because the window station is + // shutting down. + // + int ERROR_DLL_INIT_FAILED_LOGOFF = 624; + // + // MessageId: ERROR_VALIDATE_CONTINUE + // + // MessageText: + // + // The validation process needs to continue on to the next step. + // + int ERROR_VALIDATE_CONTINUE = 625; + // + // MessageId: ERROR_NO_MORE_MATCHES + // + // MessageText: + // + // There are no more matches for the current index enumeration. + // + int ERROR_NO_MORE_MATCHES = 626; + // + // MessageId: ERROR_RANGE_LIST_CONFLICT + // + // MessageText: + // + // The range could not be added to the range list because of a conflict. + // + int ERROR_RANGE_LIST_CONFLICT = 627; + // + // MessageId: ERROR_SERVER_SID_MISMATCH + // + // MessageText: + // + // The server process is running under a SID different than that required by + // client. + // + int ERROR_SERVER_SID_MISMATCH = 628; + // + // MessageId: ERROR_CANT_ENABLE_DENY_ONLY + // + // MessageText: + // + // A group marked use for deny only cannot be enabled. + // + int ERROR_CANT_ENABLE_DENY_ONLY = 629; + // + // MessageId: ERROR_FLOAT_MULTIPLE_FAULTS + // + // MessageText: + // + // {EXCEPTION} + // Multiple floating point faults. + // + int ERROR_FLOAT_MULTIPLE_FAULTS = 630; // winnt + // + // MessageId: ERROR_FLOAT_MULTIPLE_TRAPS + // + // MessageText: + // + // {EXCEPTION} + // Multiple floating point traps. + // + int ERROR_FLOAT_MULTIPLE_TRAPS = 631; // winnt + // + // MessageId: ERROR_NOINTERFACE + // + // MessageText: + // + // The requested interface is not supported. + // + int ERROR_NOINTERFACE = 632; + // + // MessageId: ERROR_DRIVER_FAILED_SLEEP + // + // MessageText: + // + // {System Standby Failed} + // The driver %hs does not support standby mode. Updating this driver may + // allow the system to go to standby mode. + // + int ERROR_DRIVER_FAILED_SLEEP = 633; + // + // MessageId: ERROR_CORRUPT_SYSTEM_FILE + // + // MessageText: + // + // The system file %1 has become corrupt and has been replaced. + // + int ERROR_CORRUPT_SYSTEM_FILE = 634; + // + // MessageId: ERROR_COMMITMENT_MINIMUM + // + // MessageText: + // + // {Virtual Memory Minimum Too Low} + // Your system is low on virtual memory. Windows is increasing the size of + // your virtual memory paging file. + // During this process, memory requests for some applications may be denied. + // For more information, see Help. + // + int ERROR_COMMITMENT_MINIMUM = 635; + // + // MessageId: ERROR_PNP_RESTART_ENUMERATION + // + // MessageText: + // + // A device was removed so enumeration must be restarted. + // + int ERROR_PNP_RESTART_ENUMERATION = 636; + // + // MessageId: ERROR_SYSTEM_IMAGE_BAD_SIGNATURE + // + // MessageText: + // + // {Fatal System Error} + // The system image %s is not properly signed. + // The file has been replaced with the signed file. + // The system has been shut down. + // + int ERROR_SYSTEM_IMAGE_BAD_SIGNATURE = 637; + // + // MessageId: ERROR_PNP_REBOOT_REQUIRED + // + // MessageText: + // + // Device will not start without a reboot. + // + int ERROR_PNP_REBOOT_REQUIRED = 638; + // + // MessageId: ERROR_INSUFFICIENT_POWER + // + // MessageText: + // + // There is not enough power to complete the requested operation. + // + int ERROR_INSUFFICIENT_POWER = 639; + // + // MessageId: ERROR_MULTIPLE_FAULT_VIOLATION + // + // MessageText: + // + // ERROR_MULTIPLE_FAULT_VIOLATION + // + int ERROR_MULTIPLE_FAULT_VIOLATION = 640; + // + // MessageId: ERROR_SYSTEM_SHUTDOWN + // + // MessageText: + // + // The system is in the process of shutting down. + // + int ERROR_SYSTEM_SHUTDOWN = 641; + // + // MessageId: ERROR_PORT_NOT_SET + // + // MessageText: + // + // An attempt to remove a processes DebugPort was made, but a port was not + // already associated with the process. + // + int ERROR_PORT_NOT_SET = 642; + // + // MessageId: ERROR_DS_VERSION_CHECK_FAILURE + // + // MessageText: + // + // This version of Windows is not compatible with the behavior version of + // directory forest, domain or domain controller. + // + int ERROR_DS_VERSION_CHECK_FAILURE = 643; + // + // MessageId: ERROR_RANGE_NOT_FOUND + // + // MessageText: + // + // The specified range could not be found in the range list. + // + int ERROR_RANGE_NOT_FOUND = 644; + // + // MessageId: ERROR_NOT_SAFE_MODE_DRIVER + // + // MessageText: + // + // The driver was not loaded because the system is booting into safe mode. + // + int ERROR_NOT_SAFE_MODE_DRIVER = 646; + // + // MessageId: ERROR_FAILED_DRIVER_ENTRY + // + // MessageText: + // + // The driver was not loaded because it failed it's initialization call. + // + int ERROR_FAILED_DRIVER_ENTRY = 647; + // + // MessageId: ERROR_DEVICE_ENUMERATION_ERROR + // + // MessageText: + // + // The "%hs" encountered an error while applying power or reading the device + // configuration. + // This may be caused by a failure of your hardware or by a poor connection. + // + int ERROR_DEVICE_ENUMERATION_ERROR = 648; + // + // MessageId: ERROR_MOUNT_POINT_NOT_RESOLVED + // + // MessageText: + // + // The create operation failed because the name contained at least one mount + // point which resolves to a volume to which the specified device object is + // not attached. + // + int ERROR_MOUNT_POINT_NOT_RESOLVED = 649; + // + // MessageId: ERROR_INVALID_DEVICE_OBJECT_PARAMETER + // + // MessageText: + // + // The device object parameter is either not a valid device object or is not + // attached to the volume specified by the file name. + // + int ERROR_INVALID_DEVICE_OBJECT_PARAMETER = 650; + // + // MessageId: ERROR_MCA_OCCURED + // + // MessageText: + // + // A Machine Check Error has occurred. Please check the system eventlog for + // additional information. + // + int ERROR_MCA_OCCURED = 651; + // + // MessageId: ERROR_DRIVER_DATABASE_ERROR + // + // MessageText: + // + // There was error [%2] processing the driver database. + // + int ERROR_DRIVER_DATABASE_ERROR = 652; + // + // MessageId: ERROR_SYSTEM_HIVE_TOO_LARGE + // + // MessageText: + // + // System hive size has exceeded its limit. + // + int ERROR_SYSTEM_HIVE_TOO_LARGE = 653; + // + // MessageId: ERROR_DRIVER_FAILED_PRIOR_UNLOAD + // + // MessageText: + // + // The driver could not be loaded because a previous version of the driver + // is still in memory. + // + int ERROR_DRIVER_FAILED_PRIOR_UNLOAD = 654; + // + // MessageId: ERROR_VOLSNAP_PREPARE_HIBERNATE + // + // MessageText: + // + // {Volume Shadow Copy Service} + // Please wait while the Volume Shadow Copy Service prepares volume %hs for + // hibernation. + // + int ERROR_VOLSNAP_PREPARE_HIBERNATE = 655; + // + // MessageId: ERROR_HIBERNATION_FAILURE + // + // MessageText: + // + // The system has failed to hibernate (The error code is %hs). Hibernation + // will be disabled until the system is restarted. + // + int ERROR_HIBERNATION_FAILURE = 656; + // + // MessageId: ERROR_FILE_SYSTEM_LIMITATION + // + // MessageText: + // + // The requested operation could not be completed due to a file system + // limitation + // + int ERROR_FILE_SYSTEM_LIMITATION = 665; + // + // MessageId: ERROR_ASSERTION_FAILURE + // + // MessageText: + // + // An assertion failure has occurred. + // + int ERROR_ASSERTION_FAILURE = 668; + // + // MessageId: ERROR_ACPI_ERROR + // + // MessageText: + // + // An error occurred in the ACPI subsystem. + // + int ERROR_ACPI_ERROR = 669; + // + // MessageId: ERROR_WOW_ASSERTION + // + // MessageText: + // + // WOW Assertion Error. + // + int ERROR_WOW_ASSERTION = 670; + // + // MessageId: ERROR_PNP_BAD_MPS_TABLE + // + // MessageText: + // + // A device is missing in the system BIOS MPS table. This device will not be + // used. + // Please contact your system vendor for system BIOS update. + // + int ERROR_PNP_BAD_MPS_TABLE = 671; + // + // MessageId: ERROR_PNP_TRANSLATION_FAILED + // + // MessageText: + // + // A translator failed to translate resources. + // + int ERROR_PNP_TRANSLATION_FAILED = 672; + // + // MessageId: ERROR_PNP_IRQ_TRANSLATION_FAILED + // + // MessageText: + // + // A IRQ translator failed to translate resources. + // + int ERROR_PNP_IRQ_TRANSLATION_FAILED = 673; + // + // MessageId: ERROR_PNP_INVALID_ID + // + // MessageText: + // + // Driver %2 returned invalid ID for a child device (%3). + // + int ERROR_PNP_INVALID_ID = 674; + // + // MessageId: ERROR_WAKE_SYSTEM_DEBUGGER + // + // MessageText: + // + // {Kernel Debugger Awakened} + // the system debugger was awakened by an interrupt. + // + int ERROR_WAKE_SYSTEM_DEBUGGER = 675; + // + // MessageId: ERROR_HANDLES_CLOSED + // + // MessageText: + // + // {Handles Closed} + // Handles to objects have been automatically closed as a result of the + // requested operation. + // + int ERROR_HANDLES_CLOSED = 676; + // + // MessageId: ERROR_EXTRANEOUS_INFORMATION + // + // MessageText: + // + // {Too Much Information} + // The specified access control list (AC; contained more information than + // was expected. + // + int ERROR_EXTRANEOUS_INFORMATION = 677; + // + // MessageId: ERROR_RXACT_COMMIT_NECESSARY + // + // MessageText: + // + // This warning level status indicates that the transaction state already + // exists for the registry sub-tree, but that a transaction commit was + // previously aborted. + // The commit has NOT been completed, but has not been rolled back either + // (so it may still be committed if desired). + // + int ERROR_RXACT_COMMIT_NECESSARY = 678; + // + // MessageId: ERROR_MEDIA_CHECK + // + // MessageText: + // + // {Media Changed} + // The media may have changed. + // + int ERROR_MEDIA_CHECK = 679; + // + // MessageId: ERROR_GUID_SUBSTITUTION_MADE + // + // MessageText: + // + // {GUID Substitution} + // During the translation of a global identifier (GUID) to a Windows + // security ID (SID), no administratively-defined GUID prefix was found. + // A substitute prefix was used, which will not compromise system security. + // However, this may provide a more restrictive access than intended. + // + int ERROR_GUID_SUBSTITUTION_MADE = 680; + // + // MessageId: ERROR_STOPPED_ON_SYMLINK + // + // MessageText: + // + // The create operation stopped after reaching a symbolic link + // + int ERROR_STOPPED_ON_SYMLINK = 681; + // + // MessageId: ERROR_LONGJUMP + // + // MessageText: + // + // A long jump has been executed. + // + int ERROR_LONGJUMP = 682; + // + // MessageId: ERROR_PLUGPLAY_QUERY_VETOED + // + // MessageText: + // + // The Plug and Play query operation was not successful. + // + int ERROR_PLUGPLAY_QUERY_VETOED = 683; + // + // MessageId: ERROR_UNWIND_CONSOLIDATE + // + // MessageText: + // + // A frame consolidation has been executed. + // + int ERROR_UNWIND_CONSOLIDATE = 684; + // + // MessageId: ERROR_REGISTRY_HIVE_RECOVERED + // + // MessageText: + // + // {Registry Hive Recovered} + // Registry hive (file): + // %hs + // was corrupted and it has been recovered. Some data might have been lost. + // + int ERROR_REGISTRY_HIVE_RECOVERED = 685; + // + // MessageId: ERROR_DLL_MIGHT_BE_INSECURE + // + // MessageText: + // + // The application is attempting to run executable code from the module %hs. + // This may be insecure. An alternative, %hs, is available. Should the + // application use the secure module %hs? + // + int ERROR_DLL_MIGHT_BE_INSECURE = 686; + // + // MessageId: ERROR_DLL_MIGHT_BE_INCOMPATIBLE + // + // MessageText: + // + // The application is loading executable code from the module %hs. This is + // secure, but may be incompatible with previous releases of the operating + // system. An alternative, %hs, is available. Should the application use the + // secure module %hs? + // + int ERROR_DLL_MIGHT_BE_INCOMPATIBLE = 687; + // + // MessageId: ERROR_DBG_EXCEPTION_NOT_HANDLED + // + // MessageText: + // + // Debugger did not handle the exception. + // + int ERROR_DBG_EXCEPTION_NOT_HANDLED = 688; // winnt + // + // MessageId: ERROR_DBG_REPLY_LATER + // + // MessageText: + // + // Debugger will reply later. + // + int ERROR_DBG_REPLY_LATER = 689; + // + // MessageId: ERROR_DBG_UNABLE_TO_PROVIDE_HANDLE + // + // MessageText: + // + // Debugger cannot provide handle. + // + int ERROR_DBG_UNABLE_TO_PROVIDE_HANDLE = 690; + // + // MessageId: ERROR_DBG_TERMINATE_THREAD + // + // MessageText: + // + // Debugger terminated thread. + // + int ERROR_DBG_TERMINATE_THREAD = 691; // winnt + // + // MessageId: ERROR_DBG_TERMINATE_PROCESS + // + // MessageText: + // + // Debugger terminated process. + // + int ERROR_DBG_TERMINATE_PROCESS = 692; // winnt + // + // MessageId: ERROR_DBG_CONTROL_C + // + // MessageText: + // + // Debugger got control C. + // + int ERROR_DBG_CONTROL_C = 693; // winnt + // + // MessageId: ERROR_DBG_PRINTEXCEPTION_C + // + // MessageText: + // + // Debugger printed exception on control C. + // + int ERROR_DBG_PRINTEXCEPTION_C = 694; + // + // MessageId: ERROR_DBG_RIPEXCEPTION + // + // MessageText: + // + // Debugger received RIP exception. + // + int ERROR_DBG_RIPEXCEPTION = 695; + // + // MessageId: ERROR_DBG_CONTROL_BREAK + // + // MessageText: + // + // Debugger received control break. + // + int ERROR_DBG_CONTROL_BREAK = 696; // winnt + // + // MessageId: ERROR_DBG_COMMAND_EXCEPTION + // + // MessageText: + // + // Debugger command communication exception. + // + int ERROR_DBG_COMMAND_EXCEPTION = 697; // winnt + // + // MessageId: ERROR_OBJECT_NAME_EXISTS + // + // MessageText: + // + // {Object Exists} + // An attempt was made to create an object and the object name already + // existed. + // + int ERROR_OBJECT_NAME_EXISTS = 698; + // + // MessageId: ERROR_THREAD_WAS_SUSPENDED + // + // MessageText: + // + // {Thread Suspended} + // A thread termination occurred while the thread was suspended. The thread + // was resumed, and termination proceeded. + // + int ERROR_THREAD_WAS_SUSPENDED = 699; + // + // MessageId: ERROR_IMAGE_NOT_AT_BASE + // + // MessageText: + // + // {Image Relocated} + // An image file could not be mapped at the address specified in the image + // file. Local fixups must be performed on this image. + // + int ERROR_IMAGE_NOT_AT_BASE = 700; + // + // MessageId: ERROR_RXACT_STATE_CREATED + // + // MessageText: + // + // This informational level status indicates that a specified registry + // sub-tree transaction state did not yet exist and had to be created. + // + int ERROR_RXACT_STATE_CREATED = 701; + // + // MessageId: ERROR_SEGMENT_NOTIFICATION + // + // MessageText: + // + // {Segment Load} + // A virtual DOS machine (VDM) is loading, unloading, or moving an MS-DOS or + // Win16 program segment image. + // An exception is raised so a debugger can load, unload or track symbols + // and breakpoints within these=16-bit segments. + // + int ERROR_SEGMENT_NOTIFICATION = 702; // winnt + // + // MessageId: ERROR_BAD_CURRENT_DIRECTORY + // + // MessageText: + // + // {Invalid Current Directory} + // The process cannot switch to the startup current directory %hs. + // Select OK to set current directory to %hs, or select CANCEL to exit. + // + int ERROR_BAD_CURRENT_DIRECTORY = 703; + // + // MessageId: ERROR_FT_READ_RECOVERY_FROM_BACKUP + // + // MessageText: + // + // {Redundant Read} + // To satisfy a read request, the NT fault-tolerant file system successfully + // read the requested data from a redundant copy. + // This was done because the file system encountered a failure on a member + // of the fault-tolerant volume, but was unable to reassign the failing area + // of the device. + // + int ERROR_FT_READ_RECOVERY_FROM_BACKUP = 704; + // + // MessageId: ERROR_FT_WRITE_RECOVERY + // + // MessageText: + // + // {Redundant Write} + // To satisfy a write request, the NT fault-tolerant file system + // successfully wrote a redundant copy of the information. + // This was done because the file system encountered a failure on a member + // of the fault-tolerant volume, but was not able to reassign the failing + // area of the device. + // + int ERROR_FT_WRITE_RECOVERY = 705; + // + // MessageId: ERROR_IMAGE_MACHINE_TYPE_MISMATCH + // + // MessageText: + // + // {Machine Type Mismatch} + // The image file %hs is valid, but is for a machine type other than the + // current machine. Select OK to continue, or CANCEL to fail the DLL load. + // + int ERROR_IMAGE_MACHINE_TYPE_MISMATCH = 706; + // + // MessageId: ERROR_RECEIVE_PARTIAL + // + // MessageText: + // + // {Partial Data Received} + // The network transport returned partial data to its client. The remaining + // data will be sent later. + // + int ERROR_RECEIVE_PARTIAL = 707; + // + // MessageId: ERROR_RECEIVE_EXPEDITED + // + // MessageText: + // + // {Expedited Data Received} + // The network transport returned data to its client that was marked as + // expedited by the remote system. + // + int ERROR_RECEIVE_EXPEDITED = 708; + // + // MessageId: ERROR_RECEIVE_PARTIAL_EXPEDITED + // + // MessageText: + // + // {Partial Expedited Data Received} + // The network transport returned partial data to its client and this data + // was marked as expedited by the remote system. The remaining data will be + // sent later. + // + int ERROR_RECEIVE_PARTIAL_EXPEDITED = 709; + // + // MessageId: ERROR_EVENT_DONE + // + // MessageText: + // + // {TDI Event Done} + // The TDI indication has completed successfully. + // + int ERROR_EVENT_DONE = 710; + // + // MessageId: ERROR_EVENT_PENDING + // + // MessageText: + // + // {TDI Event Pending} + // The TDI indication has entered the pending state. + // + int ERROR_EVENT_PENDING = 711; + // + // MessageId: ERROR_CHECKING_FILE_SYSTEM + // + // MessageText: + // + // Checking file system on %wZ + // + int ERROR_CHECKING_FILE_SYSTEM = 712; + // + // MessageId: ERROR_FATAL_APP_EXIT + // + // MessageText: + // + // {Fatal Application Exit} + // %hs + // + int ERROR_FATAL_APP_EXIT = 713; + // + // MessageId: ERROR_PREDEFINED_HANDLE + // + // MessageText: + // + // The specified registry key is referenced by a predefined handle. + // + int ERROR_PREDEFINED_HANDLE = 714; + // + // MessageId: ERROR_WAS_UNLOCKED + // + // MessageText: + // + // {Page Unlocked} + // The page protection of a locked page was changed to 'No Access' and the + // page was unlocked from memory and from the process. + // + int ERROR_WAS_UNLOCKED = 715; + // + // MessageId: ERROR_SERVICE_NOTIFICATION + // + // MessageText: + // + // %hs + // + int ERROR_SERVICE_NOTIFICATION = 716; + // + // MessageId: ERROR_WAS_LOCKED + // + // MessageText: + // + // {Page Locked} + // One of the pages to lock was already locked. + // + int ERROR_WAS_LOCKED = 717; + // + // MessageId: ERROR_LOG_HARD_ERROR + // + // MessageText: + // + // Application popup: %1 : %2 + // + int ERROR_LOG_HARD_ERROR = 718; + // + // MessageId: ERROR_ALREADY_WIN32 + // + // MessageText: + // + // ERROR_ALREADY_WIN32 + // + int ERROR_ALREADY_WIN32 = 719; + // + // MessageId: ERROR_IMAGE_MACHINE_TYPE_MISMATCH_EXE + // + // MessageText: + // + // {Machine Type Mismatch} + // The image file %hs is valid, but is for a machine type other than the + // current machine. + // + int ERROR_IMAGE_MACHINE_TYPE_MISMATCH_EXE = 720; + // + // MessageId: ERROR_NO_YIELD_PERFORMED + // + // MessageText: + // + // A yield execution was performed and no thread was available to run. + // + int ERROR_NO_YIELD_PERFORMED = 721; + // + // MessageId: ERROR_TIMER_RESUME_IGNORED + // + // MessageText: + // + // The resumable flag to a timer API was ignored. + // + int ERROR_TIMER_RESUME_IGNORED = 722; + // + // MessageId: ERROR_ARBITRATION_UNHANDLED + // + // MessageText: + // + // The arbiter has deferred arbitration of these resources to its parent + // + int ERROR_ARBITRATION_UNHANDLED = 723; + // + // MessageId: ERROR_CARDBUS_NOT_SUPPORTED + // + // MessageText: + // + // The inserted CardBus device cannot be started because of a configuration + // error on "%hs". + // + int ERROR_CARDBUS_NOT_SUPPORTED = 724; + // + // MessageId: ERROR_MP_PROCESSOR_MISMATCH + // + // MessageText: + // + // The CPUs in this multiprocessor system are not all the same revision + // level. To use all processors the operating system restricts itself to the + // features of the least capable processor in the system. Should problems + // occur with this system, contact the CPU manufacturer to see if this mix + // of processors is supported. + // + int ERROR_MP_PROCESSOR_MISMATCH = 725; + // + // MessageId: ERROR_HIBERNATED + // + // MessageText: + // + // The system was put into hibernation. + // + int ERROR_HIBERNATED = 726; + // + // MessageId: ERROR_RESUME_HIBERNATION + // + // MessageText: + // + // The system was resumed from hibernation. + // + int ERROR_RESUME_HIBERNATION = 727; + // + // MessageId: ERROR_FIRMWARE_UPDATED + // + // MessageText: + // + // Windows has detected that the system firmware (BIOS) was updated + // [previous firmware date =%2, current firmware date %3]. + // + int ERROR_FIRMWARE_UPDATED = 728; + // + // MessageId: ERROR_DRIVERS_LEAKING_LOCKED_PAGES + // + // MessageText: + // + // A device driver is leaking locked I/O pages causing system degradation. + // The system has automatically enabled tracking code in order to try and + // catch the culprit. + // + int ERROR_DRIVERS_LEAKING_LOCKED_PAGES = 729; + // + // MessageId: ERROR_WAKE_SYSTEM + // + // MessageText: + // + // The system has awoken + // + int ERROR_WAKE_SYSTEM = 730; + // + // MessageId: ERROR_WAIT_1 + // + // MessageText: + // + // ERROR_WAIT_1 + // + int ERROR_WAIT_1 = 731; + // + // MessageId: ERROR_WAIT_2 + // + // MessageText: + // + // ERROR_WAIT_2 + // + int ERROR_WAIT_2 = 732; + // + // MessageId: ERROR_WAIT_3 + // + // MessageText: + // + // ERROR_WAIT_3 + // + int ERROR_WAIT_3 = 733; + // + // MessageId: ERROR_WAIT_63 + // + // MessageText: + // + // ERROR_WAIT_63 + // + int ERROR_WAIT_63 = 734; + // + // MessageId: ERROR_ABANDONED_WAIT_0 + // + // MessageText: + // + // ERROR_ABANDONED_WAIT_0 + // + int ERROR_ABANDONED_WAIT_0 = 735; // winnt + // + // MessageId: ERROR_ABANDONED_WAIT_63 + // + // MessageText: + // + // ERROR_ABANDONED_WAIT_63 + // + int ERROR_ABANDONED_WAIT_63 = 736; + // + // MessageId: ERROR_USER_APC + // + // MessageText: + // + // ERROR_USER_APC + // + int ERROR_USER_APC = 737; // winnt + // + // MessageId: ERROR_KERNEL_APC + // + // MessageText: + // + // ERROR_KERNEL_APC + // + int ERROR_KERNEL_APC = 738; + // + // MessageId: ERROR_ALERTED + // + // MessageText: + // + // ERROR_ALERTED + // + int ERROR_ALERTED = 739; + // + // MessageId: ERROR_ELEVATION_REQUIRED + // + // MessageText: + // + // The requested operation requires elevation. + // + int ERROR_ELEVATION_REQUIRED = 740; + // + // MessageId: ERROR_REPARSE + // + // MessageText: + // + // A reparse should be performed by the Object Manager since the name of the + // file resulted in a symbolic link. + // + int ERROR_REPARSE = 741; + // + // MessageId: ERROR_OPLOCK_BREAK_IN_PROGRESS + // + // MessageText: + // + // An open/create operation completed while an oplock break is underway. + // + int ERROR_OPLOCK_BREAK_IN_PROGRESS = 742; + // + // MessageId: ERROR_VOLUME_MOUNTED + // + // MessageText: + // + // A new volume has been mounted by a file system. + // + int ERROR_VOLUME_MOUNTED = 743; + // + // MessageId: ERROR_RXACT_COMMITTED + // + // MessageText: + // + // This success level status indicates that the transaction state already + // exists for the registry sub-tree, but that a transaction commit was + // previously aborted. + // The commit has now been completed. + // + int ERROR_RXACT_COMMITTED = 744; + // + // MessageId: ERROR_NOTIFY_CLEANUP + // + // MessageText: + // + // This indicates that a notify change request has been completed due to + // closing the handle which made the notify change request. + // + int ERROR_NOTIFY_CLEANUP = 745; + // + // MessageId: ERROR_PRIMARY_TRANSPORT_CONNECT_FAILED + // + // MessageText: + // + // {Connect Failure on Primary Transport} + // An attempt was made to connect to the remote server %hs on the primary + // transport, but the connection failed. + // The computer WAS able to connect on a secondary transport. + // + int ERROR_PRIMARY_TRANSPORT_CONNECT_FAILED = 746; + // + // MessageId: ERROR_PAGE_FAULT_TRANSITION + // + // MessageText: + // + // Page fault was a transition fault. + // + int ERROR_PAGE_FAULT_TRANSITION = 747; + // + // MessageId: ERROR_PAGE_FAULT_DEMAND_ZERO + // + // MessageText: + // + // Page fault was a demand zero fault. + // + int ERROR_PAGE_FAULT_DEMAND_ZERO = 748; + // + // MessageId: ERROR_PAGE_FAULT_COPY_ON_WRITE + // + // MessageText: + // + // Page fault was a demand zero fault. + // + int ERROR_PAGE_FAULT_COPY_ON_WRITE = 749; + // + // MessageId: ERROR_PAGE_FAULT_GUARD_PAGE + // + // MessageText: + // + // Page fault was a demand zero fault. + // + int ERROR_PAGE_FAULT_GUARD_PAGE = 750; + // + // MessageId: ERROR_PAGE_FAULT_PAGING_FILE + // + // MessageText: + // + // Page fault was satisfied by reading from a secondary storage device. + // + int ERROR_PAGE_FAULT_PAGING_FILE = 751; + // + // MessageId: ERROR_CACHE_PAGE_LOCKED + // + // MessageText: + // + // Cached page was locked during operation. + // + int ERROR_CACHE_PAGE_LOCKED = 752; + // + // MessageId: ERROR_CRASH_DUMP + // + // MessageText: + // + // Crash dump exists in paging file. + // + int ERROR_CRASH_DUMP = 753; + // + // MessageId: ERROR_BUFFER_ALL_ZEROS + // + // MessageText: + // + // Specified buffer contains all zeros. + // + int ERROR_BUFFER_ALL_ZEROS = 754; + // + // MessageId: ERROR_REPARSE_OBJECT + // + // MessageText: + // + // A reparse should be performed by the Object Manager since the name of the + // file resulted in a symbolic link. + // + int ERROR_REPARSE_OBJECT = 755; + // + // MessageId: ERROR_RESOURCE_REQUIREMENTS_CHANGED + // + // MessageText: + // + // The device has succeeded a query-stop and its resource requirements have + // changed. + // + int ERROR_RESOURCE_REQUIREMENTS_CHANGED = 756; + // + // MessageId: ERROR_TRANSLATION_COMPLETE + // + // MessageText: + // + // The translator has translated these resources into the global space and + // no further translations should be performed. + // + int ERROR_TRANSLATION_COMPLETE = 757; + // + // MessageId: ERROR_NOTHING_TO_TERMINATE + // + // MessageText: + // + // A process being terminated has no threads to terminate. + // + int ERROR_NOTHING_TO_TERMINATE = 758; + // + // MessageId: ERROR_PROCESS_NOT_IN_JOB + // + // MessageText: + // + // The specified process is not part of a job. + // + int ERROR_PROCESS_NOT_IN_JOB = 759; + // + // MessageId: ERROR_PROCESS_IN_JOB + // + // MessageText: + // + // The specified process is part of a job. + // + int ERROR_PROCESS_IN_JOB = 760; + // + // MessageId: ERROR_VOLSNAP_HIBERNATE_READY + // + // MessageText: + // + // {Volume Shadow Copy Service} + // The system is now ready for hibernation. + // + int ERROR_VOLSNAP_HIBERNATE_READY = 761; + // + // MessageId: ERROR_FSFILTER_OP_COMPLETED_SUCCESSFULLY + // + // MessageText: + // + // A file system or file system filter driver has successfully completed an + // FsFilter operation. + // + int ERROR_FSFILTER_OP_COMPLETED_SUCCESSFULLY = 762; + // + // MessageId: ERROR_INTERRUPT_VECTOR_ALREADY_CONNECTED + // + // MessageText: + // + // The specified interrupt vector was already connected. + // + int ERROR_INTERRUPT_VECTOR_ALREADY_CONNECTED = 763; + // + // MessageId: ERROR_INTERRUPT_STILL_CONNECTED + // + // MessageText: + // + // The specified interrupt vector is still connected. + // + int ERROR_INTERRUPT_STILL_CONNECTED = 764; + // + // MessageId: ERROR_WAIT_FOR_OPLOCK + // + // MessageText: + // + // An operation is blocked waiting for an oplock. + // + int ERROR_WAIT_FOR_OPLOCK = 765; + // + // MessageId: ERROR_DBG_EXCEPTION_HANDLED + // + // MessageText: + // + // Debugger handled exception + // + int ERROR_DBG_EXCEPTION_HANDLED = 766; // winnt + // + // MessageId: ERROR_DBG_CONTINUE + // + // MessageText: + // + // Debugger continued + // + int ERROR_DBG_CONTINUE = 767; // winnt + // + // MessageId: ERROR_CALLBACK_POP_STACK + // + // MessageText: + // + // An exception occurred in a user mode callback and the kernel callback + // frame should be removed. + // + int ERROR_CALLBACK_POP_STACK = 768; + // + // MessageId: ERROR_COMPRESSION_DISABLED + // + // MessageText: + // + // Compression is disabled for this volume. + // + int ERROR_COMPRESSION_DISABLED = 769; + // + // MessageId: ERROR_CANTFETCHBACKWARDS + // + // MessageText: + // + // The data provider cannot fetch backwards through a result set. + // + int ERROR_CANTFETCHBACKWARDS = 770; + // + // MessageId: ERROR_CANTSCROLLBACKWARDS + // + // MessageText: + // + // The data provider cannot scroll backwards through a result set. + // + int ERROR_CANTSCROLLBACKWARDS = 771; + // + // MessageId: ERROR_ROWSNOTRELEASED + // + // MessageText: + // + // The data provider requires that previously fetched data is released + // before asking for more data. + // + int ERROR_ROWSNOTRELEASED = 772; + // + // MessageId: ERROR_BAD_ACCESSOR_FLAGS + // + // MessageText: + // + // The data provider was not able to intrepret the flags set for a column + // binding in an accessor. + // + int ERROR_BAD_ACCESSOR_FLAGS = 773; + // + // MessageId: ERROR_ERRORS_ENCOUNTERED + // + // MessageText: + // + // One or more errors occurred while processing the request. + // + int ERROR_ERRORS_ENCOUNTERED = 774; + // + // MessageId: ERROR_NOT_CAPABLE + // + // MessageText: + // + // The implementation is not capable of performing the request. + // + int ERROR_NOT_CAPABLE = 775; + // + // MessageId: ERROR_REQUEST_OUT_OF_SEQUENCE + // + // MessageText: + // + // The client of a component requested an operation which is not valid given + // the state of the component instance. + // + int ERROR_REQUEST_OUT_OF_SEQUENCE = 776; + // + // MessageId: ERROR_VERSION_PARSE_ERROR + // + // MessageText: + // + // A version number could not be parsed. + // + int ERROR_VERSION_PARSE_ERROR = 777; + // + // MessageId: ERROR_BADSTARTPOSITION + // + // MessageText: + // + // The iterator's start position is invalid. + // + int ERROR_BADSTARTPOSITION = 778; + // + // MessageId: ERROR_MEMORY_HARDWARE + // + // MessageText: + // + // The hardware has reported an uncorrectable memory error. + // + int ERROR_MEMORY_HARDWARE = 779; + // + // MessageId: ERROR_DISK_REPAIR_DISABLED + // + // MessageText: + // + // The attempted operation required self healing to be enabled. + // + int ERROR_DISK_REPAIR_DISABLED = 780; + // + // MessageId: ERROR_INSUFFICIENT_RESOURCE_FOR_SPECIFIED_SHARED_SECTION_SIZE + // + // MessageText: + // + // The Desktop heap encountered an error while allocating session memory. + // There is more information in the system event log. + // + int ERROR_INSUFFICIENT_RESOURCE_FOR_SPECIFIED_SHARED_SECTION_SIZE = 781; + // + // MessageId: ERROR_SYSTEM_POWERSTATE_TRANSITION + // + // MessageText: + // + // The system powerstate is transitioning from %2 to %3. + // + int ERROR_SYSTEM_POWERSTATE_TRANSITION = 782; + // + // MessageId: ERROR_SYSTEM_POWERSTATE_COMPLEX_TRANSITION + // + // MessageText: + // + // The system powerstate is transitioning from %2 to %3 but could enter %4. + // + int ERROR_SYSTEM_POWERSTATE_COMPLEX_TRANSITION = 783; + // + // MessageId: ERROR_MCA_EXCEPTION + // + // MessageText: + // + // A thread is getting dispatched with MCA EXCEPTION because of MCA. + // + int ERROR_MCA_EXCEPTION = 784; + // + // MessageId: ERROR_ACCESS_AUDIT_BY_POLICY + // + // MessageText: + // + // Access to %1 is monitored by policy rule %2. + // + int ERROR_ACCESS_AUDIT_BY_POLICY = 785; + // + // MessageId: ERROR_ACCESS_DISABLED_NO_SAFER_UI_BY_POLICY + // + // MessageText: + // + // Access to %1 has been restricted by your Administrator by policy rule %2. + // + int ERROR_ACCESS_DISABLED_NO_SAFER_UI_BY_POLICY = 786; + // + // MessageId: ERROR_ABANDON_HIBERFILE + // + // MessageText: + // + // A valid hibernation file has been invalidated and should be abandoned. + // + int ERROR_ABANDON_HIBERFILE = 787; + // + // MessageId: ERROR_LOST_WRITEBEHIND_DATA_NETWORK_DISCONNECTED + // + // MessageText: + // + // {Delayed Write Failed} + // Windows was unable to save all the data for the file %hs; the data has + // been lost. + // This error may be caused by network connectivity issues. Please try to + // save this file elsewhere. + // + int ERROR_LOST_WRITEBEHIND_DATA_NETWORK_DISCONNECTED = 788; + // + // MessageId: ERROR_LOST_WRITEBEHIND_DATA_NETWORK_SERVER_ERROR + // + // MessageText: + // + // {Delayed Write Failed} + // Windows was unable to save all the data for the file %hs; the data has + // been lost. + // This error was returned by the server on which the file exists. Please + // try to save this file elsewhere. + // + int ERROR_LOST_WRITEBEHIND_DATA_NETWORK_SERVER_ERROR = 789; + // + // MessageId: ERROR_LOST_WRITEBEHIND_DATA_LOCAL_DISK_ERROR + // + // MessageText: + // + // {Delayed Write Failed} + // Windows was unable to save all the data for the file %hs; the data has + // been lost. + // This error may be caused if the device has been removed or the media is + // write-protected. + // + int ERROR_LOST_WRITEBEHIND_DATA_LOCAL_DISK_ERROR = 790; + // + // MessageId: ERROR_BAD_MCFG_TABLE + // + // MessageText: + // + // The resources required for this device conflict with the MCFG table. + // + int ERROR_BAD_MCFG_TABLE = 791; + // + // MessageId: ERROR_EA_ACCESS_DENIED + // + // MessageText: + // + // Access to the extended attribute was denied. + // + int ERROR_EA_ACCESS_DENIED = 994; + // + // MessageId: ERROR_OPERATION_ABORTED + // + // MessageText: + // + // The I/O operation has been aborted because of either a thread exit or an + // application request. + // + int ERROR_OPERATION_ABORTED = 995; + // + // MessageId: ERROR_IO_INCOMPLETE + // + // MessageText: + // + // Overlapped I/O event is not in a signaled state. + // + int ERROR_IO_INCOMPLETE = 996; + // + // MessageId: ERROR_IO_PENDING + // + // MessageText: + // + // Overlapped I/O operation is in progress. + // + int ERROR_IO_PENDING = 997; // dderror + // + // MessageId: ERROR_NOACCESS + // + // MessageText: + // + // Invalid access to memory location. + // + int ERROR_NOACCESS = 998; + // + // MessageId: ERROR_SWAPERROR + // + // MessageText: + // + // Error performing inpage operation. + // + int ERROR_SWAPERROR = 999; + // + // MessageId: ERROR_STACK_OVERFLOW + // + // MessageText: + // + // Recursion too deep; the stack overflowed. + // + int ERROR_STACK_OVERFLOW = 1001; + // + // MessageId: ERROR_INVALID_MESSAGE + // + // MessageText: + // + // The window cannot act on the sent message. + // + int ERROR_INVALID_MESSAGE = 1002; + // + // MessageId: ERROR_CAN_NOT_COMPLETE + // + // MessageText: + // + // Cannot complete this function. + // + int ERROR_CAN_NOT_COMPLETE = 1003; + // + // MessageId: ERROR_INVALID_FLAGS + // + // MessageText: + // + // Invalid flags. + // + int ERROR_INVALID_FLAGS = 1004; + // + // MessageId: ERROR_UNRECOGNIZED_VOLUME + // + // MessageText: + // + // The volume does not contain a recognized file system. + // Please make sure that all required file system drivers are loaded and + // that the volume is not corrupted. + // + int ERROR_UNRECOGNIZED_VOLUME = 1005; + // + // MessageId: ERROR_FILE_INVALID + // + // MessageText: + // + // The volume for a file has been externally altered so that the opened file + // is no longer valid. + // + int ERROR_FILE_INVALID = 1006; + // + // MessageId: ERROR_FULLSCREEN_MODE + // + // MessageText: + // + // The requested operation cannot be performed in full-screen mode. + // + int ERROR_FULLSCREEN_MODE = 1007; + // + // MessageId: ERROR_NO_TOKEN + // + // MessageText: + // + // An attempt was made to reference a token that does not exist. + // + int ERROR_NO_TOKEN = 1008; + // + // MessageId: ERROR_BADDB + // + // MessageText: + // + // The configuration registry database is corrupt. + // + int ERROR_BADDB = 1009; + // + // MessageId: ERROR_BADKEY + // + // MessageText: + // + // The configuration registry key is invalid. + // + int ERROR_BADKEY = 1010; + // + // MessageId: ERROR_CANTOPEN + // + // MessageText: + // + // The configuration registry key could not be opened. + // + int ERROR_CANTOPEN = 1011; + // + // MessageId: ERROR_CANTREAD + // + // MessageText: + // + // The configuration registry key could not be read. + // + int ERROR_CANTREAD = 1012; + // + // MessageId: ERROR_CANTWRITE + // + // MessageText: + // + // The configuration registry key could not be written. + // + int ERROR_CANTWRITE = 1013; + // + // MessageId: ERROR_REGISTRY_RECOVERED + // + // MessageText: + // + // One of the files in the registry database had to be recovered by use of a + // log or alternate copy. The recovery was successful. + // + int ERROR_REGISTRY_RECOVERED = 1014; + // + // MessageId: ERROR_REGISTRY_CORRUPT + // + // MessageText: + // + // The registry is corrupted. The structure of one of the files containing + // registry data is corrupted, or the system's memory image of the file is + // corrupted, or the file could not be recovered because the alternate copy + // or log was absent or corrupted. + // + int ERROR_REGISTRY_CORRUPT = 1015; + // + // MessageId: ERROR_REGISTRY_IO_FAILED + // + // MessageText: + // + // An I/O operation initiated by the registry failed unrecoverably. The + // registry could not read in, or write out, or flush, one of the files that + // contain the system's image of the registry. + // + int ERROR_REGISTRY_IO_FAILED = 1016; + // + // MessageId: ERROR_NOT_REGISTRY_FILE + // + // MessageText: + // + // The system has attempted to load or restore a file into the registry, but + // the specified file is not in a registry file format. + // + int ERROR_NOT_REGISTRY_FILE = 1017; + // + // MessageId: ERROR_KEY_DELETED + // + // MessageText: + // + // Illegal operation attempted on a registry key that has been marked for + // deletion. + // + int ERROR_KEY_DELETED = 1018; + // + // MessageId: ERROR_NO_LOG_SPACE + // + // MessageText: + // + // System could not allocate the required space in a registry log. + // + int ERROR_NO_LOG_SPACE = 1019; + // + // MessageId: ERROR_KEY_HAS_CHILDREN + // + // MessageText: + // + // Cannot create a symbolic link in a registry key that already has subkeys + // or values. + // + int ERROR_KEY_HAS_CHILDREN = 1020; + // + // MessageId: ERROR_CHILD_MUST_BE_VOLATILE + // + // MessageText: + // + // Cannot create a stable subkey under a volatile parent key. + // + int ERROR_CHILD_MUST_BE_VOLATILE = 1021; + // + // MessageId: ERROR_NOTIFY_ENUM_DIR + // + // MessageText: + // + // A notify change request is being completed and the information is not + // being returned in the caller's buffer. The caller now needs to enumerate + // the files to find the changes. + // + int ERROR_NOTIFY_ENUM_DIR = 1022; + // + // MessageId: ERROR_DEPENDENT_SERVICES_RUNNING + // + // MessageText: + // + // A stop control has been sent to a service that other running services are + // dependent on. + // + int ERROR_DEPENDENT_SERVICES_RUNNING = 1051; + // + // MessageId: ERROR_INVALID_SERVICE_CONTROL + // + // MessageText: + // + // The requested control is not valid for this service. + // + int ERROR_INVALID_SERVICE_CONTROL = 1052; + // + // MessageId: ERROR_SERVICE_REQUEST_TIMEOUT + // + // MessageText: + // + // The service did not respond to the start or control request in a timely + // fashion. + // + int ERROR_SERVICE_REQUEST_TIMEOUT = 1053; + // + // MessageId: ERROR_SERVICE_NO_THREAD + // + // MessageText: + // + // A thread could not be created for the service. + // + int ERROR_SERVICE_NO_THREAD = 1054; + // + // MessageId: ERROR_SERVICE_DATABASE_LOCKED + // + // MessageText: + // + // The service database is locked. + // + int ERROR_SERVICE_DATABASE_LOCKED = 1055; + // + // MessageId: ERROR_SERVICE_ALREADY_RUNNING + // + // MessageText: + // + // An instance of the service is already running. + // + int ERROR_SERVICE_ALREADY_RUNNING = 1056; + // + // MessageId: ERROR_INVALID_SERVICE_ACCOUNT + // + // MessageText: + // + // The account name is invalid or does not exist, or the password is invalid + // for the account name specified. + // + int ERROR_INVALID_SERVICE_ACCOUNT = 1057; + // + // MessageId: ERROR_SERVICE_DISABLED + // + // MessageText: + // + // The service cannot be started, either because it is disabled or because + // it has no enabled devices associated with it. + // + int ERROR_SERVICE_DISABLED = 1058; + // + // MessageId: ERROR_CIRCULAR_DEPENDENCY + // + // MessageText: + // + // Circular service dependency was specified. + // + int ERROR_CIRCULAR_DEPENDENCY = 1059; + // + // MessageId: ERROR_SERVICE_DOES_NOT_EXIST + // + // MessageText: + // + // The specified service does not exist as an installed service. + // + int ERROR_SERVICE_DOES_NOT_EXIST = 1060; + // + // MessageId: ERROR_SERVICE_CANNOT_ACCEPT_CTRL + // + // MessageText: + // + // The service cannot accept control messages at this time. + // + int ERROR_SERVICE_CANNOT_ACCEPT_CTRL = 1061; + // + // MessageId: ERROR_SERVICE_NOT_ACTIVE + // + // MessageText: + // + // The service has not been started. + // + int ERROR_SERVICE_NOT_ACTIVE = 1062; + // + // MessageId: ERROR_FAILED_SERVICE_CONTROLLER_CONNECT + // + // MessageText: + // + // The service process could not connect to the service controller. + // + int ERROR_FAILED_SERVICE_CONTROLLER_CONNECT = 1063; + // + // MessageId: ERROR_EXCEPTION_IN_SERVICE + // + // MessageText: + // + // An exception occurred in the service when handling the control request. + // + int ERROR_EXCEPTION_IN_SERVICE = 1064; + // + // MessageId: ERROR_DATABASE_DOES_NOT_EXIST + // + // MessageText: + // + // The database specified does not exist. + // + int ERROR_DATABASE_DOES_NOT_EXIST = 1065; + // + // MessageId: ERROR_SERVICE_SPECIFIC_ERROR + // + // MessageText: + // + // The service has returned a service-specific error code. + // + int ERROR_SERVICE_SPECIFIC_ERROR = 1066; + // + // MessageId: ERROR_PROCESS_ABORTED + // + // MessageText: + // + // The process terminated unexpectedly. + // + int ERROR_PROCESS_ABORTED = 1067; + // + // MessageId: ERROR_SERVICE_DEPENDENCY_FAIL + // + // MessageText: + // + // The dependency service or group failed to start. + // + int ERROR_SERVICE_DEPENDENCY_FAIL = 1068; + // + // MessageId: ERROR_SERVICE_LOGON_FAILED + // + // MessageText: + // + // The service did not start due to a logon failure. + // + int ERROR_SERVICE_LOGON_FAILED = 1069; + // + // MessageId: ERROR_SERVICE_START_HANG + // + // MessageText: + // + // After starting, the service hung in a start-pending state. + // + int ERROR_SERVICE_START_HANG = 1070; + // + // MessageId: ERROR_INVALID_SERVICE_LOCK + // + // MessageText: + // + // The specified service database lock is invalid. + // + int ERROR_INVALID_SERVICE_LOCK = 1071; + // + // MessageId: ERROR_SERVICE_MARKED_FOR_DELETE + // + // MessageText: + // + // The specified service has been marked for deletion. + // + int ERROR_SERVICE_MARKED_FOR_DELETE = 1072; + // + // MessageId: ERROR_SERVICE_EXISTS + // + // MessageText: + // + // The specified service already exists. + // + int ERROR_SERVICE_EXISTS = 1073; + // + // MessageId: ERROR_ALREADY_RUNNING_LKG + // + // MessageText: + // + // The system is currently running with the last-known-good configuration. + // + int ERROR_ALREADY_RUNNING_LKG = 1074; + // + // MessageId: ERROR_SERVICE_DEPENDENCY_DELETED + // + // MessageText: + // + // The dependency service does not exist or has been marked for deletion. + // + int ERROR_SERVICE_DEPENDENCY_DELETED = 1075; + // + // MessageId: ERROR_BOOT_ALREADY_ACCEPTED + // + // MessageText: + // + // The current boot has already been accepted for use as the last-known-good + // control set. + // + int ERROR_BOOT_ALREADY_ACCEPTED = 1076; + // + // MessageId: ERROR_SERVICE_NEVER_STARTED + // + // MessageText: + // + // No attempts to start the service have been made since the last boot. + // + int ERROR_SERVICE_NEVER_STARTED = 1077; + // + // MessageId: ERROR_DUPLICATE_SERVICE_NAME + // + // MessageText: + // + // The name is already in use as either a service name or a service display + // name. + // + int ERROR_DUPLICATE_SERVICE_NAME = 1078; + // + // MessageId: ERROR_DIFFERENT_SERVICE_ACCOUNT + // + // MessageText: + // + // The account specified for this service is different from the account + // specified for other services running in the same process. + // + int ERROR_DIFFERENT_SERVICE_ACCOUNT = 1079; + // + // MessageId: ERROR_CANNOT_DETECT_DRIVER_FAILURE + // + // MessageText: + // + // Failure actions can only be set for Win32 services, not for drivers. + // + int ERROR_CANNOT_DETECT_DRIVER_FAILURE = 1080; + // + // MessageId: ERROR_CANNOT_DETECT_PROCESS_ABORT + // + // MessageText: + // + // This service runs in the same process as the service control manager. + // Therefore, the service control manager cannot take action if this + // service's process terminates unexpectedly. + // + int ERROR_CANNOT_DETECT_PROCESS_ABORT = 1081; + // + // MessageId: ERROR_NO_RECOVERY_PROGRAM + // + // MessageText: + // + // No recovery program has been configured for this service. + // + int ERROR_NO_RECOVERY_PROGRAM = 1082; + // + // MessageId: ERROR_SERVICE_NOT_IN_EXE + // + // MessageText: + // + // The executable program that this service is configured to run in does not + // implement the service. + // + int ERROR_SERVICE_NOT_IN_EXE = 1083; + // + // MessageId: ERROR_NOT_SAFEBOOT_SERVICE + // + // MessageText: + // + // This service cannot be started in Safe Mode + // + int ERROR_NOT_SAFEBOOT_SERVICE = 1084; + // + // MessageId: ERROR_END_OF_MEDIA + // + // MessageText: + // + // The physical end of the tape has been reached. + // + int ERROR_END_OF_MEDIA = 1100; + // + // MessageId: ERROR_FILEMARK_DETECTED + // + // MessageText: + // + // A tape access reached a filemark. + // + int ERROR_FILEMARK_DETECTED = 1101; + // + // MessageId: ERROR_BEGINNING_OF_MEDIA + // + // MessageText: + // + // The beginning of the tape or a partition was encountered. + // + int ERROR_BEGINNING_OF_MEDIA = 1102; + // + // MessageId: ERROR_SETMARK_DETECTED + // + // MessageText: + // + // A tape access reached the end of a set of files. + // + int ERROR_SETMARK_DETECTED = 1103; + // + // MessageId: ERROR_NO_DATA_DETECTED + // + // MessageText: + // + // No more data is on the tape. + // + int ERROR_NO_DATA_DETECTED = 1104; + // + // MessageId: ERROR_PARTITION_FAILURE + // + // MessageText: + // + // Tape could not be partitioned. + // + int ERROR_PARTITION_FAILURE = 1105; + // + // MessageId: ERROR_INVALID_BLOCK_LENGTH + // + // MessageText: + // + // When accessing a new tape of a multivolume partition, the current block + // size is incorrect. + // + int ERROR_INVALID_BLOCK_LENGTH = 1106; + // + // MessageId: ERROR_DEVICE_NOT_PARTITIONED + // + // MessageText: + // + // Tape partition information could not be found when loading a tape. + // + int ERROR_DEVICE_NOT_PARTITIONED = 1107; + // + // MessageId: ERROR_UNABLE_TO_LOCK_MEDIA + // + // MessageText: + // + // Unable to lock the media eject mechanism. + // + int ERROR_UNABLE_TO_LOCK_MEDIA = 1108; + // + // MessageId: ERROR_UNABLE_TO_UNLOAD_MEDIA + // + // MessageText: + // + // Unable to unload the media. + // + int ERROR_UNABLE_TO_UNLOAD_MEDIA = 1109; + // + // MessageId: ERROR_MEDIA_CHANGED + // + // MessageText: + // + // The media in the drive may have changed. + // + int ERROR_MEDIA_CHANGED = 1110; + // + // MessageId: ERROR_BUS_RESET + // + // MessageText: + // + // The I/O bus was reset. + // + int ERROR_BUS_RESET = 1111; + // + // MessageId: ERROR_NO_MEDIA_IN_DRIVE + // + // MessageText: + // + // No media in drive. + // + int ERROR_NO_MEDIA_IN_DRIVE = 1112; + // + // MessageId: ERROR_NO_UNICODE_TRANSLATION + // + // MessageText: + // + // No mapping for the Unicode character exists in the target multi-byte code + // page. + // + int ERROR_NO_UNICODE_TRANSLATION = 1113; + // + // MessageId: ERROR_DLL_INIT_FAILED + // + // MessageText: + // + // A dynamic link library (DL; initialization routine failed. + // + int ERROR_DLL_INIT_FAILED = 1114; + // + // MessageId: ERROR_SHUTDOWN_IN_PROGRESS + // + // MessageText: + // + // A system shutdown is in progress. + // + int ERROR_SHUTDOWN_IN_PROGRESS = 1115; + // + // MessageId: ERROR_NO_SHUTDOWN_IN_PROGRESS + // + // MessageText: + // + // Unable to abort the system shutdown because no shutdown was in progress. + // + int ERROR_NO_SHUTDOWN_IN_PROGRESS = 1116; + // + // MessageId: ERROR_IO_DEVICE + // + // MessageText: + // + // The request could not be performed because of an I/O device error. + // + int ERROR_IO_DEVICE = 1117; + // + // MessageId: ERROR_SERIAL_NO_DEVICE + // + // MessageText: + // + // No serial device was successfully initialized. The serial driver will + // unload. + // + int ERROR_SERIAL_NO_DEVICE = 1118; + // + // MessageId: ERROR_IRQ_BUSY + // + // MessageText: + // + // Unable to open a device that was sharing an interrupt request (IRQ) with + // other devices. At least one other device that uses that IRQ was already + // opened. + // + int ERROR_IRQ_BUSY = 1119; + // + // MessageId: ERROR_MORE_WRITES + // + // MessageText: + // + // A serial I/O operation was completed by another write to the serial port. + // (The IOCTL_SERIAL_XOFF_COUNTER reached zero.) + // + int ERROR_MORE_WRITES = 1120; + // + // MessageId: ERROR_COUNTER_TIMEOUT + // + // MessageText: + // + // A serial I/O operation completed because the timeout period expired. + // (The IOCTL_SERIAL_XOFF_COUNTER did not reach zero.) + // + int ERROR_COUNTER_TIMEOUT = 1121; + // + // MessageId: ERROR_FLOPPY_ID_MARK_NOT_FOUND + // + // MessageText: + // + // No ID address mark was found on the floppy disk. + // + int ERROR_FLOPPY_ID_MARK_NOT_FOUND = 1122; + // + // MessageId: ERROR_FLOPPY_WRONG_CYLINDER + // + // MessageText: + // + // Mismatch between the floppy disk sector ID field and the floppy disk + // controller track address. + // + int ERROR_FLOPPY_WRONG_CYLINDER = 1123; + // + // MessageId: ERROR_FLOPPY_UNKNOWN_ERROR + // + // MessageText: + // + // The floppy disk controller reported an error that is not recognized by + // the floppy disk driver. + // + int ERROR_FLOPPY_UNKNOWN_ERROR = 1124; + // + // MessageId: ERROR_FLOPPY_BAD_REGISTERS + // + // MessageText: + // + // The floppy disk controller returned inconsistent results in its + // registers. + // + int ERROR_FLOPPY_BAD_REGISTERS = 1125; + // + // MessageId: ERROR_DISK_RECALIBRATE_FAILED + // + // MessageText: + // + // While accessing the hard disk, a recalibrate operation failed, even after + // retries. + // + int ERROR_DISK_RECALIBRATE_FAILED = 1126; + // + // MessageId: ERROR_DISK_OPERATION_FAILED + // + // MessageText: + // + // While accessing the hard disk, a disk operation failed even after + // retries. + // + int ERROR_DISK_OPERATION_FAILED = 1127; + // + // MessageId: ERROR_DISK_RESET_FAILED + // + // MessageText: + // + // While accessing the hard disk, a disk controller reset was needed, but + // even that failed. + // + int ERROR_DISK_RESET_FAILED = 1128; + // + // MessageId: ERROR_EOM_OVERFLOW + // + // MessageText: + // + // Physical end of tape encountered. + // + int ERROR_EOM_OVERFLOW = 1129; + // + // MessageId: ERROR_NOT_ENOUGH_SERVER_MEMORY + // + // MessageText: + // + // Not enough server storage is available to process this command. + // + int ERROR_NOT_ENOUGH_SERVER_MEMORY = 1130; + // + // MessageId: ERROR_POSSIBLE_DEADLOCK + // + // MessageText: + // + // A potential deadlock condition has been detected. + // + int ERROR_POSSIBLE_DEADLOCK = 1131; + // + // MessageId: ERROR_MAPPED_ALIGNMENT + // + // MessageText: + // + // The base address or the file offset specified does not have the proper + // alignment. + // + int ERROR_MAPPED_ALIGNMENT = 1132; + // + // MessageId: ERROR_SET_POWER_STATE_VETOED + // + // MessageText: + // + // An attempt to change the system power state was vetoed by another + // application or driver. + // + int ERROR_SET_POWER_STATE_VETOED = 1140; + // + // MessageId: ERROR_SET_POWER_STATE_FAILED + // + // MessageText: + // + // The system BIOS failed an attempt to change the system power state. + // + int ERROR_SET_POWER_STATE_FAILED = 1141; + // + // MessageId: ERROR_TOO_MANY_LINKS + // + // MessageText: + // + // An attempt was made to create more links on a file than the file system + // supports. + // + int ERROR_TOO_MANY_LINKS = 1142; + // + // MessageId: ERROR_OLD_WIN_VERSION + // + // MessageText: + // + // The specified program requires a newer version of Windows. + // + int ERROR_OLD_WIN_VERSION = 1150; + // + // MessageId: ERROR_APP_WRONG_OS + // + // MessageText: + // + // The specified program is not a Windows or MS-DOS program. + // + int ERROR_APP_WRONG_OS = 1151; + // + // MessageId: ERROR_SINGLE_INSTANCE_APP + // + // MessageText: + // + // Cannot start more than one instance of the specified program. + // + int ERROR_SINGLE_INSTANCE_APP = 1152; + // + // MessageId: ERROR_RMODE_APP + // + // MessageText: + // + // The specified program was written for an earlier version of Windows. + // + int ERROR_RMODE_APP = 1153; + // + // MessageId: ERROR_INVALID_DLL + // + // MessageText: + // + // One of the library files needed to run this application is damaged. + // + int ERROR_INVALID_DLL = 1154; + // + // MessageId: ERROR_NO_ASSOCIATION + // + // MessageText: + // + // No application is associated with the specified file for this operation. + // + int ERROR_NO_ASSOCIATION = 1155; + // + // MessageId: ERROR_DDE_FAIL + // + // MessageText: + // + // An error occurred in sending the command to the application. + // + int ERROR_DDE_FAIL = 1156; + // + // MessageId: ERROR_DLL_NOT_FOUND + // + // MessageText: + // + // One of the library files needed to run this application cannot be found. + // + int ERROR_DLL_NOT_FOUND = 1157; + // + // MessageId: ERROR_NO_MORE_USER_HANDLES + // + // MessageText: + // + // The current process has used all of its system allowance of handles for + // Window Manager objects. + // + int ERROR_NO_MORE_USER_HANDLES = 1158; + // + // MessageId: ERROR_MESSAGE_SYNC_ONLY + // + // MessageText: + // + // The message can be used only with synchronous operations. + // + int ERROR_MESSAGE_SYNC_ONLY = 1159; + // + // MessageId: ERROR_SOURCE_ELEMENT_EMPTY + // + // MessageText: + // + // The indicated source element has no media. + // + int ERROR_SOURCE_ELEMENT_EMPTY = 1160; + // + // MessageId: ERROR_DESTINATION_ELEMENT_FULL + // + // MessageText: + // + // The indicated destination element already contains media. + // + int ERROR_DESTINATION_ELEMENT_FULL = 1161; + // + // MessageId: ERROR_ILLEGAL_ELEMENT_ADDRESS + // + // MessageText: + // + // The indicated element does not exist. + // + int ERROR_ILLEGAL_ELEMENT_ADDRESS = 1162; + // + // MessageId: ERROR_MAGAZINE_NOT_PRESENT + // + // MessageText: + // + // The indicated element is part of a magazine that is not present. + // + int ERROR_MAGAZINE_NOT_PRESENT = 1163; + // + // MessageId: ERROR_DEVICE_REINITIALIZATION_NEEDED + // + // MessageText: + // + // The indicated device requires reinitialization due to hardware errors. + // + int ERROR_DEVICE_REINITIALIZATION_NEEDED = 1164; // dderror + // + // MessageId: ERROR_DEVICE_REQUIRES_CLEANING + // + // MessageText: + // + // The device has indicated that cleaning is required before further + // operations are attempted. + // + int ERROR_DEVICE_REQUIRES_CLEANING = 1165; + // + // MessageId: ERROR_DEVICE_DOOR_OPEN + // + // MessageText: + // + // The device has indicated that its door is open. + // + int ERROR_DEVICE_DOOR_OPEN = 1166; + // + // MessageId: ERROR_DEVICE_NOT_CONNECTED + // + // MessageText: + // + // The device is not connected. + // + int ERROR_DEVICE_NOT_CONNECTED = 1167; + // + // MessageId: ERROR_NOT_FOUND + // + // MessageText: + // + // Element not found. + // + int ERROR_NOT_FOUND = 1168; + // + // MessageId: ERROR_NO_MATCH + // + // MessageText: + // + // There was no match for the specified key in the index. + // + int ERROR_NO_MATCH = 1169; + // + // MessageId: ERROR_SET_NOT_FOUND + // + // MessageText: + // + // The property set specified does not exist on the object. + // + int ERROR_SET_NOT_FOUND = 1170; + // + // MessageId: ERROR_POINT_NOT_FOUND + // + // MessageText: + // + // The point passed to GetMouseMovePoints is not in the buffer. + // + int ERROR_POINT_NOT_FOUND = 1171; + // + // MessageId: ERROR_NO_TRACKING_SERVICE + // + // MessageText: + // + // The tracking (workstation) service is not running. + // + int ERROR_NO_TRACKING_SERVICE = 1172; + // + // MessageId: ERROR_NO_VOLUME_ID + // + // MessageText: + // + // The Volume ID could not be found. + // + int ERROR_NO_VOLUME_ID = 1173; + // + // MessageId: ERROR_UNABLE_TO_REMOVE_REPLACED + // + // MessageText: + // + // Unable to remove the file to be replaced. + // + int ERROR_UNABLE_TO_REMOVE_REPLACED = 1175; + // + // MessageId: ERROR_UNABLE_TO_MOVE_REPLACEMENT + // + // MessageText: + // + // Unable to move the replacement file to the file to be replaced. The file + // to be replaced has retained its original name. + // + int ERROR_UNABLE_TO_MOVE_REPLACEMENT = 1176; + // + // MessageId: ERROR_UNABLE_TO_MOVE_REPLACEMENT_2 + // + // MessageText: + // + // Unable to move the replacement file to the file to be replaced. The file + // to be replaced has been renamed using the backup name. + // + int ERROR_UNABLE_TO_MOVE_REPLACEMENT_2 = 1177; + // + // MessageId: ERROR_JOURNAL_DELETE_IN_PROGRESS + // + // MessageText: + // + // The volume change journal is being deleted. + // + int ERROR_JOURNAL_DELETE_IN_PROGRESS = 1178; + // + // MessageId: ERROR_JOURNAL_NOT_ACTIVE + // + // MessageText: + // + // The volume change journal is not active. + // + int ERROR_JOURNAL_NOT_ACTIVE = 1179; + // + // MessageId: ERROR_POTENTIAL_FILE_FOUND + // + // MessageText: + // + // A file was found, but it may not be the correct file. + // + int ERROR_POTENTIAL_FILE_FOUND = 1180; + // + // MessageId: ERROR_JOURNAL_ENTRY_DELETED + // + // MessageText: + // + // The journal entry has been deleted from the journal. + // + int ERROR_JOURNAL_ENTRY_DELETED = 1181; + // + // MessageId: ERROR_SHUTDOWN_IS_SCHEDULED + // + // MessageText: + // + // A system shutdown has already been scheduled. + // + int ERROR_SHUTDOWN_IS_SCHEDULED = 1190; + // + // MessageId: ERROR_SHUTDOWN_USERS_LOGGED_ON + // + // MessageText: + // + // The system shutdown cannot be initiated because there are other users + // logged on to the computer. + // + int ERROR_SHUTDOWN_USERS_LOGGED_ON = 1191; + // + // MessageId: ERROR_BAD_DEVICE + // + // MessageText: + // + // The specified device name is invalid. + // + int ERROR_BAD_DEVICE = 1200; + // + // MessageId: ERROR_CONNECTION_UNAVAIL + // + // MessageText: + // + // The device is not currently connected but it is a remembered connection. + // + int ERROR_CONNECTION_UNAVAIL = 1201; + // + // MessageId: ERROR_DEVICE_ALREADY_REMEMBERED + // + // MessageText: + // + // The local device name has a remembered connection to another network + // resource. + // + int ERROR_DEVICE_ALREADY_REMEMBERED = 1202; + // + // MessageId: ERROR_NO_NET_OR_BAD_PATH + // + // MessageText: + // + // The network path was either typed incorrectly, does not exist, or the + // network provider is not currently available. Please try retyping the path + // or contact your network administrator. + // + int ERROR_NO_NET_OR_BAD_PATH = 1203; + // + // MessageId: ERROR_BAD_PROVIDER + // + // MessageText: + // + // The specified network provider name is invalid. + // + int ERROR_BAD_PROVIDER = 1204; + // + // MessageId: ERROR_CANNOT_OPEN_PROFILE + // + // MessageText: + // + // Unable to open the network connection profile. + // + int ERROR_CANNOT_OPEN_PROFILE = 1205; + // + // MessageId: ERROR_BAD_PROFILE + // + // MessageText: + // + // The network connection profile is corrupted. + // + int ERROR_BAD_PROFILE = 1206; + // + // MessageId: ERROR_NOT_CONTAINER + // + // MessageText: + // + // Cannot enumerate a noncontainer. + // + int ERROR_NOT_CONTAINER = 1207; + // + // MessageId: ERROR_EXTENDED_ERROR + // + // MessageText: + // + // An extended error has occurred. + // + int ERROR_EXTENDED_ERROR = 1208; + // + // MessageId: ERROR_INVALID_GROUPNAME + // + // MessageText: + // + // The format of the specified group name is invalid. + // + int ERROR_INVALID_GROUPNAME = 1209; + // + // MessageId: ERROR_INVALID_COMPUTERNAME + // + // MessageText: + // + // The format of the specified computer name is invalid. + // + int ERROR_INVALID_COMPUTERNAME = 1210; + // + // MessageId: ERROR_INVALID_EVENTNAME + // + // MessageText: + // + // The format of the specified event name is invalid. + // + int ERROR_INVALID_EVENTNAME = 1211; + // + // MessageId: ERROR_INVALID_DOMAINNAME + // + // MessageText: + // + // The format of the specified domain name is invalid. + // + int ERROR_INVALID_DOMAINNAME = 1212; + // + // MessageId: ERROR_INVALID_SERVICENAME + // + // MessageText: + // + // The format of the specified service name is invalid. + // + int ERROR_INVALID_SERVICENAME = 1213; + // + // MessageId: ERROR_INVALID_NETNAME + // + // MessageText: + // + // The format of the specified network name is invalid. + // + int ERROR_INVALID_NETNAME = 1214; + // + // MessageId: ERROR_INVALID_SHARENAME + // + // MessageText: + // + // The format of the specified share name is invalid. + // + int ERROR_INVALID_SHARENAME = 1215; + // + // MessageId: ERROR_INVALID_PASSWORDNAME + // + // MessageText: + // + // The format of the specified password is invalid. + // + int ERROR_INVALID_PASSWORDNAME = 1216; + // + // MessageId: ERROR_INVALID_MESSAGENAME + // + // MessageText: + // + // The format of the specified message name is invalid. + // + int ERROR_INVALID_MESSAGENAME = 1217; + // + // MessageId: ERROR_INVALID_MESSAGEDEST + // + // MessageText: + // + // The format of the specified message destination is invalid. + // + int ERROR_INVALID_MESSAGEDEST = 1218; + // + // MessageId: ERROR_SESSION_CREDENTIAL_CONFLICT + // + // MessageText: + // + // Multiple connections to a server or shared resource by the same user, + // using more than one user name, are not allowed. Disconnect all previous + // connections to the server or shared resource and try again. + // + int ERROR_SESSION_CREDENTIAL_CONFLICT = 1219; + // + // MessageId: ERROR_REMOTE_SESSION_LIMIT_EXCEEDED + // + // MessageText: + // + // An attempt was made to establish a session to a network server, but there + // are already too many sessions established to that server. + // + int ERROR_REMOTE_SESSION_LIMIT_EXCEEDED = 1220; + // + // MessageId: ERROR_DUP_DOMAINNAME + // + // MessageText: + // + // The workgroup or domain name is already in use by another computer on the + // network. + // + int ERROR_DUP_DOMAINNAME = 1221; + // + // MessageId: ERROR_NO_NETWORK + // + // MessageText: + // + // The network is not present or not started. + // + int ERROR_NO_NETWORK = 1222; + // + // MessageId: ERROR_CANCELLED + // + // MessageText: + // + // The operation was canceled by the user. + // + int ERROR_CANCELLED = 1223; + // + // MessageId: ERROR_USER_MAPPED_FILE + // + // MessageText: + // + // The requested operation cannot be performed on a file with a user-mapped + // section open. + // + int ERROR_USER_MAPPED_FILE = 1224; + // + // MessageId: ERROR_CONNECTION_REFUSED + // + // MessageText: + // + // The remote computer refused the network connection. + // + int ERROR_CONNECTION_REFUSED = 1225; + // + // MessageId: ERROR_GRACEFUL_DISCONNECT + // + // MessageText: + // + // The network connection was gracefully closed. + // + int ERROR_GRACEFUL_DISCONNECT = 1226; + // + // MessageId: ERROR_ADDRESS_ALREADY_ASSOCIATED + // + // MessageText: + // + // The network transport endpoint already has an address associated with it. + // + int ERROR_ADDRESS_ALREADY_ASSOCIATED = 1227; + // + // MessageId: ERROR_ADDRESS_NOT_ASSOCIATED + // + // MessageText: + // + // An address has not yet been associated with the network endpoint. + // + int ERROR_ADDRESS_NOT_ASSOCIATED = 1228; + // + // MessageId: ERROR_CONNECTION_INVALID + // + // MessageText: + // + // An operation was attempted on a nonexistent network connection. + // + int ERROR_CONNECTION_INVALID = 1229; + // + // MessageId: ERROR_CONNECTION_ACTIVE + // + // MessageText: + // + // An invalid operation was attempted on an active network connection. + // + int ERROR_CONNECTION_ACTIVE = 1230; + // + // MessageId: ERROR_NETWORK_UNREACHABLE + // + // MessageText: + // + // The network location cannot be reached. For information about network + // troubleshooting, see Windows Help. + // + int ERROR_NETWORK_UNREACHABLE = 1231; + // + // MessageId: ERROR_HOST_UNREACHABLE + // + // MessageText: + // + // The network location cannot be reached. For information about network + // troubleshooting, see Windows Help. + // + int ERROR_HOST_UNREACHABLE = 1232; + // + // MessageId: ERROR_PROTOCOL_UNREACHABLE + // + // MessageText: + // + // The network location cannot be reached. For information about network + // troubleshooting, see Windows Help. + // + int ERROR_PROTOCOL_UNREACHABLE = 1233; + // + // MessageId: ERROR_PORT_UNREACHABLE + // + // MessageText: + // + // No service is operating at the destination network endpoint on the remote + // system. + // + int ERROR_PORT_UNREACHABLE = 1234; + // + // MessageId: ERROR_REQUEST_ABORTED + // + // MessageText: + // + // The request was aborted. + // + int ERROR_REQUEST_ABORTED = 1235; + // + // MessageId: ERROR_CONNECTION_ABORTED + // + // MessageText: + // + // The network connection was aborted by the local system. + // + int ERROR_CONNECTION_ABORTED = 1236; + // + // MessageId: ERROR_RETRY + // + // MessageText: + // + // The operation could not be completed. A retry should be performed. + // + int ERROR_RETRY = 1237; + // + // MessageId: ERROR_CONNECTION_COUNT_LIMIT + // + // MessageText: + // + // A connection to the server could not be made because the limit on the + // number of concurrent connections for this account has been reached. + // + int ERROR_CONNECTION_COUNT_LIMIT = 1238; + // + // MessageId: ERROR_LOGIN_TIME_RESTRICTION + // + // MessageText: + // + // Attempting to log in during an unauthorized time of day for this account. + // + int ERROR_LOGIN_TIME_RESTRICTION = 1239; + // + // MessageId: ERROR_LOGIN_WKSTA_RESTRICTION + // + // MessageText: + // + // The account is not authorized to log in from this station. + // + int ERROR_LOGIN_WKSTA_RESTRICTION = 1240; + // + // MessageId: ERROR_INCORRECT_ADDRESS + // + // MessageText: + // + // The network address could not be used for the operation requested. + // + int ERROR_INCORRECT_ADDRESS = 1241; + // + // MessageId: ERROR_ALREADY_REGISTERED + // + // MessageText: + // + // The service is already registered. + // + int ERROR_ALREADY_REGISTERED = 1242; + // + // MessageId: ERROR_SERVICE_NOT_FOUND + // + // MessageText: + // + // The specified service does not exist. + // + int ERROR_SERVICE_NOT_FOUND = 1243; + // + // MessageId: ERROR_NOT_AUTHENTICATED + // + // MessageText: + // + // The operation being requested was not performed because the user has not + // been authenticated. + // + int ERROR_NOT_AUTHENTICATED = 1244; + // + // MessageId: ERROR_NOT_LOGGED_ON + // + // MessageText: + // + // The operation being requested was not performed because the user has not + // logged on to the network. + // The specified service does not exist. + // + int ERROR_NOT_LOGGED_ON = 1245; + // + // MessageId: ERROR_CONTINUE + // + // MessageText: + // + // Continue with work in progress. + // + int ERROR_CONTINUE = 1246; // dderror + // + // MessageId: ERROR_ALREADY_INITIALIZED + // + // MessageText: + // + // An attempt was made to perform an initialization operation when + // initialization has already been completed. + // + int ERROR_ALREADY_INITIALIZED = 1247; + // + // MessageId: ERROR_NO_MORE_DEVICES + // + // MessageText: + // + // No more local devices. + // + int ERROR_NO_MORE_DEVICES = 1248; // dderror + // + // MessageId: ERROR_NO_SUCH_SITE + // + // MessageText: + // + // The specified site does not exist. + // + int ERROR_NO_SUCH_SITE = 1249; + // + // MessageId: ERROR_DOMAIN_CONTROLLER_EXISTS + // + // MessageText: + // + // A domain controller with the specified name already exists. + // + int ERROR_DOMAIN_CONTROLLER_EXISTS = 1250; + // + // MessageId: ERROR_ONLY_IF_CONNECTED + // + // MessageText: + // + // This operation is supported only when you are connected to the server. + // + int ERROR_ONLY_IF_CONNECTED = 1251; + // + // MessageId: ERROR_OVERRIDE_NOCHANGES + // + // MessageText: + // + // The group policy framework should call the extension even if there are no + // changes. + // + int ERROR_OVERRIDE_NOCHANGES = 1252; + // + // MessageId: ERROR_BAD_USER_PROFILE + // + // MessageText: + // + // The specified user does not have a valid profile. + // + int ERROR_BAD_USER_PROFILE = 1253; + // + // MessageId: ERROR_NOT_SUPPORTED_ON_SBS + // + // MessageText: + // + // This operation is not supported on a computer running Windows Server=2003 + // for Small Business Server + // + int ERROR_NOT_SUPPORTED_ON_SBS = 1254; + // + // MessageId: ERROR_SERVER_SHUTDOWN_IN_PROGRESS + // + // MessageText: + // + // The server machine is shutting down. + // + int ERROR_SERVER_SHUTDOWN_IN_PROGRESS = 1255; + // + // MessageId: ERROR_HOST_DOWN + // + // MessageText: + // + // The remote system is not available. For information about network + // troubleshooting, see Windows Help. + // + int ERROR_HOST_DOWN = 1256; + // + // MessageId: ERROR_NON_ACCOUNT_SID + // + // MessageText: + // + // The security identifier provided is not from an account domain. + // + int ERROR_NON_ACCOUNT_SID = 1257; + // + // MessageId: ERROR_NON_DOMAIN_SID + // + // MessageText: + // + // The security identifier provided does not have a domain component. + // + int ERROR_NON_DOMAIN_SID = 1258; + // + // MessageId: ERROR_APPHELP_BLOCK + // + // MessageText: + // + // AppHelp dialog canceled thus preventing the application from starting. + // + int ERROR_APPHELP_BLOCK = 1259; + // + // MessageId: ERROR_ACCESS_DISABLED_BY_POLICY + // + // MessageText: + // + // This program is blocked by group policy. For more information, contact + // your system administrator. + // + int ERROR_ACCESS_DISABLED_BY_POLICY = 1260; + // + // MessageId: ERROR_REG_NAT_CONSUMPTION + // + // MessageText: + // + // A program attempt to use an invalid register value. Normally caused by an + // uninitialized register. This error is Itanium specific. + // + int ERROR_REG_NAT_CONSUMPTION = 1261; + // + // MessageId: ERROR_CSCSHARE_OFFLINE + // + // MessageText: + // + // The share is currently offline or does not exist. + // + int ERROR_CSCSHARE_OFFLINE = 1262; + // + // MessageId: ERROR_PKINIT_FAILURE + // + // MessageText: + // + // The kerberos protocol encountered an error while validating the KDC + // certificate during smartcard logon. There is more information in the + // system event log. + // + int ERROR_PKINIT_FAILURE = 1263; + // + // MessageId: ERROR_SMARTCARD_SUBSYSTEM_FAILURE + // + // MessageText: + // + // The kerberos protocol encountered an error while attempting to utilize + // the smartcard subsystem. + // + int ERROR_SMARTCARD_SUBSYSTEM_FAILURE = 1264; + // + // MessageId: ERROR_DOWNGRADE_DETECTED + // + // MessageText: + // + // The system detected a possible attempt to compromise security. Please + // ensure that you can contact the server that authenticated you. + // + int ERROR_DOWNGRADE_DETECTED = 1265; + // + // Do not use ID's=1266 -=1270 as the symbolicNames have been moved to + // SEC_E_* + // + // + // MessageId: ERROR_MACHINE_LOCKED + // + // MessageText: + // + // The machine is locked and cannot be shut down without the force option. + // + int ERROR_MACHINE_LOCKED = 1271; + // + // MessageId: ERROR_CALLBACK_SUPPLIED_INVALID_DATA + // + // MessageText: + // + // An application-defined callback gave invalid data when called. + // + int ERROR_CALLBACK_SUPPLIED_INVALID_DATA = 1273; + // + // MessageId: ERROR_SYNC_FOREGROUND_REFRESH_REQUIRED + // + // MessageText: + // + // The group policy framework should call the extension in the synchronous + // foreground policy refresh. + // + int ERROR_SYNC_FOREGROUND_REFRESH_REQUIRED = 1274; + // + // MessageId: ERROR_DRIVER_BLOCKED + // + // MessageText: + // + // This driver has been blocked from loading + // + int ERROR_DRIVER_BLOCKED = 1275; + // + // MessageId: ERROR_INVALID_IMPORT_OF_NON_DLL + // + // MessageText: + // + // A dynamic link library (DL; referenced a module that was neither a DLL + // nor the process's executable image. + // + int ERROR_INVALID_IMPORT_OF_NON_DLL = 1276; + // + // MessageId: ERROR_ACCESS_DISABLED_WEBBLADE + // + // MessageText: + // + // Windows cannot open this program since it has been disabled. + // + int ERROR_ACCESS_DISABLED_WEBBLADE = 1277; + // + // MessageId: ERROR_ACCESS_DISABLED_WEBBLADE_TAMPER + // + // MessageText: + // + // Windows cannot open this program because the license enforcement system + // has been tampered with or become corrupted. + // + int ERROR_ACCESS_DISABLED_WEBBLADE_TAMPER = 1278; + // + // MessageId: ERROR_RECOVERY_FAILURE + // + // MessageText: + // + // A transaction recover failed. + // + int ERROR_RECOVERY_FAILURE = 1279; + // + // MessageId: ERROR_ALREADY_FIBER + // + // MessageText: + // + // The current thread has already been converted to a fiber. + // + int ERROR_ALREADY_FIBER = 1280; + // + // MessageId: ERROR_ALREADY_THREAD + // + // MessageText: + // + // The current thread has already been converted from a fiber. + // + int ERROR_ALREADY_THREAD = 1281; + // + // MessageId: ERROR_STACK_BUFFER_OVERRUN + // + // MessageText: + // + // The system detected an overrun of a stack-based buffer in this + // application. This overrun could potentially allow a malicious user to + // gain control of this application. + // + int ERROR_STACK_BUFFER_OVERRUN = 1282; + // + // MessageId: ERROR_PARAMETER_QUOTA_EXCEEDED + // + // MessageText: + // + // Data present in one of the parameters is more than the function can + // operate on. + // + int ERROR_PARAMETER_QUOTA_EXCEEDED = 1283; + // + // MessageId: ERROR_DEBUGGER_INACTIVE + // + // MessageText: + // + // An attempt to do an operation on a debug object failed because the object + // is in the process of being deleted. + // + int ERROR_DEBUGGER_INACTIVE = 1284; + // + // MessageId: ERROR_DELAY_LOAD_FAILED + // + // MessageText: + // + // An attempt to delay-load a .dll or get a function address in a + // delay-loaded .dll failed. + // + int ERROR_DELAY_LOAD_FAILED = 1285; + // + // MessageId: ERROR_VDM_DISALLOWED + // + // MessageText: + // + // %1 is a=16-bit application. You do not have permissions to execute=16-bit + // applications. Check your permissions with your system administrator. + // + int ERROR_VDM_DISALLOWED = 1286; + // + // MessageId: ERROR_UNIDENTIFIED_ERROR + // + // MessageText: + // + // Insufficient information exists to identify the cause of failure. + // + int ERROR_UNIDENTIFIED_ERROR = 1287; + // + // MessageId: ERROR_INVALID_CRUNTIME_PARAMETER + // + // MessageText: + // + // The parameter passed to a C runtime function is incorrect. + // + int ERROR_INVALID_CRUNTIME_PARAMETER = 1288; + // + // MessageId: ERROR_BEYOND_VDL + // + // MessageText: + // + // The operation occurred beyond the valid data length of the file. + // + int ERROR_BEYOND_VDL = 1289; + // + // MessageId: ERROR_INCOMPATIBLE_SERVICE_SID_TYPE + // + // MessageText: + // + // The service start failed since one or more services in the same process + // have an incompatible service SID type setting. A service with restricted + // service SID type can only coexist in the same process with other services + // with a restricted SID type. If the service SID type for this service was + // just configured, the hosting process must be restarted in order to start + // this service. + // + int ERROR_INCOMPATIBLE_SERVICE_SID_TYPE = 1290; + // + // MessageId: ERROR_DRIVER_PROCESS_TERMINATED + // + // MessageText: + // + // The process hosting the driver for this device has been terminated. + // + int ERROR_DRIVER_PROCESS_TERMINATED = 1291; + // + // MessageId: ERROR_IMPLEMENTATION_LIMIT + // + // MessageText: + // + // An operation attempted to exceed an implementation-defined limit. + // + int ERROR_IMPLEMENTATION_LIMIT = 1292; + // + // MessageId: ERROR_PROCESS_IS_PROTECTED + // + // MessageText: + // + // Either the target process, or the target thread's containing process, is + // a protected process. + // + int ERROR_PROCESS_IS_PROTECTED = 1293; + // + // MessageId: ERROR_SERVICE_NOTIFY_CLIENT_LAGGING + // + // MessageText: + // + // The service notification client is lagging too far behind the current + // state of services in the machine. + // + int ERROR_SERVICE_NOTIFY_CLIENT_LAGGING = 1294; + // + // MessageId: ERROR_DISK_QUOTA_EXCEEDED + // + // MessageText: + // + // The requested file operation failed because the storage quota was + // exceeded. + // To free up disk space, move files to a different location or delete + // unnecessary files. For more information, contact your system + // administrator. + // + int ERROR_DISK_QUOTA_EXCEEDED = 1295; + // + // MessageId: ERROR_CONTENT_BLOCKED + // + // MessageText: + // + // The requested file operation failed because the storage policy blocks + // that type of file. For more information, contact your system + // administrator. + // + int ERROR_CONTENT_BLOCKED = 1296; + // + // MessageId: ERROR_INCOMPATIBLE_SERVICE_PRIVILEGE + // + // MessageText: + // + // A privilege that the service requires to function properly does not exist + // in the service account configuration. + // You may use the Services Microsoft Management Console (MMC) snap-in + // (services.msc) and the Local Security Settings MMC snap-in (secpol.msc) + // to view the service configuration and the account configuration. + // + int ERROR_INCOMPATIBLE_SERVICE_PRIVILEGE = 1297; + // ///////////////////////////////////////////////// + // =// + // =SECURITY Error codes=// + // =// + // =1299 to=1399=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_INVALID_LABEL + // + // MessageText: + // + // Indicates a particular Security ID may not be assigned as the label of an + // object. + // + int ERROR_INVALID_LABEL = 1299; + // + // MessageId: ERROR_NOT_ALL_ASSIGNED + // + // MessageText: + // + // Not all privileges or groups referenced are assigned to the caller. + // + int ERROR_NOT_ALL_ASSIGNED = 1300; + // + // MessageId: ERROR_SOME_NOT_MAPPED + // + // MessageText: + // + // Some mapping between account names and security IDs was not done. + // + int ERROR_SOME_NOT_MAPPED = 1301; + // + // MessageId: ERROR_NO_QUOTAS_FOR_ACCOUNT + // + // MessageText: + // + // No system quota limits are specifically set for this account. + // + int ERROR_NO_QUOTAS_FOR_ACCOUNT = 1302; + // + // MessageId: ERROR_LOCAL_USER_SESSION_KEY + // + // MessageText: + // + // No encryption key is available. A well-known encryption key was returned. + // + int ERROR_LOCAL_USER_SESSION_KEY = 1303; + // + // MessageId: ERROR_NULL_LM_PASSWORD + // + // MessageText: + // + // The password is too complex to be converted to a LAN Manager password. + // The LAN Manager password returned is a NULL string. + // + int ERROR_NULL_LM_PASSWORD = 1304; + // + // MessageId: ERROR_UNKNOWN_REVISION + // + // MessageText: + // + // The revision level is unknown. + // + int ERROR_UNKNOWN_REVISION = 1305; + // + // MessageId: ERROR_REVISION_MISMATCH + // + // MessageText: + // + // Indicates two revision levels are incompatible. + // + int ERROR_REVISION_MISMATCH = 1306; + // + // MessageId: ERROR_INVALID_OWNER + // + // MessageText: + // + // This security ID may not be assigned as the owner of this object. + // + int ERROR_INVALID_OWNER = 1307; + // + // MessageId: ERROR_INVALID_PRIMARY_GROUP + // + // MessageText: + // + // This security ID may not be assigned as the primary group of an object. + // + int ERROR_INVALID_PRIMARY_GROUP = 1308; + // + // MessageId: ERROR_NO_IMPERSONATION_TOKEN + // + // MessageText: + // + // An attempt has been made to operate on an impersonation token by a thread + // that is not currently impersonating a client. + // + int ERROR_NO_IMPERSONATION_TOKEN = 1309; + // + // MessageId: ERROR_CANT_DISABLE_MANDATORY + // + // MessageText: + // + // The group may not be disabled. + // + int ERROR_CANT_DISABLE_MANDATORY = 1310; + // + // MessageId: ERROR_NO_LOGON_SERVERS + // + // MessageText: + // + // There are currently no logon servers available to service the logon + // request. + // + int ERROR_NO_LOGON_SERVERS = 1311; + // + // MessageId: ERROR_NO_SUCH_LOGON_SESSION + // + // MessageText: + // + // A specified logon session does not exist. It may already have been + // terminated. + // + int ERROR_NO_SUCH_LOGON_SESSION = 1312; + // + // MessageId: ERROR_NO_SUCH_PRIVILEGE + // + // MessageText: + // + // A specified privilege does not exist. + // + int ERROR_NO_SUCH_PRIVILEGE = 1313; + // + // MessageId: ERROR_PRIVILEGE_NOT_HELD + // + // MessageText: + // + // A required privilege is not held by the client. + // + int ERROR_PRIVILEGE_NOT_HELD = 1314; + // + // MessageId: ERROR_INVALID_ACCOUNT_NAME + // + // MessageText: + // + // The name provided is not a properly formed account name. + // + int ERROR_INVALID_ACCOUNT_NAME = 1315; + // + // MessageId: ERROR_USER_EXISTS + // + // MessageText: + // + // The specified account already exists. + // + int ERROR_USER_EXISTS = 1316; + // + // MessageId: ERROR_NO_SUCH_USER + // + // MessageText: + // + // The specified account does not exist. + // + int ERROR_NO_SUCH_USER = 1317; + // + // MessageId: ERROR_GROUP_EXISTS + // + // MessageText: + // + // The specified group already exists. + // + int ERROR_GROUP_EXISTS = 1318; + // + // MessageId: ERROR_NO_SUCH_GROUP + // + // MessageText: + // + // The specified group does not exist. + // + int ERROR_NO_SUCH_GROUP = 1319; + // + // MessageId: ERROR_MEMBER_IN_GROUP + // + // MessageText: + // + // Either the specified user account is already a member of the specified + // group, or the specified group cannot be deleted because it contains a + // member. + // + int ERROR_MEMBER_IN_GROUP = 1320; + // + // MessageId: ERROR_MEMBER_NOT_IN_GROUP + // + // MessageText: + // + // The specified user account is not a member of the specified group + // account. + // + int ERROR_MEMBER_NOT_IN_GROUP = 1321; + // + // MessageId: ERROR_LAST_ADMIN + // + // MessageText: + // + // The last remaining administration account cannot be disabled or deleted. + // + int ERROR_LAST_ADMIN = 1322; + // + // MessageId: ERROR_WRONG_PASSWORD + // + // MessageText: + // + // Unable to update the password. The value provided as the current password + // is incorrect. + // + int ERROR_WRONG_PASSWORD = 1323; + // + // MessageId: ERROR_ILL_FORMED_PASSWORD + // + // MessageText: + // + // Unable to update the password. The value provided for the new password + // contains values that are not allowed in passwords. + // + int ERROR_ILL_FORMED_PASSWORD = 1324; + // + // MessageId: ERROR_PASSWORD_RESTRICTION + // + // MessageText: + // + // Unable to update the password. The value provided for the new password + // does not meet the length, complexity, or history requirements of the + // domain. + // + int ERROR_PASSWORD_RESTRICTION = 1325; + // + // MessageId: ERROR_LOGON_FAILURE + // + // MessageText: + // + // Logon failure: unknown user name or bad password. + // + int ERROR_LOGON_FAILURE = 1326; + // + // MessageId: ERROR_ACCOUNT_RESTRICTION + // + // MessageText: + // + // Logon failure: user account restriction. Possible reasons are blank + // passwords not allowed, logon hour restrictions, or a policy restriction + // has been enforced. + // + int ERROR_ACCOUNT_RESTRICTION = 1327; + // + // MessageId: ERROR_INVALID_LOGON_HOURS + // + // MessageText: + // + // Logon failure: account logon time restriction violation. + // + int ERROR_INVALID_LOGON_HOURS = 1328; + // + // MessageId: ERROR_INVALID_WORKSTATION + // + // MessageText: + // + // Logon failure: user not allowed to log on to this computer. + // + int ERROR_INVALID_WORKSTATION = 1329; + // + // MessageId: ERROR_PASSWORD_EXPIRED + // + // MessageText: + // + // Logon failure: the specified account password has expired. + // + int ERROR_PASSWORD_EXPIRED = 1330; + // + // MessageId: ERROR_ACCOUNT_DISABLED + // + // MessageText: + // + // Logon failure: account currently disabled. + // + int ERROR_ACCOUNT_DISABLED = 1331; + // + // MessageId: ERROR_NONE_MAPPED + // + // MessageText: + // + // No mapping between account names and security IDs was done. + // + int ERROR_NONE_MAPPED = 1332; + // + // MessageId: ERROR_TOO_MANY_LUIDS_REQUESTED + // + // MessageText: + // + // Too many local user identifiers (LUIDs) were requested at one time. + // + int ERROR_TOO_MANY_LUIDS_REQUESTED = 1333; + // + // MessageId: ERROR_LUIDS_EXHAUSTED + // + // MessageText: + // + // No more local user identifiers (LUIDs) are available. + // + int ERROR_LUIDS_EXHAUSTED = 1334; + // + // MessageId: ERROR_INVALID_SUB_AUTHORITY + // + // MessageText: + // + // The subauthority part of a security ID is invalid for this particular + // use. + // + int ERROR_INVALID_SUB_AUTHORITY = 1335; + // + // MessageId: ERROR_INVALID_ACL + // + // MessageText: + // + // The access control list (AC; structure is invalid. + // + int ERROR_INVALID_ACL = 1336; + // + // MessageId: ERROR_INVALID_SID + // + // MessageText: + // + // The security ID structure is invalid. + // + int ERROR_INVALID_SID = 1337; + // + // MessageId: ERROR_INVALID_SECURITY_DESCR + // + // MessageText: + // + // The security descriptor structure is invalid. + // + int ERROR_INVALID_SECURITY_DESCR = 1338; + // + // MessageId: ERROR_BAD_INHERITANCE_ACL + // + // MessageText: + // + // The inherited access control list (AC; or access control entry (ACE) + // could not be built. + // + int ERROR_BAD_INHERITANCE_ACL = 1340; + // + // MessageId: ERROR_SERVER_DISABLED + // + // MessageText: + // + // The server is currently disabled. + // + int ERROR_SERVER_DISABLED = 1341; + // + // MessageId: ERROR_SERVER_NOT_DISABLED + // + // MessageText: + // + // The server is currently enabled. + // + int ERROR_SERVER_NOT_DISABLED = 1342; + // + // MessageId: ERROR_INVALID_ID_AUTHORITY + // + // MessageText: + // + // The value provided was an invalid value for an identifier authority. + // + int ERROR_INVALID_ID_AUTHORITY = 1343; + // + // MessageId: ERROR_ALLOTTED_SPACE_EXCEEDED + // + // MessageText: + // + // No more memory is available for security information updates. + // + int ERROR_ALLOTTED_SPACE_EXCEEDED = 1344; + // + // MessageId: ERROR_INVALID_GROUP_ATTRIBUTES + // + // MessageText: + // + // The specified attributes are invalid, or incompatible with the attributes + // for the group as a whole. + // + int ERROR_INVALID_GROUP_ATTRIBUTES = 1345; + // + // MessageId: ERROR_BAD_IMPERSONATION_LEVEL + // + // MessageText: + // + // Either a required impersonation level was not provided, or the provided + // impersonation level is invalid. + // + int ERROR_BAD_IMPERSONATION_LEVEL = 1346; + // + // MessageId: ERROR_CANT_OPEN_ANONYMOUS + // + // MessageText: + // + // Cannot open an anonymous level security token. + // + int ERROR_CANT_OPEN_ANONYMOUS = 1347; + // + // MessageId: ERROR_BAD_VALIDATION_CLASS + // + // MessageText: + // + // The validation information class requested was invalid. + // + int ERROR_BAD_VALIDATION_CLASS = 1348; + // + // MessageId: ERROR_BAD_TOKEN_TYPE + // + // MessageText: + // + // The type of the token is inappropriate for its attempted use. + // + int ERROR_BAD_TOKEN_TYPE = 1349; + // + // MessageId: ERROR_NO_SECURITY_ON_OBJECT + // + // MessageText: + // + // Unable to perform a security operation on an object that has no + // associated security. + // + int ERROR_NO_SECURITY_ON_OBJECT = 1350; + // + // MessageId: ERROR_CANT_ACCESS_DOMAIN_INFO + // + // MessageText: + // + // Configuration information could not be read from the domain controller, + // either because the machine is unavailable, or access has been denied. + // + int ERROR_CANT_ACCESS_DOMAIN_INFO = 1351; + // + // MessageId: ERROR_INVALID_SERVER_STATE + // + // MessageText: + // + // The security account manager (SAM) or local security authority (LSA) + // server was in the wrong state to perform the security operation. + // + int ERROR_INVALID_SERVER_STATE = 1352; + // + // MessageId: ERROR_INVALID_DOMAIN_STATE + // + // MessageText: + // + // The domain was in the wrong state to perform the security operation. + // + int ERROR_INVALID_DOMAIN_STATE = 1353; + // + // MessageId: ERROR_INVALID_DOMAIN_ROLE + // + // MessageText: + // + // This operation is only allowed for the Primary Domain Controller of the + // domain. + // + int ERROR_INVALID_DOMAIN_ROLE = 1354; + // + // MessageId: ERROR_NO_SUCH_DOMAIN + // + // MessageText: + // + // The specified domain either does not exist or could not be contacted. + // + int ERROR_NO_SUCH_DOMAIN = 1355; + // + // MessageId: ERROR_DOMAIN_EXISTS + // + // MessageText: + // + // The specified domain already exists. + // + int ERROR_DOMAIN_EXISTS = 1356; + // + // MessageId: ERROR_DOMAIN_LIMIT_EXCEEDED + // + // MessageText: + // + // An attempt was made to exceed the limit on the number of domains per + // server. + // + int ERROR_DOMAIN_LIMIT_EXCEEDED = 1357; + // + // MessageId: ERROR_INTERNAL_DB_CORRUPTION + // + // MessageText: + // + // Unable to complete the requested operation because of either a + // catastrophic media failure or a data structure corruption on the disk. + // + int ERROR_INTERNAL_DB_CORRUPTION = 1358; + // + // MessageId: ERROR_INTERNAL_ERROR + // + // MessageText: + // + // An internal error occurred. + // + int ERROR_INTERNAL_ERROR = 1359; + // + // MessageId: ERROR_GENERIC_NOT_MAPPED + // + // MessageText: + // + // Generic access types were contained in an access mask which should + // already be mapped to nongeneric types. + // + int ERROR_GENERIC_NOT_MAPPED = 1360; + // + // MessageId: ERROR_BAD_DESCRIPTOR_FORMAT + // + // MessageText: + // + // A security descriptor is not in the right format (absolute or + // self-relative). + // + int ERROR_BAD_DESCRIPTOR_FORMAT = 1361; + // + // MessageId: ERROR_NOT_LOGON_PROCESS + // + // MessageText: + // + // The requested action is restricted for use by logon processes only. The + // calling process has not registered as a logon process. + // + int ERROR_NOT_LOGON_PROCESS = 1362; + // + // MessageId: ERROR_LOGON_SESSION_EXISTS + // + // MessageText: + // + // Cannot start a new logon session with an ID that is already in use. + // + int ERROR_LOGON_SESSION_EXISTS = 1363; + // + // MessageId: ERROR_NO_SUCH_PACKAGE + // + // MessageText: + // + // A specified authentication package is unknown. + // + int ERROR_NO_SUCH_PACKAGE = 1364; + // + // MessageId: ERROR_BAD_LOGON_SESSION_STATE + // + // MessageText: + // + // The logon session is not in a state that is consistent with the requested + // operation. + // + int ERROR_BAD_LOGON_SESSION_STATE = 1365; + // + // MessageId: ERROR_LOGON_SESSION_COLLISION + // + // MessageText: + // + // The logon session ID is already in use. + // + int ERROR_LOGON_SESSION_COLLISION = 1366; + // + // MessageId: ERROR_INVALID_LOGON_TYPE + // + // MessageText: + // + // A logon request contained an invalid logon type value. + // + int ERROR_INVALID_LOGON_TYPE = 1367; + // + // MessageId: ERROR_CANNOT_IMPERSONATE + // + // MessageText: + // + // Unable to impersonate using a named pipe until data has been read from + // that pipe. + // + int ERROR_CANNOT_IMPERSONATE = 1368; + // + // MessageId: ERROR_RXACT_INVALID_STATE + // + // MessageText: + // + // The transaction state of a registry subtree is incompatible with the + // requested operation. + // + int ERROR_RXACT_INVALID_STATE = 1369; + // + // MessageId: ERROR_RXACT_COMMIT_FAILURE + // + // MessageText: + // + // An internal security database corruption has been encountered. + // + int ERROR_RXACT_COMMIT_FAILURE = 1370; + // + // MessageId: ERROR_SPECIAL_ACCOUNT + // + // MessageText: + // + // Cannot perform this operation on built-in accounts. + // + int ERROR_SPECIAL_ACCOUNT = 1371; + // + // MessageId: ERROR_SPECIAL_GROUP + // + // MessageText: + // + // Cannot perform this operation on this built-in special group. + // + int ERROR_SPECIAL_GROUP = 1372; + // + // MessageId: ERROR_SPECIAL_USER + // + // MessageText: + // + // Cannot perform this operation on this built-in special user. + // + int ERROR_SPECIAL_USER = 1373; + // + // MessageId: ERROR_MEMBERS_PRIMARY_GROUP + // + // MessageText: + // + // The user cannot be removed from a group because the group is currently + // the user's primary group. + // + int ERROR_MEMBERS_PRIMARY_GROUP = 1374; + // + // MessageId: ERROR_TOKEN_ALREADY_IN_USE + // + // MessageText: + // + // The token is already in use as a primary token. + // + int ERROR_TOKEN_ALREADY_IN_USE = 1375; + // + // MessageId: ERROR_NO_SUCH_ALIAS + // + // MessageText: + // + // The specified local group does not exist. + // + int ERROR_NO_SUCH_ALIAS = 1376; + // + // MessageId: ERROR_MEMBER_NOT_IN_ALIAS + // + // MessageText: + // + // The specified account name is not a member of the group. + // + int ERROR_MEMBER_NOT_IN_ALIAS = 1377; + // + // MessageId: ERROR_MEMBER_IN_ALIAS + // + // MessageText: + // + // The specified account name is already a member of the group. + // + int ERROR_MEMBER_IN_ALIAS = 1378; + // + // MessageId: ERROR_ALIAS_EXISTS + // + // MessageText: + // + // The specified local group already exists. + // + int ERROR_ALIAS_EXISTS = 1379; + // + // MessageId: ERROR_LOGON_NOT_GRANTED + // + // MessageText: + // + // Logon failure: the user has not been granted the requested logon type at + // this computer. + // + int ERROR_LOGON_NOT_GRANTED = 1380; + // + // MessageId: ERROR_TOO_MANY_SECRETS + // + // MessageText: + // + // The maximum number of secrets that may be stored in a single system has + // been exceeded. + // + int ERROR_TOO_MANY_SECRETS = 1381; + // + // MessageId: ERROR_SECRET_TOO_LONG + // + // MessageText: + // + // The length of a secret exceeds the maximum length allowed. + // + int ERROR_SECRET_TOO_LONG = 1382; + // + // MessageId: ERROR_INTERNAL_DB_ERROR + // + // MessageText: + // + // The local security authority database contains an internal inconsistency. + // + int ERROR_INTERNAL_DB_ERROR = 1383; + // + // MessageId: ERROR_TOO_MANY_CONTEXT_IDS + // + // MessageText: + // + // During a logon attempt, the user's security context accumulated too many + // security IDs. + // + int ERROR_TOO_MANY_CONTEXT_IDS = 1384; + // + // MessageId: ERROR_LOGON_TYPE_NOT_GRANTED + // + // MessageText: + // + // Logon failure: the user has not been granted the requested logon type at + // this computer. + // + int ERROR_LOGON_TYPE_NOT_GRANTED = 1385; + // + // MessageId: ERROR_NT_CROSS_ENCRYPTION_REQUIRED + // + // MessageText: + // + // A cross-encrypted password is necessary to change a user password. + // + int ERROR_NT_CROSS_ENCRYPTION_REQUIRED = 1386; + // + // MessageId: ERROR_NO_SUCH_MEMBER + // + // MessageText: + // + // A member could not be added to or removed from the local group because + // the member does not exist. + // + int ERROR_NO_SUCH_MEMBER = 1387; + // + // MessageId: ERROR_INVALID_MEMBER + // + // MessageText: + // + // A new member could not be added to a local group because the member has + // the wrong account type. + // + int ERROR_INVALID_MEMBER = 1388; + // + // MessageId: ERROR_TOO_MANY_SIDS + // + // MessageText: + // + // Too many security IDs have been specified. + // + int ERROR_TOO_MANY_SIDS = 1389; + // + // MessageId: ERROR_LM_CROSS_ENCRYPTION_REQUIRED + // + // MessageText: + // + // A cross-encrypted password is necessary to change this user password. + // + int ERROR_LM_CROSS_ENCRYPTION_REQUIRED = 1390; + // + // MessageId: ERROR_NO_INHERITANCE + // + // MessageText: + // + // Indicates an ACL contains no inheritable components. + // + int ERROR_NO_INHERITANCE = 1391; + // + // MessageId: ERROR_FILE_CORRUPT + // + // MessageText: + // + // The file or directory is corrupted and unreadable. + // + int ERROR_FILE_CORRUPT = 1392; + // + // MessageId: ERROR_DISK_CORRUPT + // + // MessageText: + // + // The disk structure is corrupted and unreadable. + // + int ERROR_DISK_CORRUPT = 1393; + // + // MessageId: ERROR_NO_USER_SESSION_KEY + // + // MessageText: + // + // There is no user session key for the specified logon session. + // + int ERROR_NO_USER_SESSION_KEY = 1394; + // + // MessageId: ERROR_LICENSE_QUOTA_EXCEEDED + // + // MessageText: + // + // The service being accessed is licensed for a particular number of + // connections. + // No more connections can be made to the service at this time because there + // are already as many connections as the service can accept. + // + int ERROR_LICENSE_QUOTA_EXCEEDED = 1395; + // + // MessageId: ERROR_WRONG_TARGET_NAME + // + // MessageText: + // + // Logon Failure: The target account name is incorrect. + // + int ERROR_WRONG_TARGET_NAME = 1396; + // + // MessageId: ERROR_MUTUAL_AUTH_FAILED + // + // MessageText: + // + // Mutual Authentication failed. The server's password is out of date at the + // domain controller. + // + int ERROR_MUTUAL_AUTH_FAILED = 1397; + // + // MessageId: ERROR_TIME_SKEW + // + // MessageText: + // + // There is a time and/or date difference between the client and server. + // + int ERROR_TIME_SKEW = 1398; + // + // MessageId: ERROR_CURRENT_DOMAIN_NOT_ALLOWED + // + // MessageText: + // + // This operation cannot be performed on the current domain. + // + int ERROR_CURRENT_DOMAIN_NOT_ALLOWED = 1399; + // ///////////////////////////////////////////////// + // =// + // =WinUser Error codes=// + // =// + // =1400 to=1499=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_INVALID_WINDOW_HANDLE + // + // MessageText: + // + // Invalid window handle. + // + int ERROR_INVALID_WINDOW_HANDLE = 1400; + // + // MessageId: ERROR_INVALID_MENU_HANDLE + // + // MessageText: + // + // Invalid menu handle. + // + int ERROR_INVALID_MENU_HANDLE = 1401; + // + // MessageId: ERROR_INVALID_CURSOR_HANDLE + // + // MessageText: + // + // Invalid cursor handle. + // + int ERROR_INVALID_CURSOR_HANDLE = 1402; + // + // MessageId: ERROR_INVALID_ACCEL_HANDLE + // + // MessageText: + // + // Invalid accelerator table handle. + // + int ERROR_INVALID_ACCEL_HANDLE = 1403; + // + // MessageId: ERROR_INVALID_HOOK_HANDLE + // + // MessageText: + // + // Invalid hook handle. + // + int ERROR_INVALID_HOOK_HANDLE = 1404; + // + // MessageId: ERROR_INVALID_DWP_HANDLE + // + // MessageText: + // + // Invalid handle to a multiple-window position structure. + // + int ERROR_INVALID_DWP_HANDLE = 1405; + // + // MessageId: ERROR_TLW_WITH_WSCHILD + // + // MessageText: + // + // Cannot create a top-level child window. + // + int ERROR_TLW_WITH_WSCHILD = 1406; + // + // MessageId: ERROR_CANNOT_FIND_WND_CLASS + // + // MessageText: + // + // Cannot find window class. + // + int ERROR_CANNOT_FIND_WND_CLASS = 1407; + // + // MessageId: ERROR_WINDOW_OF_OTHER_THREAD + // + // MessageText: + // + // Invalid window; it belongs to other thread. + // + int ERROR_WINDOW_OF_OTHER_THREAD = 1408; + // + // MessageId: ERROR_HOTKEY_ALREADY_REGISTERED + // + // MessageText: + // + // Hot key is already registered. + // + int ERROR_HOTKEY_ALREADY_REGISTERED = 1409; + // + // MessageId: ERROR_CLASS_ALREADY_EXISTS + // + // MessageText: + // + // Class already exists. + // + int ERROR_CLASS_ALREADY_EXISTS = 1410; + // + // MessageId: ERROR_CLASS_DOES_NOT_EXIST + // + // MessageText: + // + // Class does not exist. + // + int ERROR_CLASS_DOES_NOT_EXIST = 1411; + // + // MessageId: ERROR_CLASS_HAS_WINDOWS + // + // MessageText: + // + // Class still has open windows. + // + int ERROR_CLASS_HAS_WINDOWS = 1412; + // + // MessageId: ERROR_INVALID_INDEX + // + // MessageText: + // + // Invalid index. + // + int ERROR_INVALID_INDEX = 1413; + // + // MessageId: ERROR_INVALID_ICON_HANDLE + // + // MessageText: + // + // Invalid icon handle. + // + int ERROR_INVALID_ICON_HANDLE = 1414; + // + // MessageId: ERROR_PRIVATE_DIALOG_INDEX + // + // MessageText: + // + // Using private DIALOG window words. + // + int ERROR_PRIVATE_DIALOG_INDEX = 1415; + // + // MessageId: ERROR_LISTBOX_ID_NOT_FOUND + // + // MessageText: + // + // The list box identifier was not found. + // + int ERROR_LISTBOX_ID_NOT_FOUND = 1416; + // + // MessageId: ERROR_NO_WILDCARD_CHARACTERS + // + // MessageText: + // + // No wildcards were found. + // + int ERROR_NO_WILDCARD_CHARACTERS = 1417; + // + // MessageId: ERROR_CLIPBOARD_NOT_OPEN + // + // MessageText: + // + // Thread does not have a clipboard open. + // + int ERROR_CLIPBOARD_NOT_OPEN = 1418; + // + // MessageId: ERROR_HOTKEY_NOT_REGISTERED + // + // MessageText: + // + // Hot key is not registered. + // + int ERROR_HOTKEY_NOT_REGISTERED = 1419; + // + // MessageId: ERROR_WINDOW_NOT_DIALOG + // + // MessageText: + // + // The window is not a valid dialog window. + // + int ERROR_WINDOW_NOT_DIALOG = 1420; + // + // MessageId: ERROR_CONTROL_ID_NOT_FOUND + // + // MessageText: + // + // Control ID not found. + // + int ERROR_CONTROL_ID_NOT_FOUND = 1421; + // + // MessageId: ERROR_INVALID_COMBOBOX_MESSAGE + // + // MessageText: + // + // Invalid message for a combo box because it does not have an edit control. + // + int ERROR_INVALID_COMBOBOX_MESSAGE = 1422; + // + // MessageId: ERROR_WINDOW_NOT_COMBOBOX + // + // MessageText: + // + // The window is not a combo box. + // + int ERROR_WINDOW_NOT_COMBOBOX = 1423; + // + // MessageId: ERROR_INVALID_EDIT_HEIGHT + // + // MessageText: + // + // Height must be less than=256. + // + int ERROR_INVALID_EDIT_HEIGHT = 1424; + // + // MessageId: ERROR_DC_NOT_FOUND + // + // MessageText: + // + // Invalid device context (DC) handle. + // + int ERROR_DC_NOT_FOUND = 1425; + // + // MessageId: ERROR_INVALID_HOOK_FILTER + // + // MessageText: + // + // Invalid hook procedure type. + // + int ERROR_INVALID_HOOK_FILTER = 1426; + // + // MessageId: ERROR_INVALID_FILTER_PROC + // + // MessageText: + // + // Invalid hook procedure. + // + int ERROR_INVALID_FILTER_PROC = 1427; + // + // MessageId: ERROR_HOOK_NEEDS_HMOD + // + // MessageText: + // + // Cannot set nonlocal hook without a module handle. + // + int ERROR_HOOK_NEEDS_HMOD = 1428; + // + // MessageId: ERROR_GLOBAL_ONLY_HOOK + // + // MessageText: + // + // This hook procedure can only be set globally. + // + int ERROR_GLOBAL_ONLY_HOOK = 1429; + // + // MessageId: ERROR_JOURNAL_HOOK_SET + // + // MessageText: + // + // The journal hook procedure is already installed. + // + int ERROR_JOURNAL_HOOK_SET = 1430; + // + // MessageId: ERROR_HOOK_NOT_INSTALLED + // + // MessageText: + // + // The hook procedure is not installed. + // + int ERROR_HOOK_NOT_INSTALLED = 1431; + // + // MessageId: ERROR_INVALID_LB_MESSAGE + // + // MessageText: + // + // Invalid message for single-selection list box. + // + int ERROR_INVALID_LB_MESSAGE = 1432; + // + // MessageId: ERROR_SETCOUNT_ON_BAD_LB + // + // MessageText: + // + // LB_SETCOUNT sent to non-lazy list box. + // + int ERROR_SETCOUNT_ON_BAD_LB = 1433; + // + // MessageId: ERROR_LB_WITHOUT_TABSTOPS + // + // MessageText: + // + // This list box does not support tab stops. + // + int ERROR_LB_WITHOUT_TABSTOPS = 1434; + // + // MessageId: ERROR_DESTROY_OBJECT_OF_OTHER_THREAD + // + // MessageText: + // + // Cannot destroy object created by another thread. + // + int ERROR_DESTROY_OBJECT_OF_OTHER_THREAD = 1435; + // + // MessageId: ERROR_CHILD_WINDOW_MENU + // + // MessageText: + // + // Child windows cannot have menus. + // + int ERROR_CHILD_WINDOW_MENU = 1436; + // + // MessageId: ERROR_NO_SYSTEM_MENU + // + // MessageText: + // + // The window does not have a system menu. + // + int ERROR_NO_SYSTEM_MENU = 1437; + // + // MessageId: ERROR_INVALID_MSGBOX_STYLE + // + // MessageText: + // + // Invalid message box style. + // + int ERROR_INVALID_MSGBOX_STYLE = 1438; + // + // MessageId: ERROR_INVALID_SPI_VALUE + // + // MessageText: + // + // Invalid system-wide (SPI_*) parameter. + // + int ERROR_INVALID_SPI_VALUE = 1439; + // + // MessageId: ERROR_SCREEN_ALREADY_LOCKED + // + // MessageText: + // + // Screen already locked. + // + int ERROR_SCREEN_ALREADY_LOCKED = 1440; + // + // MessageId: ERROR_HWNDS_HAVE_DIFF_PARENT + // + // MessageText: + // + // All handles to windows in a multiple-window position structure must have + // the same parent. + // + int ERROR_HWNDS_HAVE_DIFF_PARENT = 1441; + // + // MessageId: ERROR_NOT_CHILD_WINDOW + // + // MessageText: + // + // The window is not a child window. + // + int ERROR_NOT_CHILD_WINDOW = 1442; + // + // MessageId: ERROR_INVALID_GW_COMMAND + // + // MessageText: + // + // Invalid GW_* command. + // + int ERROR_INVALID_GW_COMMAND = 1443; + // + // MessageId: ERROR_INVALID_THREAD_ID + // + // MessageText: + // + // Invalid thread identifier. + // + int ERROR_INVALID_THREAD_ID = 1444; + // + // MessageId: ERROR_NON_MDICHILD_WINDOW + // + // MessageText: + // + // Cannot process a message from a window that is not a multiple document + // interface (MDI) window. + // + int ERROR_NON_MDICHILD_WINDOW = 1445; + // + // MessageId: ERROR_POPUP_ALREADY_ACTIVE + // + // MessageText: + // + // Popup menu already active. + // + int ERROR_POPUP_ALREADY_ACTIVE = 1446; + // + // MessageId: ERROR_NO_SCROLLBARS + // + // MessageText: + // + // The window does not have scroll bars. + // + int ERROR_NO_SCROLLBARS = 1447; + // + // MessageId: ERROR_INVALID_SCROLLBAR_RANGE + // + // MessageText: + // + // Scroll bar range cannot be greater than MAXLONG. + // + int ERROR_INVALID_SCROLLBAR_RANGE = 1448; + // + // MessageId: ERROR_INVALID_SHOWWIN_COMMAND + // + // MessageText: + // + // Cannot show or remove the window in the way specified. + // + int ERROR_INVALID_SHOWWIN_COMMAND = 1449; + // + // MessageId: ERROR_NO_SYSTEM_RESOURCES + // + // MessageText: + // + // Insufficient system resources exist to complete the requested service. + // + int ERROR_NO_SYSTEM_RESOURCES = 1450; + // + // MessageId: ERROR_NONPAGED_SYSTEM_RESOURCES + // + // MessageText: + // + // Insufficient system resources exist to complete the requested service. + // + int ERROR_NONPAGED_SYSTEM_RESOURCES = 1451; + // + // MessageId: ERROR_PAGED_SYSTEM_RESOURCES + // + // MessageText: + // + // Insufficient system resources exist to complete the requested service. + // + int ERROR_PAGED_SYSTEM_RESOURCES = 1452; + // + // MessageId: ERROR_WORKING_SET_QUOTA + // + // MessageText: + // + // Insufficient quota to complete the requested service. + // + int ERROR_WORKING_SET_QUOTA = 1453; + // + // MessageId: ERROR_PAGEFILE_QUOTA + // + // MessageText: + // + // Insufficient quota to complete the requested service. + // + int ERROR_PAGEFILE_QUOTA = 1454; + // + // MessageId: ERROR_COMMITMENT_LIMIT + // + // MessageText: + // + // The paging file is too small for this operation to complete. + // + int ERROR_COMMITMENT_LIMIT = 1455; + // + // MessageId: ERROR_MENU_ITEM_NOT_FOUND + // + // MessageText: + // + // A menu item was not found. + // + int ERROR_MENU_ITEM_NOT_FOUND = 1456; + // + // MessageId: ERROR_INVALID_KEYBOARD_HANDLE + // + // MessageText: + // + // Invalid keyboard layout handle. + // + int ERROR_INVALID_KEYBOARD_HANDLE = 1457; + // + // MessageId: ERROR_HOOK_TYPE_NOT_ALLOWED + // + // MessageText: + // + // Hook type not allowed. + // + int ERROR_HOOK_TYPE_NOT_ALLOWED = 1458; + // + // MessageId: ERROR_REQUIRES_INTERACTIVE_WINDOWSTATION + // + // MessageText: + // + // This operation requires an interactive window station. + // + int ERROR_REQUIRES_INTERACTIVE_WINDOWSTATION = 1459; + // + // MessageId: ERROR_TIMEOUT + // + // MessageText: + // + // This operation returned because the timeout period expired. + // + int ERROR_TIMEOUT = 1460; + // + // MessageId: ERROR_INVALID_MONITOR_HANDLE + // + // MessageText: + // + // Invalid monitor handle. + // + int ERROR_INVALID_MONITOR_HANDLE = 1461; + // + // MessageId: ERROR_INCORRECT_SIZE + // + // MessageText: + // + // Incorrect size argument. + // + int ERROR_INCORRECT_SIZE = 1462; + // + // MessageId: ERROR_SYMLINK_CLASS_DISABLED + // + // MessageText: + // + // The symbolic link cannot be followed because its type is disabled. + // + int ERROR_SYMLINK_CLASS_DISABLED = 1463; + // + // MessageId: ERROR_SYMLINK_NOT_SUPPORTED + // + // MessageText: + // + // This application does not support the current operation on symbolic + // links. + // + int ERROR_SYMLINK_NOT_SUPPORTED = 1464; + // + // MessageId: ERROR_XML_PARSE_ERROR + // + // MessageText: + // + // Windows was unable to parse the requested XML data. + // + int ERROR_XML_PARSE_ERROR = 1465; + // + // MessageId: ERROR_XMLDSIG_ERROR + // + // MessageText: + // + // An error was encountered while processing an XML digital signature. + // + int ERROR_XMLDSIG_ERROR = 1466; + // + // MessageId: ERROR_RESTART_APPLICATION + // + // MessageText: + // + // This application must be restarted. + // + int ERROR_RESTART_APPLICATION = 1467; + // + // MessageId: ERROR_WRONG_COMPARTMENT + // + // MessageText: + // + // The caller made the connection request in the wrong routing compartment. + // + int ERROR_WRONG_COMPARTMENT = 1468; + // + // MessageId: ERROR_AUTHIP_FAILURE + // + // MessageText: + // + // There was an AuthIP failure when attempting to connect to the remote + // host. + // + int ERROR_AUTHIP_FAILURE = 1469; + // ///////////////////////////////////////////////// + // =// + // =EventLog Error codes=// + // =// + // =1500 to=1549=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_EVENTLOG_FILE_CORRUPT + // + // MessageText: + // + // The event log file is corrupted. + // + int ERROR_EVENTLOG_FILE_CORRUPT = 1500; + // + // MessageId: ERROR_EVENTLOG_CANT_START + // + // MessageText: + // + // No event log file could be opened, so the event logging service did not + // start. + // + int ERROR_EVENTLOG_CANT_START = 1501; + // + // MessageId: ERROR_LOG_FILE_FULL + // + // MessageText: + // + // The event log file is full. + // + int ERROR_LOG_FILE_FULL = 1502; + // + // MessageId: ERROR_EVENTLOG_FILE_CHANGED + // + // MessageText: + // + // The event log file has changed between read operations. + // + int ERROR_EVENTLOG_FILE_CHANGED = 1503; + // ///////////////////////////////////////////////// + // =// + // =Class Scheduler Error codes=// + // =// + // =1550 to=1599=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_INVALID_TASK_NAME + // + // MessageText: + // + // The specified task name is invalid. + // + int ERROR_INVALID_TASK_NAME = 1550; + // + // MessageId: ERROR_INVALID_TASK_INDEX + // + // MessageText: + // + // The specified task index is invalid. + // + int ERROR_INVALID_TASK_INDEX = 1551; + // + // MessageId: ERROR_THREAD_ALREADY_IN_TASK + // + // MessageText: + // + // The specified thread is already joining a task. + // + int ERROR_THREAD_ALREADY_IN_TASK = 1552; + // ///////////////////////////////////////////////// + // =// + // =MSI Error codes=// + // =// + // =1600 to=1699=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_INSTALL_SERVICE_FAILURE + // + // MessageText: + // + // The Windows Installer Service could not be accessed. This can occur if + // the Windows Installer is not correctly installed. Contact your support + // personnel for assistance. + // + int ERROR_INSTALL_SERVICE_FAILURE = 1601; + // + // MessageId: ERROR_INSTALL_USEREXIT + // + // MessageText: + // + // User cancelled installation. + // + int ERROR_INSTALL_USEREXIT = 1602; + // + // MessageId: ERROR_INSTALL_FAILURE + // + // MessageText: + // + // Fatal error during installation. + // + int ERROR_INSTALL_FAILURE = 1603; + // + // MessageId: ERROR_INSTALL_SUSPEND + // + // MessageText: + // + // Installation suspended, incomplete. + // + int ERROR_INSTALL_SUSPEND = 1604; + // + // MessageId: ERROR_UNKNOWN_PRODUCT + // + // MessageText: + // + // This action is only valid for products that are currently installed. + // + int ERROR_UNKNOWN_PRODUCT = 1605; + // + // MessageId: ERROR_UNKNOWN_FEATURE + // + // MessageText: + // + // Feature ID not registered. + // + int ERROR_UNKNOWN_FEATURE = 1606; + // + // MessageId: ERROR_UNKNOWN_COMPONENT + // + // MessageText: + // + // Component ID not registered. + // + int ERROR_UNKNOWN_COMPONENT = 1607; + // + // MessageId: ERROR_UNKNOWN_PROPERTY + // + // MessageText: + // + // Unknown property. + // + int ERROR_UNKNOWN_PROPERTY = 1608; + // + // MessageId: ERROR_INVALID_HANDLE_STATE + // + // MessageText: + // + // Handle is in an invalid state. + // + int ERROR_INVALID_HANDLE_STATE = 1609; + // + // MessageId: ERROR_BAD_CONFIGURATION + // + // MessageText: + // + // The configuration data for this product is corrupt. Contact your support + // personnel. + // + int ERROR_BAD_CONFIGURATION = 1610; + // + // MessageId: ERROR_INDEX_ABSENT + // + // MessageText: + // + // Component qualifier not present. + // + int ERROR_INDEX_ABSENT = 1611; + // + // MessageId: ERROR_INSTALL_SOURCE_ABSENT + // + // MessageText: + // + // The installation source for this product is not available. Verify that + // the source exists and that you can access it. + // + int ERROR_INSTALL_SOURCE_ABSENT = 1612; + // + // MessageId: ERROR_INSTALL_PACKAGE_VERSION + // + // MessageText: + // + // This installation package cannot be installed by the Windows Installer + // service. You must install a Windows service pack that contains a newer + // version of the Windows Installer service. + // + int ERROR_INSTALL_PACKAGE_VERSION = 1613; + // + // MessageId: ERROR_PRODUCT_UNINSTALLED + // + // MessageText: + // + // Product is uninstalled. + // + int ERROR_PRODUCT_UNINSTALLED = 1614; + // + // MessageId: ERROR_BAD_QUERY_SYNTAX + // + // MessageText: + // + // SQL query syntax invalid or unsupported. + // + int ERROR_BAD_QUERY_SYNTAX = 1615; + // + // MessageId: ERROR_INVALID_FIELD + // + // MessageText: + // + // Record field does not exist. + // + int ERROR_INVALID_FIELD = 1616; + // + // MessageId: ERROR_DEVICE_REMOVED + // + // MessageText: + // + // The device has been removed. + // + int ERROR_DEVICE_REMOVED = 1617; + // + // MessageId: ERROR_INSTALL_ALREADY_RUNNING + // + // MessageText: + // + // Another installation is already in progress. Complete that installation + // before proceeding with this install. + // + int ERROR_INSTALL_ALREADY_RUNNING = 1618; + // + // MessageId: ERROR_INSTALL_PACKAGE_OPEN_FAILED + // + // MessageText: + // + // This installation package could not be opened. Verify that the package + // exists and that you can access it, or contact the application vendor to + // verify that this is a valid Windows Installer package. + // + int ERROR_INSTALL_PACKAGE_OPEN_FAILED = 1619; + // + // MessageId: ERROR_INSTALL_PACKAGE_INVALID + // + // MessageText: + // + // This installation package could not be opened. Contact the application + // vendor to verify that this is a valid Windows Installer package. + // + int ERROR_INSTALL_PACKAGE_INVALID = 1620; + // + // MessageId: ERROR_INSTALL_UI_FAILURE + // + // MessageText: + // + // There was an error starting the Windows Installer service user interface. + // Contact your support personnel. + // + int ERROR_INSTALL_UI_FAILURE = 1621; + // + // MessageId: ERROR_INSTALL_LOG_FAILURE + // + // MessageText: + // + // Error opening installation log file. Verify that the specified log file + // location exists and that you can write to it. + // + int ERROR_INSTALL_LOG_FAILURE = 1622; + // + // MessageId: ERROR_INSTALL_LANGUAGE_UNSUPPORTED + // + // MessageText: + // + // The language of this installation package is not supported by your + // system. + // + int ERROR_INSTALL_LANGUAGE_UNSUPPORTED = 1623; + // + // MessageId: ERROR_INSTALL_TRANSFORM_FAILURE + // + // MessageText: + // + // Error applying transforms. Verify that the specified transform paths are + // valid. + // + int ERROR_INSTALL_TRANSFORM_FAILURE = 1624; + // + // MessageId: ERROR_INSTALL_PACKAGE_REJECTED + // + // MessageText: + // + // This installation is forbidden by system policy. Contact your system + // administrator. + // + int ERROR_INSTALL_PACKAGE_REJECTED = 1625; + // + // MessageId: ERROR_FUNCTION_NOT_CALLED + // + // MessageText: + // + // Function could not be executed. + // + int ERROR_FUNCTION_NOT_CALLED = 1626; + // + // MessageId: ERROR_FUNCTION_FAILED + // + // MessageText: + // + // Function failed during execution. + // + int ERROR_FUNCTION_FAILED = 1627; + // + // MessageId: ERROR_INVALID_TABLE + // + // MessageText: + // + // Invalid or unknown table specified. + // + int ERROR_INVALID_TABLE = 1628; + // + // MessageId: ERROR_DATATYPE_MISMATCH + // + // MessageText: + // + // Data supplied is of wrong type. + // + int ERROR_DATATYPE_MISMATCH = 1629; + // + // MessageId: ERROR_UNSUPPORTED_TYPE + // + // MessageText: + // + // Data of this type is not supported. + // + int ERROR_UNSUPPORTED_TYPE = 1630; + // + // MessageId: ERROR_CREATE_FAILED + // + // MessageText: + // + // The Windows Installer service failed to start. Contact your support + // personnel. + // + int ERROR_CREATE_FAILED = 1631; + // + // MessageId: ERROR_INSTALL_TEMP_UNWRITABLE + // + // MessageText: + // + // The Temp folder is on a drive that is full or is inaccessible. Free up + // space on the drive or verify that you have write permission on the Temp + // folder. + // + int ERROR_INSTALL_TEMP_UNWRITABLE = 1632; + // + // MessageId: ERROR_INSTALL_PLATFORM_UNSUPPORTED + // + // MessageText: + // + // This installation package is not supported by this processor type. + // Contact your product vendor. + // + int ERROR_INSTALL_PLATFORM_UNSUPPORTED = 1633; + // + // MessageId: ERROR_INSTALL_NOTUSED + // + // MessageText: + // + // Component not used on this computer. + // + int ERROR_INSTALL_NOTUSED = 1634; + // + // MessageId: ERROR_PATCH_PACKAGE_OPEN_FAILED + // + // MessageText: + // + // This update package could not be opened. Verify that the update package + // exists and that you can access it, or contact the application vendor to + // verify that this is a valid Windows Installer update package. + // + int ERROR_PATCH_PACKAGE_OPEN_FAILED = 1635; + // + // MessageId: ERROR_PATCH_PACKAGE_INVALID + // + // MessageText: + // + // This update package could not be opened. Contact the application vendor + // to verify that this is a valid Windows Installer update package. + // + int ERROR_PATCH_PACKAGE_INVALID = 1636; + // + // MessageId: ERROR_PATCH_PACKAGE_UNSUPPORTED + // + // MessageText: + // + // This update package cannot be processed by the Windows Installer service. + // You must install a Windows service pack that contains a newer version of + // the Windows Installer service. + // + int ERROR_PATCH_PACKAGE_UNSUPPORTED = 1637; + // + // MessageId: ERROR_PRODUCT_VERSION + // + // MessageText: + // + // Another version of this product is already installed. Installation of + // this version cannot continue. To configure or remove the existing version + // of this product, use Add/Remove Programs on the Control Panel. + // + int ERROR_PRODUCT_VERSION = 1638; + // + // MessageId: ERROR_INVALID_COMMAND_LINE + // + // MessageText: + // + // Invalid command line argument. Consult the Windows Installer SDK for + // detailed command line help. + // + int ERROR_INVALID_COMMAND_LINE = 1639; + // + // MessageId: ERROR_INSTALL_REMOTE_DISALLOWED + // + // MessageText: + // + // Only administrators have permission to add, remove, or configure server + // software during a Terminal services remote session. If you want to + // install or configure software on the server, contact your network + // administrator. + // + int ERROR_INSTALL_REMOTE_DISALLOWED = 1640; + // + // MessageId: ERROR_SUCCESS_REBOOT_INITIATED + // + // MessageText: + // + // The requested operation completed successfully. The system will be + // restarted so the changes can take effect. + // + int ERROR_SUCCESS_REBOOT_INITIATED = 1641; + // + // MessageId: ERROR_PATCH_TARGET_NOT_FOUND + // + // MessageText: + // + // The upgrade cannot be installed by the Windows Installer service because + // the program to be upgraded may be missing, or the upgrade may update a + // different version of the program. Verify that the program to be upgraded + // exists on your computer and that you have the correct upgrade. + // + int ERROR_PATCH_TARGET_NOT_FOUND = 1642; + // + // MessageId: ERROR_PATCH_PACKAGE_REJECTED + // + // MessageText: + // + // The update package is not permitted by software restriction policy. + // + int ERROR_PATCH_PACKAGE_REJECTED = 1643; + // + // MessageId: ERROR_INSTALL_TRANSFORM_REJECTED + // + // MessageText: + // + // One or more customizations are not permitted by software restriction + // policy. + // + int ERROR_INSTALL_TRANSFORM_REJECTED = 1644; + // + // MessageId: ERROR_INSTALL_REMOTE_PROHIBITED + // + // MessageText: + // + // The Windows Installer does not permit installation from a Remote Desktop + // Connection. + // + int ERROR_INSTALL_REMOTE_PROHIBITED = 1645; + // + // MessageId: ERROR_PATCH_REMOVAL_UNSUPPORTED + // + // MessageText: + // + // Uninstallation of the update package is not supported. + // + int ERROR_PATCH_REMOVAL_UNSUPPORTED = 1646; + // + // MessageId: ERROR_UNKNOWN_PATCH + // + // MessageText: + // + // The update is not applied to this product. + // + int ERROR_UNKNOWN_PATCH = 1647; + // + // MessageId: ERROR_PATCH_NO_SEQUENCE + // + // MessageText: + // + // No valid sequence could be found for the set of updates. + // + int ERROR_PATCH_NO_SEQUENCE = 1648; + // + // MessageId: ERROR_PATCH_REMOVAL_DISALLOWED + // + // MessageText: + // + // Update removal was disallowed by policy. + // + int ERROR_PATCH_REMOVAL_DISALLOWED = 1649; + // + // MessageId: ERROR_INVALID_PATCH_XML + // + // MessageText: + // + // The XML update data is invalid. + // + int ERROR_INVALID_PATCH_XML = 1650; + // + // MessageId: ERROR_PATCH_MANAGED_ADVERTISED_PRODUCT + // + // MessageText: + // + // Windows Installer does not permit updating of managed advertised + // products. At least one feature of the product must be installed before + // applying the update. + // + int ERROR_PATCH_MANAGED_ADVERTISED_PRODUCT = 1651; + // + // MessageId: ERROR_INSTALL_SERVICE_SAFEBOOT + // + // MessageText: + // + // The Windows Installer service is not accessible in Safe Mode. Please try + // again when your computer is not in Safe Mode or you can use System + // Restore to return your machine to a previous good state. + // + int ERROR_INSTALL_SERVICE_SAFEBOOT = 1652; + // ///////////////////////////////////////////////// + // =// + // =RPC Error codes=// + // =// + // =1700 to=1999=// + // ///////////////////////////////////////////////// + // + // MessageId: RPC_S_INVALID_STRING_BINDING + // + // MessageText: + // + // The string binding is invalid. + // + int RPC_S_INVALID_STRING_BINDING = 1700; + // + // MessageId: RPC_S_WRONG_KIND_OF_BINDING + // + // MessageText: + // + // The binding handle is not the correct type. + // + int RPC_S_WRONG_KIND_OF_BINDING = 1701; + // + // MessageId: RPC_S_INVALID_BINDING + // + // MessageText: + // + // The binding handle is invalid. + // + int RPC_S_INVALID_BINDING = 1702; + // + // MessageId: RPC_S_PROTSEQ_NOT_SUPPORTED + // + // MessageText: + // + // The RPC protocol sequence is not supported. + // + int RPC_S_PROTSEQ_NOT_SUPPORTED = 1703; + // + // MessageId: RPC_S_INVALID_RPC_PROTSEQ + // + // MessageText: + // + // The RPC protocol sequence is invalid. + // + int RPC_S_INVALID_RPC_PROTSEQ = 1704; + // + // MessageId: RPC_S_INVALID_STRING_UUID + // + // MessageText: + // + // The string universal unique identifier (UUID) is invalid. + // + int RPC_S_INVALID_STRING_UUID = 1705; + // + // MessageId: RPC_S_INVALID_ENDPOINT_FORMAT + // + // MessageText: + // + // The endpoint format is invalid. + // + int RPC_S_INVALID_ENDPOINT_FORMAT = 1706; + // + // MessageId: RPC_S_INVALID_NET_ADDR + // + // MessageText: + // + // The network address is invalid. + // + int RPC_S_INVALID_NET_ADDR = 1707; + // + // MessageId: RPC_S_NO_ENDPOINT_FOUND + // + // MessageText: + // + // No endpoint was found. + // + int RPC_S_NO_ENDPOINT_FOUND = 1708; + // + // MessageId: RPC_S_INVALID_TIMEOUT + // + // MessageText: + // + // The timeout value is invalid. + // + int RPC_S_INVALID_TIMEOUT = 1709; + // + // MessageId: RPC_S_OBJECT_NOT_FOUND + // + // MessageText: + // + // The object universal unique identifier (UUID) was not found. + // + int RPC_S_OBJECT_NOT_FOUND = 1710; + // + // MessageId: RPC_S_ALREADY_REGISTERED + // + // MessageText: + // + // The object universal unique identifier (UUID) has already been + // registered. + // + int RPC_S_ALREADY_REGISTERED = 1711; + // + // MessageId: RPC_S_TYPE_ALREADY_REGISTERED + // + // MessageText: + // + // The type universal unique identifier (UUID) has already been registered. + // + int RPC_S_TYPE_ALREADY_REGISTERED = 1712; + // + // MessageId: RPC_S_ALREADY_LISTENING + // + // MessageText: + // + // The RPC server is already listening. + // + int RPC_S_ALREADY_LISTENING = 1713; + // + // MessageId: RPC_S_NO_PROTSEQS_REGISTERED + // + // MessageText: + // + // No protocol sequences have been registered. + // + int RPC_S_NO_PROTSEQS_REGISTERED = 1714; + // + // MessageId: RPC_S_NOT_LISTENING + // + // MessageText: + // + // The RPC server is not listening. + // + int RPC_S_NOT_LISTENING = 1715; + // + // MessageId: RPC_S_UNKNOWN_MGR_TYPE + // + // MessageText: + // + // The manager type is unknown. + // + int RPC_S_UNKNOWN_MGR_TYPE = 1716; + // + // MessageId: RPC_S_UNKNOWN_IF + // + // MessageText: + // + // The interface is unknown. + // + int RPC_S_UNKNOWN_IF = 1717; + // + // MessageId: RPC_S_NO_BINDINGS + // + // MessageText: + // + // There are no bindings. + // + int RPC_S_NO_BINDINGS = 1718; + // + // MessageId: RPC_S_NO_PROTSEQS + // + // MessageText: + // + // There are no protocol sequences. + // + int RPC_S_NO_PROTSEQS = 1719; + // + // MessageId: RPC_S_CANT_CREATE_ENDPOINT + // + // MessageText: + // + // The endpoint cannot be created. + // + int RPC_S_CANT_CREATE_ENDPOINT = 1720; + // + // MessageId: RPC_S_OUT_OF_RESOURCES + // + // MessageText: + // + // Not enough resources are available to complete this operation. + // + int RPC_S_OUT_OF_RESOURCES = 1721; + // + // MessageId: RPC_S_SERVER_UNAVAILABLE + // + // MessageText: + // + // The RPC server is unavailable. + // + int RPC_S_SERVER_UNAVAILABLE = 1722; + // + // MessageId: RPC_S_SERVER_TOO_BUSY + // + // MessageText: + // + // The RPC server is too busy to complete this operation. + // + int RPC_S_SERVER_TOO_BUSY = 1723; + // + // MessageId: RPC_S_INVALID_NETWORK_OPTIONS + // + // MessageText: + // + // The network options are invalid. + // + int RPC_S_INVALID_NETWORK_OPTIONS = 1724; + // + // MessageId: RPC_S_NO_CALL_ACTIVE + // + // MessageText: + // + // There are no remote procedure calls active on this thread. + // + int RPC_S_NO_CALL_ACTIVE = 1725; + // + // MessageId: RPC_S_CALL_FAILED + // + // MessageText: + // + // The remote procedure call failed. + // + int RPC_S_CALL_FAILED = 1726; + // + // MessageId: RPC_S_CALL_FAILED_DNE + // + // MessageText: + // + // The remote procedure call failed and did not execute. + // + int RPC_S_CALL_FAILED_DNE = 1727; + // + // MessageId: RPC_S_PROTOCOL_ERROR + // + // MessageText: + // + // A remote procedure call (RPC) protocol error occurred. + // + int RPC_S_PROTOCOL_ERROR = 1728; + // + // MessageId: RPC_S_PROXY_ACCESS_DENIED + // + // MessageText: + // + // Access to the HTTP proxy is denied. + // + int RPC_S_PROXY_ACCESS_DENIED = 1729; + // + // MessageId: RPC_S_UNSUPPORTED_TRANS_SYN + // + // MessageText: + // + // The transfer syntax is not supported by the RPC server. + // + int RPC_S_UNSUPPORTED_TRANS_SYN = 1730; + // + // MessageId: RPC_S_UNSUPPORTED_TYPE + // + // MessageText: + // + // The universal unique identifier (UUID) type is not supported. + // + int RPC_S_UNSUPPORTED_TYPE = 1732; + // + // MessageId: RPC_S_INVALID_TAG + // + // MessageText: + // + // The tag is invalid. + // + int RPC_S_INVALID_TAG = 1733; + // + // MessageId: RPC_S_INVALID_BOUND + // + // MessageText: + // + // The array bounds are invalid. + // + int RPC_S_INVALID_BOUND = 1734; + // + // MessageId: RPC_S_NO_ENTRY_NAME + // + // MessageText: + // + // The binding does not contain an entry name. + // + int RPC_S_NO_ENTRY_NAME = 1735; + // + // MessageId: RPC_S_INVALID_NAME_SYNTAX + // + // MessageText: + // + // The name syntax is invalid. + // + int RPC_S_INVALID_NAME_SYNTAX = 1736; + // + // MessageId: RPC_S_UNSUPPORTED_NAME_SYNTAX + // + // MessageText: + // + // The name syntax is not supported. + // + int RPC_S_UNSUPPORTED_NAME_SYNTAX = 1737; + // + // MessageId: RPC_S_UUID_NO_ADDRESS + // + // MessageText: + // + // No network address is available to use to construct a universal unique + // identifier (UUID). + // + int RPC_S_UUID_NO_ADDRESS = 1739; + // + // MessageId: RPC_S_DUPLICATE_ENDPOINT + // + // MessageText: + // + // The endpoint is a duplicate. + // + int RPC_S_DUPLICATE_ENDPOINT = 1740; + // + // MessageId: RPC_S_UNKNOWN_AUTHN_TYPE + // + // MessageText: + // + // The authentication type is unknown. + // + int RPC_S_UNKNOWN_AUTHN_TYPE = 1741; + // + // MessageId: RPC_S_MAX_CALLS_TOO_SMALL + // + // MessageText: + // + // The maximum number of calls is too small. + // + int RPC_S_MAX_CALLS_TOO_SMALL = 1742; + // + // MessageId: RPC_S_STRING_TOO_LONG + // + // MessageText: + // + // The string is too long. + // + int RPC_S_STRING_TOO_LONG = 1743; + // + // MessageId: RPC_S_PROTSEQ_NOT_FOUND + // + // MessageText: + // + // The RPC protocol sequence was not found. + // + int RPC_S_PROTSEQ_NOT_FOUND = 1744; + // + // MessageId: RPC_S_PROCNUM_OUT_OF_RANGE + // + // MessageText: + // + // The procedure number is out of range. + // + int RPC_S_PROCNUM_OUT_OF_RANGE = 1745; + // + // MessageId: RPC_S_BINDING_HAS_NO_AUTH + // + // MessageText: + // + // The binding does not contain any authentication information. + // + int RPC_S_BINDING_HAS_NO_AUTH = 1746; + // + // MessageId: RPC_S_UNKNOWN_AUTHN_SERVICE + // + // MessageText: + // + // The authentication service is unknown. + // + int RPC_S_UNKNOWN_AUTHN_SERVICE = 1747; + // + // MessageId: RPC_S_UNKNOWN_AUTHN_LEVEL + // + // MessageText: + // + // The authentication level is unknown. + // + int RPC_S_UNKNOWN_AUTHN_LEVEL = 1748; + // + // MessageId: RPC_S_INVALID_AUTH_IDENTITY + // + // MessageText: + // + // The security context is invalid. + // + int RPC_S_INVALID_AUTH_IDENTITY = 1749; + // + // MessageId: RPC_S_UNKNOWN_AUTHZ_SERVICE + // + // MessageText: + // + // The authorization service is unknown. + // + int RPC_S_UNKNOWN_AUTHZ_SERVICE = 1750; + // + // MessageId: EPT_S_INVALID_ENTRY + // + // MessageText: + // + // The entry is invalid. + // + int EPT_S_INVALID_ENTRY = 1751; + // + // MessageId: EPT_S_CANT_PERFORM_OP + // + // MessageText: + // + // The server endpoint cannot perform the operation. + // + int EPT_S_CANT_PERFORM_OP = 1752; + // + // MessageId: EPT_S_NOT_REGISTERED + // + // MessageText: + // + // There are no more endpoints available from the endpoint mapper. + // + int EPT_S_NOT_REGISTERED = 1753; + // + // MessageId: RPC_S_NOTHING_TO_EXPORT + // + // MessageText: + // + // No interfaces have been exported. + // + int RPC_S_NOTHING_TO_EXPORT = 1754; + // + // MessageId: RPC_S_INCOMPLETE_NAME + // + // MessageText: + // + // The entry name is incomplete. + // + int RPC_S_INCOMPLETE_NAME = 1755; + // + // MessageId: RPC_S_INVALID_VERS_OPTION + // + // MessageText: + // + // The version option is invalid. + // + int RPC_S_INVALID_VERS_OPTION = 1756; + // + // MessageId: RPC_S_NO_MORE_MEMBERS + // + // MessageText: + // + // There are no more members. + // + int RPC_S_NO_MORE_MEMBERS = 1757; + // + // MessageId: RPC_S_NOT_ALL_OBJS_UNEXPORTED + // + // MessageText: + // + // There is nothing to unexport. + // + int RPC_S_NOT_ALL_OBJS_UNEXPORTED = 1758; + // + // MessageId: RPC_S_INTERFACE_NOT_FOUND + // + // MessageText: + // + // The interface was not found. + // + int RPC_S_INTERFACE_NOT_FOUND = 1759; + // + // MessageId: RPC_S_ENTRY_ALREADY_EXISTS + // + // MessageText: + // + // The entry already exists. + // + int RPC_S_ENTRY_ALREADY_EXISTS = 1760; + // + // MessageId: RPC_S_ENTRY_NOT_FOUND + // + // MessageText: + // + // The entry is not found. + // + int RPC_S_ENTRY_NOT_FOUND = 1761; + // + // MessageId: RPC_S_NAME_SERVICE_UNAVAILABLE + // + // MessageText: + // + // The name service is unavailable. + // + int RPC_S_NAME_SERVICE_UNAVAILABLE = 1762; + // + // MessageId: RPC_S_INVALID_NAF_ID + // + // MessageText: + // + // The network address family is invalid. + // + int RPC_S_INVALID_NAF_ID = 1763; + // + // MessageId: RPC_S_CANNOT_SUPPORT + // + // MessageText: + // + // The requested operation is not supported. + // + int RPC_S_CANNOT_SUPPORT = 1764; + // + // MessageId: RPC_S_NO_CONTEXT_AVAILABLE + // + // MessageText: + // + // No security context is available to allow impersonation. + // + int RPC_S_NO_CONTEXT_AVAILABLE = 1765; + // + // MessageId: RPC_S_INTERNAL_ERROR + // + // MessageText: + // + // An internal error occurred in a remote procedure call (RPC). + // + int RPC_S_INTERNAL_ERROR = 1766; + // + // MessageId: RPC_S_ZERO_DIVIDE + // + // MessageText: + // + // The RPC server attempted an integer division by zero. + // + int RPC_S_ZERO_DIVIDE = 1767; + // + // MessageId: RPC_S_ADDRESS_ERROR + // + // MessageText: + // + // An addressing error occurred in the RPC server. + // + int RPC_S_ADDRESS_ERROR = 1768; + // + // MessageId: RPC_S_FP_DIV_ZERO + // + // MessageText: + // + // A floating-point operation at the RPC server caused a division by zero. + // + int RPC_S_FP_DIV_ZERO = 1769; + // + // MessageId: RPC_S_FP_UNDERFLOW + // + // MessageText: + // + // A floating-point underflow occurred at the RPC server. + // + int RPC_S_FP_UNDERFLOW = 1770; + // + // MessageId: RPC_S_FP_OVERFLOW + // + // MessageText: + // + // A floating-point overflow occurred at the RPC server. + // + int RPC_S_FP_OVERFLOW = 1771; + // + // MessageId: RPC_X_NO_MORE_ENTRIES + // + // MessageText: + // + // The list of RPC servers available for the binding of auto handles has + // been exhausted. + // + int RPC_X_NO_MORE_ENTRIES = 1772; + // + // MessageId: RPC_X_SS_CHAR_TRANS_OPEN_FAIL + // + // MessageText: + // + // Unable to open the character translation table file. + // + int RPC_X_SS_CHAR_TRANS_OPEN_FAIL = 1773; + // + // MessageId: RPC_X_SS_CHAR_TRANS_SHORT_FILE + // + // MessageText: + // + // The file containing the character translation table has fewer than=512 + // bytes. + // + int RPC_X_SS_CHAR_TRANS_SHORT_FILE = 1774; + // + // MessageId: RPC_X_SS_IN_NULL_CONTEXT + // + // MessageText: + // + // A null context handle was passed from the client to the host during a + // remote procedure call. + // + int RPC_X_SS_IN_NULL_CONTEXT = 1775; + // + // MessageId: RPC_X_SS_CONTEXT_DAMAGED + // + // MessageText: + // + // The context handle changed during a remote procedure call. + // + int RPC_X_SS_CONTEXT_DAMAGED = 1777; + // + // MessageId: RPC_X_SS_HANDLES_MISMATCH + // + // MessageText: + // + // The binding handles passed to a remote procedure call do not match. + // + int RPC_X_SS_HANDLES_MISMATCH = 1778; + // + // MessageId: RPC_X_SS_CANNOT_GET_CALL_HANDLE + // + // MessageText: + // + // The stub is unable to get the remote procedure call handle. + // + int RPC_X_SS_CANNOT_GET_CALL_HANDLE = 1779; + // + // MessageId: RPC_X_NULL_REF_POINTER + // + // MessageText: + // + // A null reference pointer was passed to the stub. + // + int RPC_X_NULL_REF_POINTER = 1780; + // + // MessageId: RPC_X_ENUM_VALUE_OUT_OF_RANGE + // + // MessageText: + // + // The enumeration value is out of range. + // + int RPC_X_ENUM_VALUE_OUT_OF_RANGE = 1781; + // + // MessageId: RPC_X_BYTE_COUNT_TOO_SMALL + // + // MessageText: + // + // The byte count is too small. + // + int RPC_X_BYTE_COUNT_TOO_SMALL = 1782; + // + // MessageId: RPC_X_BAD_STUB_DATA + // + // MessageText: + // + // The stub received bad data. + // + int RPC_X_BAD_STUB_DATA = 1783; + // + // MessageId: ERROR_INVALID_USER_BUFFER + // + // MessageText: + // + // The supplied user buffer is not valid for the requested operation. + // + int ERROR_INVALID_USER_BUFFER = 1784; + // + // MessageId: ERROR_UNRECOGNIZED_MEDIA + // + // MessageText: + // + // The disk media is not recognized. It may not be formatted. + // + int ERROR_UNRECOGNIZED_MEDIA = 1785; + // + // MessageId: ERROR_NO_TRUST_LSA_SECRET + // + // MessageText: + // + // The workstation does not have a trust secret. + // + int ERROR_NO_TRUST_LSA_SECRET = 1786; + // + // MessageId: ERROR_NO_TRUST_SAM_ACCOUNT + // + // MessageText: + // + // The security database on the server does not have a computer account for + // this workstation trust relationship. + // + int ERROR_NO_TRUST_SAM_ACCOUNT = 1787; + // + // MessageId: ERROR_TRUSTED_DOMAIN_FAILURE + // + // MessageText: + // + // The trust relationship between the primary domain and the trusted domain + // failed. + // + int ERROR_TRUSTED_DOMAIN_FAILURE = 1788; + // + // MessageId: ERROR_TRUSTED_RELATIONSHIP_FAILURE + // + // MessageText: + // + // The trust relationship between this workstation and the primary domain + // failed. + // + int ERROR_TRUSTED_RELATIONSHIP_FAILURE = 1789; + // + // MessageId: ERROR_TRUST_FAILURE + // + // MessageText: + // + // The network logon failed. + // + int ERROR_TRUST_FAILURE = 1790; + // + // MessageId: RPC_S_CALL_IN_PROGRESS + // + // MessageText: + // + // A remote procedure call is already in progress for this thread. + // + int RPC_S_CALL_IN_PROGRESS = 1791; + // + // MessageId: ERROR_NETLOGON_NOT_STARTED + // + // MessageText: + // + // An attempt was made to logon, but the network logon service was not + // started. + // + int ERROR_NETLOGON_NOT_STARTED = 1792; + // + // MessageId: ERROR_ACCOUNT_EXPIRED + // + // MessageText: + // + // The user's account has expired. + // + int ERROR_ACCOUNT_EXPIRED = 1793; + // + // MessageId: ERROR_REDIRECTOR_HAS_OPEN_HANDLES + // + // MessageText: + // + // The redirector is in use and cannot be unloaded. + // + int ERROR_REDIRECTOR_HAS_OPEN_HANDLES = 1794; + // + // MessageId: ERROR_PRINTER_DRIVER_ALREADY_INSTALLED + // + // MessageText: + // + // The specified printer driver is already installed. + // + int ERROR_PRINTER_DRIVER_ALREADY_INSTALLED = 1795; + // + // MessageId: ERROR_UNKNOWN_PORT + // + // MessageText: + // + // The specified port is unknown. + // + int ERROR_UNKNOWN_PORT = 1796; + // + // MessageId: ERROR_UNKNOWN_PRINTER_DRIVER + // + // MessageText: + // + // The printer driver is unknown. + // + int ERROR_UNKNOWN_PRINTER_DRIVER = 1797; + // + // MessageId: ERROR_UNKNOWN_PRINTPROCESSOR + // + // MessageText: + // + // The print processor is unknown. + // + int ERROR_UNKNOWN_PRINTPROCESSOR = 1798; + // + // MessageId: ERROR_INVALID_SEPARATOR_FILE + // + // MessageText: + // + // The specified separator file is invalid. + // + int ERROR_INVALID_SEPARATOR_FILE = 1799; + // + // MessageId: ERROR_INVALID_PRIORITY + // + // MessageText: + // + // The specified priority is invalid. + // + int ERROR_INVALID_PRIORITY = 1800; + // + // MessageId: ERROR_INVALID_PRINTER_NAME + // + // MessageText: + // + // The printer name is invalid. + // + int ERROR_INVALID_PRINTER_NAME = 1801; + // + // MessageId: ERROR_PRINTER_ALREADY_EXISTS + // + // MessageText: + // + // The printer already exists. + // + int ERROR_PRINTER_ALREADY_EXISTS = 1802; + // + // MessageId: ERROR_INVALID_PRINTER_COMMAND + // + // MessageText: + // + // The printer command is invalid. + // + int ERROR_INVALID_PRINTER_COMMAND = 1803; + // + // MessageId: ERROR_INVALID_DATATYPE + // + // MessageText: + // + // The specified datatype is invalid. + // + int ERROR_INVALID_DATATYPE = 1804; + // + // MessageId: ERROR_INVALID_ENVIRONMENT + // + // MessageText: + // + // The environment specified is invalid. + // + int ERROR_INVALID_ENVIRONMENT = 1805; + // + // MessageId: RPC_S_NO_MORE_BINDINGS + // + // MessageText: + // + // There are no more bindings. + // + int RPC_S_NO_MORE_BINDINGS = 1806; + // + // MessageId: ERROR_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT + // + // MessageText: + // + // The account used is an interdomain trust account. Use your global user + // account or local user account to access this server. + // + int ERROR_NOLOGON_INTERDOMAIN_TRUST_ACCOUNT = 1807; + // + // MessageId: ERROR_NOLOGON_WORKSTATION_TRUST_ACCOUNT + // + // MessageText: + // + // The account used is a computer account. Use your global user account or + // local user account to access this server. + // + int ERROR_NOLOGON_WORKSTATION_TRUST_ACCOUNT = 1808; + // + // MessageId: ERROR_NOLOGON_SERVER_TRUST_ACCOUNT + // + // MessageText: + // + // The account used is a server trust account. Use your global user account + // or local user account to access this server. + // + int ERROR_NOLOGON_SERVER_TRUST_ACCOUNT = 1809; + // + // MessageId: ERROR_DOMAIN_TRUST_INCONSISTENT + // + // MessageText: + // + // The name or security ID (SID) of the domain specified is inconsistent + // with the trust information for that domain. + // + int ERROR_DOMAIN_TRUST_INCONSISTENT = 1810; + // + // MessageId: ERROR_SERVER_HAS_OPEN_HANDLES + // + // MessageText: + // + // The server is in use and cannot be unloaded. + // + int ERROR_SERVER_HAS_OPEN_HANDLES = 1811; + // + // MessageId: ERROR_RESOURCE_DATA_NOT_FOUND + // + // MessageText: + // + // The specified image file did not contain a resource section. + // + int ERROR_RESOURCE_DATA_NOT_FOUND = 1812; + // + // MessageId: ERROR_RESOURCE_TYPE_NOT_FOUND + // + // MessageText: + // + // The specified resource type cannot be found in the image file. + // + int ERROR_RESOURCE_TYPE_NOT_FOUND = 1813; + // + // MessageId: ERROR_RESOURCE_NAME_NOT_FOUND + // + // MessageText: + // + // The specified resource name cannot be found in the image file. + // + int ERROR_RESOURCE_NAME_NOT_FOUND = 1814; + // + // MessageId: ERROR_RESOURCE_LANG_NOT_FOUND + // + // MessageText: + // + // The specified resource language ID cannot be found in the image file. + // + int ERROR_RESOURCE_LANG_NOT_FOUND = 1815; + // + // MessageId: ERROR_NOT_ENOUGH_QUOTA + // + // MessageText: + // + // Not enough quota is available to process this command. + // + int ERROR_NOT_ENOUGH_QUOTA = 1816; + // + // MessageId: RPC_S_NO_INTERFACES + // + // MessageText: + // + // No interfaces have been registered. + // + int RPC_S_NO_INTERFACES = 1817; + // + // MessageId: RPC_S_CALL_CANCELLED + // + // MessageText: + // + // The remote procedure call was cancelled. + // + int RPC_S_CALL_CANCELLED = 1818; + // + // MessageId: RPC_S_BINDING_INCOMPLETE + // + // MessageText: + // + // The binding handle does not contain all required information. + // + int RPC_S_BINDING_INCOMPLETE = 1819; + // + // MessageId: RPC_S_COMM_FAILURE + // + // MessageText: + // + // A communications failure occurred during a remote procedure call. + // + int RPC_S_COMM_FAILURE = 1820; + // + // MessageId: RPC_S_UNSUPPORTED_AUTHN_LEVEL + // + // MessageText: + // + // The requested authentication level is not supported. + // + int RPC_S_UNSUPPORTED_AUTHN_LEVEL = 1821; + // + // MessageId: RPC_S_NO_PRINC_NAME + // + // MessageText: + // + // No principal name registered. + // + int RPC_S_NO_PRINC_NAME = 1822; + // + // MessageId: RPC_S_NOT_RPC_ERROR + // + // MessageText: + // + // The error specified is not a valid Windows RPC error code. + // + int RPC_S_NOT_RPC_ERROR = 1823; + // + // MessageId: RPC_S_UUID_LOCAL_ONLY + // + // MessageText: + // + // A UUID that is valid only on this computer has been allocated. + // + int RPC_S_UUID_LOCAL_ONLY = 1824; + // + // MessageId: RPC_S_SEC_PKG_ERROR + // + // MessageText: + // + // A security package specific error occurred. + // + int RPC_S_SEC_PKG_ERROR = 1825; + // + // MessageId: RPC_S_NOT_CANCELLED + // + // MessageText: + // + // Thread is not canceled. + // + int RPC_S_NOT_CANCELLED = 1826; + // + // MessageId: RPC_X_INVALID_ES_ACTION + // + // MessageText: + // + // Invalid operation on the encoding/decoding handle. + // + int RPC_X_INVALID_ES_ACTION = 1827; + // + // MessageId: RPC_X_WRONG_ES_VERSION + // + // MessageText: + // + // Incompatible version of the serializing package. + // + int RPC_X_WRONG_ES_VERSION = 1828; + // + // MessageId: RPC_X_WRONG_STUB_VERSION + // + // MessageText: + // + // Incompatible version of the RPC stub. + // + int RPC_X_WRONG_STUB_VERSION = 1829; + // + // MessageId: RPC_X_INVALID_PIPE_OBJECT + // + // MessageText: + // + // The RPC pipe object is invalid or corrupted. + // + int RPC_X_INVALID_PIPE_OBJECT = 1830; + // + // MessageId: RPC_X_WRONG_PIPE_ORDER + // + // MessageText: + // + // An invalid operation was attempted on an RPC pipe object. + // + int RPC_X_WRONG_PIPE_ORDER = 1831; + // + // MessageId: RPC_X_WRONG_PIPE_VERSION + // + // MessageText: + // + // Unsupported RPC pipe version. + // + int RPC_X_WRONG_PIPE_VERSION = 1832; + // + // MessageId: RPC_S_GROUP_MEMBER_NOT_FOUND + // + // MessageText: + // + // The group member was not found. + // + int RPC_S_GROUP_MEMBER_NOT_FOUND = 1898; + // + // MessageId: EPT_S_CANT_CREATE + // + // MessageText: + // + // The endpoint mapper database entry could not be created. + // + int EPT_S_CANT_CREATE = 1899; + // + // MessageId: RPC_S_INVALID_OBJECT + // + // MessageText: + // + // The object universal unique identifier (UUID) is the nil UUID. + // + int RPC_S_INVALID_OBJECT = 1900; + // + // MessageId: ERROR_INVALID_TIME + // + // MessageText: + // + // The specified time is invalid. + // + int ERROR_INVALID_TIME = 1901; + // + // MessageId: ERROR_INVALID_FORM_NAME + // + // MessageText: + // + // The specified form name is invalid. + // + int ERROR_INVALID_FORM_NAME = 1902; + // + // MessageId: ERROR_INVALID_FORM_SIZE + // + // MessageText: + // + // The specified form size is invalid. + // + int ERROR_INVALID_FORM_SIZE = 1903; + // + // MessageId: ERROR_ALREADY_WAITING + // + // MessageText: + // + // The specified printer handle is already being waited on + // + int ERROR_ALREADY_WAITING = 1904; + // + // MessageId: ERROR_PRINTER_DELETED + // + // MessageText: + // + // The specified printer has been deleted. + // + int ERROR_PRINTER_DELETED = 1905; + // + // MessageId: ERROR_INVALID_PRINTER_STATE + // + // MessageText: + // + // The state of the printer is invalid. + // + int ERROR_INVALID_PRINTER_STATE = 1906; + // + // MessageId: ERROR_PASSWORD_MUST_CHANGE + // + // MessageText: + // + // The user's password must be changed before logging on the first time. + // + int ERROR_PASSWORD_MUST_CHANGE = 1907; + // + // MessageId: ERROR_DOMAIN_CONTROLLER_NOT_FOUND + // + // MessageText: + // + // Could not find the domain controller for this domain. + // + int ERROR_DOMAIN_CONTROLLER_NOT_FOUND = 1908; + // + // MessageId: ERROR_ACCOUNT_LOCKED_OUT + // + // MessageText: + // + // The referenced account is currently locked out and may not be logged on + // to. + // + int ERROR_ACCOUNT_LOCKED_OUT = 1909; + // + // MessageId: OR_INVALID_OXID + // + // MessageText: + // + // The object exporter specified was not found. + // + int OR_INVALID_OXID = 1910; + // + // MessageId: OR_INVALID_OID + // + // MessageText: + // + // The object specified was not found. + // + int OR_INVALID_OID = 1911; + // + // MessageId: OR_INVALID_SET + // + // MessageText: + // + // The object resolver set specified was not found. + // + int OR_INVALID_SET = 1912; + // + // MessageId: RPC_S_SEND_INCOMPLETE + // + // MessageText: + // + // Some data remains to be sent in the request buffer. + // + int RPC_S_SEND_INCOMPLETE = 1913; + // + // MessageId: RPC_S_INVALID_ASYNC_HANDLE + // + // MessageText: + // + // Invalid asynchronous remote procedure call handle. + // + int RPC_S_INVALID_ASYNC_HANDLE = 1914; + // + // MessageId: RPC_S_INVALID_ASYNC_CALL + // + // MessageText: + // + // Invalid asynchronous RPC call handle for this operation. + // + int RPC_S_INVALID_ASYNC_CALL = 1915; + // + // MessageId: RPC_X_PIPE_CLOSED + // + // MessageText: + // + // The RPC pipe object has already been closed. + // + int RPC_X_PIPE_CLOSED = 1916; + // + // MessageId: RPC_X_PIPE_DISCIPLINE_ERROR + // + // MessageText: + // + // The RPC call completed before all pipes were processed. + // + int RPC_X_PIPE_DISCIPLINE_ERROR = 1917; + // + // MessageId: RPC_X_PIPE_EMPTY + // + // MessageText: + // + // No more data is available from the RPC pipe. + // + int RPC_X_PIPE_EMPTY = 1918; + // + // MessageId: ERROR_NO_SITENAME + // + // MessageText: + // + // No site name is available for this machine. + // + int ERROR_NO_SITENAME = 1919; + // + // MessageId: ERROR_CANT_ACCESS_FILE + // + // MessageText: + // + // The file cannot be accessed by the system. + // + int ERROR_CANT_ACCESS_FILE = 1920; + // + // MessageId: ERROR_CANT_RESOLVE_FILENAME + // + // MessageText: + // + // The name of the file cannot be resolved by the system. + // + int ERROR_CANT_RESOLVE_FILENAME = 1921; + // + // MessageId: RPC_S_ENTRY_TYPE_MISMATCH + // + // MessageText: + // + // The entry is not of the expected type. + // + int RPC_S_ENTRY_TYPE_MISMATCH = 1922; + // + // MessageId: RPC_S_NOT_ALL_OBJS_EXPORTED + // + // MessageText: + // + // Not all object UUIDs could be exported to the specified entry. + // + int RPC_S_NOT_ALL_OBJS_EXPORTED = 1923; + // + // MessageId: RPC_S_INTERFACE_NOT_EXPORTED + // + // MessageText: + // + // Interface could not be exported to the specified entry. + // + int RPC_S_INTERFACE_NOT_EXPORTED = 1924; + // + // MessageId: RPC_S_PROFILE_NOT_ADDED + // + // MessageText: + // + // The specified profile entry could not be added. + // + int RPC_S_PROFILE_NOT_ADDED = 1925; + // + // MessageId: RPC_S_PRF_ELT_NOT_ADDED + // + // MessageText: + // + // The specified profile element could not be added. + // + int RPC_S_PRF_ELT_NOT_ADDED = 1926; + // + // MessageId: RPC_S_PRF_ELT_NOT_REMOVED + // + // MessageText: + // + // The specified profile element could not be removed. + // + int RPC_S_PRF_ELT_NOT_REMOVED = 1927; + // + // MessageId: RPC_S_GRP_ELT_NOT_ADDED + // + // MessageText: + // + // The group element could not be added. + // + int RPC_S_GRP_ELT_NOT_ADDED = 1928; + // + // MessageId: RPC_S_GRP_ELT_NOT_REMOVED + // + // MessageText: + // + // The group element could not be removed. + // + int RPC_S_GRP_ELT_NOT_REMOVED = 1929; + // + // MessageId: ERROR_KM_DRIVER_BLOCKED + // + // MessageText: + // + // The printer driver is not compatible with a policy enabled on your + // computer that blocks NT=4.0 drivers. + // + int ERROR_KM_DRIVER_BLOCKED = 1930; + // + // MessageId: ERROR_CONTEXT_EXPIRED + // + // MessageText: + // + // The context has expired and can no longer be used. + // + int ERROR_CONTEXT_EXPIRED = 1931; + // + // MessageId: ERROR_PER_USER_TRUST_QUOTA_EXCEEDED + // + // MessageText: + // + // The current user's delegated trust creation quota has been exceeded. + // + int ERROR_PER_USER_TRUST_QUOTA_EXCEEDED = 1932; + // + // MessageId: ERROR_ALL_USER_TRUST_QUOTA_EXCEEDED + // + // MessageText: + // + // The total delegated trust creation quota has been exceeded. + // + int ERROR_ALL_USER_TRUST_QUOTA_EXCEEDED = 1933; + // + // MessageId: ERROR_USER_DELETE_TRUST_QUOTA_EXCEEDED + // + // MessageText: + // + // The current user's delegated trust deletion quota has been exceeded. + // + int ERROR_USER_DELETE_TRUST_QUOTA_EXCEEDED = 1934; + // + // MessageId: ERROR_AUTHENTICATION_FIREWALL_FAILED + // + // MessageText: + // + // Logon Failure: The machine you are logging onto is protected by an + // authentication firewall. The specified account is not allowed to + // authenticate to the machine. + // + int ERROR_AUTHENTICATION_FIREWALL_FAILED = 1935; + // + // MessageId: ERROR_REMOTE_PRINT_CONNECTIONS_BLOCKED + // + // MessageText: + // + // Remote connections to the Print Spooler are blocked by a policy set on + // your machine. + // + int ERROR_REMOTE_PRINT_CONNECTIONS_BLOCKED = 1936; + // + // MessageId: ERROR_NTLM_BLOCKED + // + // MessageText: + // + // Logon Failure: Authentication failed because NTLM authentication has been + // disabled. + // + int ERROR_NTLM_BLOCKED = 1937; + // ///////////////////////////////////////////////// + // =// + // =OpenGL Error codes=// + // =// + // =2000 to=2009=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_INVALID_PIXEL_FORMAT + // + // MessageText: + // + // The pixel format is invalid. + // + int ERROR_INVALID_PIXEL_FORMAT = 2000; + // + // MessageId: ERROR_BAD_DRIVER + // + // MessageText: + // + // The specified driver is invalid. + // + int ERROR_BAD_DRIVER = 2001; + // + // MessageId: ERROR_INVALID_WINDOW_STYLE + // + // MessageText: + // + // The window style or class attribute is invalid for this operation. + // + int ERROR_INVALID_WINDOW_STYLE = 2002; + // + // MessageId: ERROR_METAFILE_NOT_SUPPORTED + // + // MessageText: + // + // The requested metafile operation is not supported. + // + int ERROR_METAFILE_NOT_SUPPORTED = 2003; + // + // MessageId: ERROR_TRANSFORM_NOT_SUPPORTED + // + // MessageText: + // + // The requested transformation operation is not supported. + // + int ERROR_TRANSFORM_NOT_SUPPORTED = 2004; + // + // MessageId: ERROR_CLIPPING_NOT_SUPPORTED + // + // MessageText: + // + // The requested clipping operation is not supported. + // + int ERROR_CLIPPING_NOT_SUPPORTED = 2005; + // ///////////////////////////////////////////////// + // =// + // Image Color Management Error codes // + // =// + // =2010 to=2049=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_INVALID_CMM + // + // MessageText: + // + // The specified color management module is invalid. + // + int ERROR_INVALID_CMM = 2010; + // + // MessageId: ERROR_INVALID_PROFILE + // + // MessageText: + // + // The specified color profile is invalid. + // + int ERROR_INVALID_PROFILE = 2011; + // + // MessageId: ERROR_TAG_NOT_FOUND + // + // MessageText: + // + // The specified tag was not found. + // + int ERROR_TAG_NOT_FOUND = 2012; + // + // MessageId: ERROR_TAG_NOT_PRESENT + // + // MessageText: + // + // A required tag is not present. + // + int ERROR_TAG_NOT_PRESENT = 2013; + // + // MessageId: ERROR_DUPLICATE_TAG + // + // MessageText: + // + // The specified tag is already present. + // + int ERROR_DUPLICATE_TAG = 2014; + // + // MessageId: ERROR_PROFILE_NOT_ASSOCIATED_WITH_DEVICE + // + // MessageText: + // + // The specified color profile is not associated with the specified device. + // + int ERROR_PROFILE_NOT_ASSOCIATED_WITH_DEVICE = 2015; + // + // MessageId: ERROR_PROFILE_NOT_FOUND + // + // MessageText: + // + // The specified color profile was not found. + // + int ERROR_PROFILE_NOT_FOUND = 2016; + // + // MessageId: ERROR_INVALID_COLORSPACE + // + // MessageText: + // + // The specified color space is invalid. + // + int ERROR_INVALID_COLORSPACE = 2017; + // + // MessageId: ERROR_ICM_NOT_ENABLED + // + // MessageText: + // + // Image Color Management is not enabled. + // + int ERROR_ICM_NOT_ENABLED = 2018; + // + // MessageId: ERROR_DELETING_ICM_XFORM + // + // MessageText: + // + // There was an error while deleting the color transform. + // + int ERROR_DELETING_ICM_XFORM = 2019; + // + // MessageId: ERROR_INVALID_TRANSFORM + // + // MessageText: + // + // The specified color transform is invalid. + // + int ERROR_INVALID_TRANSFORM = 2020; + // + // MessageId: ERROR_COLORSPACE_MISMATCH + // + // MessageText: + // + // The specified transform does not match the bitmap's color space. + // + int ERROR_COLORSPACE_MISMATCH = 2021; + // + // MessageId: ERROR_INVALID_COLORINDEX + // + // MessageText: + // + // The specified named color index is not present in the profile. + // + int ERROR_INVALID_COLORINDEX = 2022; + // + // MessageId: ERROR_PROFILE_DOES_NOT_MATCH_DEVICE + // + // MessageText: + // + // The specified profile is intended for a device of a different type than + // the specified device. + // + int ERROR_PROFILE_DOES_NOT_MATCH_DEVICE = 2023; + // ///////////////////////////////////////////////// + // =// + // =Winnet32 Error codes=// + // =// + // =2100 to=2999=// + // =// + // The range=2100 through=2999 is reserved for // + // network status codes. See lmerr.h for a // + // complete listing=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_CONNECTED_OTHER_PASSWORD + // + // MessageText: + // + // The network connection was made successfully, but the user had to be + // prompted for a password other than the one originally specified. + // + int ERROR_CONNECTED_OTHER_PASSWORD = 2108; + // + // MessageId: ERROR_CONNECTED_OTHER_PASSWORD_DEFAULT + // + // MessageText: + // + // The network connection was made successfully using default credentials. + // + int ERROR_CONNECTED_OTHER_PASSWORD_DEFAULT = 2109; + // + // MessageId: ERROR_BAD_USERNAME + // + // MessageText: + // + // The specified username is invalid. + // + int ERROR_BAD_USERNAME = 2202; + // + // MessageId: ERROR_NOT_CONNECTED + // + // MessageText: + // + // This network connection does not exist. + // + int ERROR_NOT_CONNECTED = 2250; + // + // MessageId: ERROR_OPEN_FILES + // + // MessageText: + // + // This network connection has files open or requests pending. + // + int ERROR_OPEN_FILES = 2401; + // + // MessageId: ERROR_ACTIVE_CONNECTIONS + // + // MessageText: + // + // Active connections still exist. + // + int ERROR_ACTIVE_CONNECTIONS = 2402; + // + // MessageId: ERROR_DEVICE_IN_USE + // + // MessageText: + // + // The device is in use by an active process and cannot be disconnected. + // + int ERROR_DEVICE_IN_USE = 2404; + // ///////////////////////////////////////////////// + // =// + // =Win32 Spooler Error codes=// + // =// + // =3000 to=3049=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_UNKNOWN_PRINT_MONITOR + // + // MessageText: + // + // The specified print monitor is unknown. + // + int ERROR_UNKNOWN_PRINT_MONITOR = 3000; + // + // MessageId: ERROR_PRINTER_DRIVER_IN_USE + // + // MessageText: + // + // The specified printer driver is currently in use. + // + int ERROR_PRINTER_DRIVER_IN_USE = 3001; + // + // MessageId: ERROR_SPOOL_FILE_NOT_FOUND + // + // MessageText: + // + // The spool file was not found. + // + int ERROR_SPOOL_FILE_NOT_FOUND = 3002; + // + // MessageId: ERROR_SPL_NO_STARTDOC + // + // MessageText: + // + // A StartDocPrinter call was not issued. + // + int ERROR_SPL_NO_STARTDOC = 3003; + // + // MessageId: ERROR_SPL_NO_ADDJOB + // + // MessageText: + // + // An AddJob call was not issued. + // + int ERROR_SPL_NO_ADDJOB = 3004; + // + // MessageId: ERROR_PRINT_PROCESSOR_ALREADY_INSTALLED + // + // MessageText: + // + // The specified print processor has already been installed. + // + int ERROR_PRINT_PROCESSOR_ALREADY_INSTALLED = 3005; + // + // MessageId: ERROR_PRINT_MONITOR_ALREADY_INSTALLED + // + // MessageText: + // + // The specified print monitor has already been installed. + // + int ERROR_PRINT_MONITOR_ALREADY_INSTALLED = 3006; + // + // MessageId: ERROR_INVALID_PRINT_MONITOR + // + // MessageText: + // + // The specified print monitor does not have the required functions. + // + int ERROR_INVALID_PRINT_MONITOR = 3007; + // + // MessageId: ERROR_PRINT_MONITOR_IN_USE + // + // MessageText: + // + // The specified print monitor is currently in use. + // + int ERROR_PRINT_MONITOR_IN_USE = 3008; + // + // MessageId: ERROR_PRINTER_HAS_JOBS_QUEUED + // + // MessageText: + // + // The requested operation is not allowed when there are jobs queued to the + // printer. + // + int ERROR_PRINTER_HAS_JOBS_QUEUED = 3009; + // + // MessageId: ERROR_SUCCESS_REBOOT_REQUIRED + // + // MessageText: + // + // The requested operation is successful. Changes will not be effective + // until the system is rebooted. + // + int ERROR_SUCCESS_REBOOT_REQUIRED = 3010; + // + // MessageId: ERROR_SUCCESS_RESTART_REQUIRED + // + // MessageText: + // + // The requested operation is successful. Changes will not be effective + // until the service is restarted. + // + int ERROR_SUCCESS_RESTART_REQUIRED = 3011; + // + // MessageId: ERROR_PRINTER_NOT_FOUND + // + // MessageText: + // + // No printers were found. + // + int ERROR_PRINTER_NOT_FOUND = 3012; + // + // MessageId: ERROR_PRINTER_DRIVER_WARNED + // + // MessageText: + // + // The printer driver is known to be unreliable. + // + int ERROR_PRINTER_DRIVER_WARNED = 3013; + // + // MessageId: ERROR_PRINTER_DRIVER_BLOCKED + // + // MessageText: + // + // The printer driver is known to harm the system. + // + int ERROR_PRINTER_DRIVER_BLOCKED = 3014; + // + // MessageId: ERROR_PRINTER_DRIVER_PACKAGE_IN_USE + // + // MessageText: + // + // The specified printer driver package is currently in use. + // + int ERROR_PRINTER_DRIVER_PACKAGE_IN_USE = 3015; + // + // MessageId: ERROR_CORE_DRIVER_PACKAGE_NOT_FOUND + // + // MessageText: + // + // Unable to find a core driver package that is required by the printer + // driver package. + // + int ERROR_CORE_DRIVER_PACKAGE_NOT_FOUND = 3016; + // + // MessageId: ERROR_FAIL_REBOOT_REQUIRED + // + // MessageText: + // + // The requested operation failed. A system reboot is required to roll back + // changes made. + // + int ERROR_FAIL_REBOOT_REQUIRED = 3017; + // + // MessageId: ERROR_FAIL_REBOOT_INITIATED + // + // MessageText: + // + // The requested operation failed. A system reboot has been initiated to + // roll back changes made. + // + int ERROR_FAIL_REBOOT_INITIATED = 3018; + // + // MessageId: ERROR_PRINTER_DRIVER_DOWNLOAD_NEEDED + // + // MessageText: + // + // The specified printer driver was not found on the system and needs to be + // downloaded. + // + int ERROR_PRINTER_DRIVER_DOWNLOAD_NEEDED = 3019; + // + // MessageId: ERROR_PRINT_JOB_RESTART_REQUIRED + // + // MessageText: + // + // The requested print job has failed to print. A print system update + // requires the job to be resubmitted. + // + int ERROR_PRINT_JOB_RESTART_REQUIRED = 3020; + // ///////////////////////////////////////////////// + // =// + // =Available=// + // =// + // =3050 to=3899=// + // ///////////////////////////////////////////////// + // ///////////////////////////////////////////////// + // =// + // =IO Error Codes=// + // =// + // =3900 to=3999=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_IO_REISSUE_AS_CACHED + // + // MessageText: + // + // Reissue the given operation as a cached IO operation + // + int ERROR_IO_REISSUE_AS_CACHED = 3950; + // ///////////////////////////////////////////////// + // =// + // =Wins Error codes=// + // =// + // =4000 to=4049=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_WINS_INTERNAL + // + // MessageText: + // + // WINS encountered an error while processing the command. + // + int ERROR_WINS_INTERNAL = 4000; + // + // MessageId: ERROR_CAN_NOT_DEL_LOCAL_WINS + // + // MessageText: + // + // The local WINS cannot be deleted. + // + int ERROR_CAN_NOT_DEL_LOCAL_WINS = 4001; + // + // MessageId: ERROR_STATIC_INIT + // + // MessageText: + // + // The importation from the file failed. + // + int ERROR_STATIC_INIT = 4002; + // + // MessageId: ERROR_INC_BACKUP + // + // MessageText: + // + // The backup failed. Was a full backup done before? + // + int ERROR_INC_BACKUP = 4003; + // + // MessageId: ERROR_FULL_BACKUP + // + // MessageText: + // + // The backup failed. Check the directory to which you are backing the + // database. + // + int ERROR_FULL_BACKUP = 4004; + // + // MessageId: ERROR_REC_NON_EXISTENT + // + // MessageText: + // + // The name does not exist in the WINS database. + // + int ERROR_REC_NON_EXISTENT = 4005; + // + // MessageId: ERROR_RPL_NOT_ALLOWED + // + // MessageText: + // + // Replication with a nonconfigured partner is not allowed. + // + int ERROR_RPL_NOT_ALLOWED = 4006; + // ///////////////////////////////////////////////// + // =// + // =Available=// + // =// + // =4050 to=4099=// + // ///////////////////////////////////////////////// + // ///////////////////////////////////////////////// + // =// + // =DHCP Error codes=// + // =// + // =4100 to=4149=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_DHCP_ADDRESS_CONFLICT + // + // MessageText: + // + // The DHCP client has obtained an IP address that is already in use on the + // network. The local interface will be disabled until the DHCP client can + // obtain a new address. + // + int ERROR_DHCP_ADDRESS_CONFLICT = 4100; + // ///////////////////////////////////////////////// + // =// + // =Available=// + // =// + // =4150 to=4199=// + // ///////////////////////////////////////////////// + // ///////////////////////////////////////////////// + // =// + // =WMI Error codes=// + // =// + // =4200 to=4249=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_WMI_GUID_NOT_FOUND + // + // MessageText: + // + // The GUID passed was not recognized as valid by a WMI data provider. + // + int ERROR_WMI_GUID_NOT_FOUND = 4200; + // + // MessageId: ERROR_WMI_INSTANCE_NOT_FOUND + // + // MessageText: + // + // The instance name passed was not recognized as valid by a WMI data + // provider. + // + int ERROR_WMI_INSTANCE_NOT_FOUND = 4201; + // + // MessageId: ERROR_WMI_ITEMID_NOT_FOUND + // + // MessageText: + // + // The data item ID passed was not recognized as valid by a WMI data + // provider. + // + int ERROR_WMI_ITEMID_NOT_FOUND = 4202; + // + // MessageId: ERROR_WMI_TRY_AGAIN + // + // MessageText: + // + // The WMI request could not be completed and should be retried. + // + int ERROR_WMI_TRY_AGAIN = 4203; + // + // MessageId: ERROR_WMI_DP_NOT_FOUND + // + // MessageText: + // + // The WMI data provider could not be located. + // + int ERROR_WMI_DP_NOT_FOUND = 4204; + // + // MessageId: ERROR_WMI_UNRESOLVED_INSTANCE_REF + // + // MessageText: + // + // The WMI data provider references an instance set that has not been + // registered. + // + int ERROR_WMI_UNRESOLVED_INSTANCE_REF = 4205; + // + // MessageId: ERROR_WMI_ALREADY_ENABLED + // + // MessageText: + // + // The WMI data block or event notification has already been enabled. + // + int ERROR_WMI_ALREADY_ENABLED = 4206; + // + // MessageId: ERROR_WMI_GUID_DISCONNECTED + // + // MessageText: + // + // The WMI data block is no longer available. + // + int ERROR_WMI_GUID_DISCONNECTED = 4207; + // + // MessageId: ERROR_WMI_SERVER_UNAVAILABLE + // + // MessageText: + // + // The WMI data service is not available. + // + int ERROR_WMI_SERVER_UNAVAILABLE = 4208; + // + // MessageId: ERROR_WMI_DP_FAILED + // + // MessageText: + // + // The WMI data provider failed to carry out the request. + // + int ERROR_WMI_DP_FAILED = 4209; + // + // MessageId: ERROR_WMI_INVALID_MOF + // + // MessageText: + // + // The WMI MOF information is not valid. + // + int ERROR_WMI_INVALID_MOF = 4210; + // + // MessageId: ERROR_WMI_INVALID_REGINFO + // + // MessageText: + // + // The WMI registration information is not valid. + // + int ERROR_WMI_INVALID_REGINFO = 4211; + // + // MessageId: ERROR_WMI_ALREADY_DISABLED + // + // MessageText: + // + // The WMI data block or event notification has already been disabled. + // + int ERROR_WMI_ALREADY_DISABLED = 4212; + // + // MessageId: ERROR_WMI_READ_ONLY + // + // MessageText: + // + // The WMI data item or data block is read only. + // + int ERROR_WMI_READ_ONLY = 4213; + // + // MessageId: ERROR_WMI_SET_FAILURE + // + // MessageText: + // + // The WMI data item or data block could not be changed. + // + int ERROR_WMI_SET_FAILURE = 4214; + // ///////////////////////////////////////////////// + // =// + // =Available=// + // =// + // =4250 to=4299=// + // ///////////////////////////////////////////////// + // ///////////////////////////////////////////////// + // =// + // =RSM (Media Services) Error codes // + // =// + // =4300 to=4349=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_INVALID_MEDIA + // + // MessageText: + // + // The media identifier does not represent a valid medium. + // + int ERROR_INVALID_MEDIA = 4300; + // + // MessageId: ERROR_INVALID_LIBRARY + // + // MessageText: + // + // The library identifier does not represent a valid library. + // + int ERROR_INVALID_LIBRARY = 4301; + // + // MessageId: ERROR_INVALID_MEDIA_POOL + // + // MessageText: + // + // The media pool identifier does not represent a valid media pool. + // + int ERROR_INVALID_MEDIA_POOL = 4302; + // + // MessageId: ERROR_DRIVE_MEDIA_MISMATCH + // + // MessageText: + // + // The drive and medium are not compatible or exist in different libraries. + // + int ERROR_DRIVE_MEDIA_MISMATCH = 4303; + // + // MessageId: ERROR_MEDIA_OFFLINE + // + // MessageText: + // + // The medium currently exists in an offline library and must be online to + // perform this operation. + // + int ERROR_MEDIA_OFFLINE = 4304; + // + // MessageId: ERROR_LIBRARY_OFFLINE + // + // MessageText: + // + // The operation cannot be performed on an offline library. + // + int ERROR_LIBRARY_OFFLINE = 4305; + // + // MessageId: ERROR_EMPTY + // + // MessageText: + // + // The library, drive, or media pool is empty. + // + int ERROR_EMPTY = 4306; + // + // MessageId: ERROR_NOT_EMPTY + // + // MessageText: + // + // The library, drive, or media pool must be empty to perform this + // operation. + // + int ERROR_NOT_EMPTY = 4307; + // + // MessageId: ERROR_MEDIA_UNAVAILABLE + // + // MessageText: + // + // No media is currently available in this media pool or library. + // + int ERROR_MEDIA_UNAVAILABLE = 4308; + // + // MessageId: ERROR_RESOURCE_DISABLED + // + // MessageText: + // + // A resource required for this operation is disabled. + // + int ERROR_RESOURCE_DISABLED = 4309; + // + // MessageId: ERROR_INVALID_CLEANER + // + // MessageText: + // + // The media identifier does not represent a valid cleaner. + // + int ERROR_INVALID_CLEANER = 4310; + // + // MessageId: ERROR_UNABLE_TO_CLEAN + // + // MessageText: + // + // The drive cannot be cleaned or does not support cleaning. + // + int ERROR_UNABLE_TO_CLEAN = 4311; + // + // MessageId: ERROR_OBJECT_NOT_FOUND + // + // MessageText: + // + // The object identifier does not represent a valid object. + // + int ERROR_OBJECT_NOT_FOUND = 4312; + // + // MessageId: ERROR_DATABASE_FAILURE + // + // MessageText: + // + // Unable to read from or write to the database. + // + int ERROR_DATABASE_FAILURE = 4313; + // + // MessageId: ERROR_DATABASE_FULL + // + // MessageText: + // + // The database is full. + // + int ERROR_DATABASE_FULL = 4314; + // + // MessageId: ERROR_MEDIA_INCOMPATIBLE + // + // MessageText: + // + // The medium is not compatible with the device or media pool. + // + int ERROR_MEDIA_INCOMPATIBLE = 4315; + // + // MessageId: ERROR_RESOURCE_NOT_PRESENT + // + // MessageText: + // + // The resource required for this operation does not exist. + // + int ERROR_RESOURCE_NOT_PRESENT = 4316; + // + // MessageId: ERROR_INVALID_OPERATION + // + // MessageText: + // + // The operation identifier is not valid. + // + int ERROR_INVALID_OPERATION = 4317; + // + // MessageId: ERROR_MEDIA_NOT_AVAILABLE + // + // MessageText: + // + // The media is not mounted or ready for use. + // + int ERROR_MEDIA_NOT_AVAILABLE = 4318; + // + // MessageId: ERROR_DEVICE_NOT_AVAILABLE + // + // MessageText: + // + // The device is not ready for use. + // + int ERROR_DEVICE_NOT_AVAILABLE = 4319; + // + // MessageId: ERROR_REQUEST_REFUSED + // + // MessageText: + // + // The operator or administrator has refused the request. + // + int ERROR_REQUEST_REFUSED = 4320; + // + // MessageId: ERROR_INVALID_DRIVE_OBJECT + // + // MessageText: + // + // The drive identifier does not represent a valid drive. + // + int ERROR_INVALID_DRIVE_OBJECT = 4321; + // + // MessageId: ERROR_LIBRARY_FULL + // + // MessageText: + // + // Library is full. No slot is available for use. + // + int ERROR_LIBRARY_FULL = 4322; + // + // MessageId: ERROR_MEDIUM_NOT_ACCESSIBLE + // + // MessageText: + // + // The transport cannot access the medium. + // + int ERROR_MEDIUM_NOT_ACCESSIBLE = 4323; + // + // MessageId: ERROR_UNABLE_TO_LOAD_MEDIUM + // + // MessageText: + // + // Unable to load the medium into the drive. + // + int ERROR_UNABLE_TO_LOAD_MEDIUM = 4324; + // + // MessageId: ERROR_UNABLE_TO_INVENTORY_DRIVE + // + // MessageText: + // + // Unable to retrieve the drive status. + // + int ERROR_UNABLE_TO_INVENTORY_DRIVE = 4325; + // + // MessageId: ERROR_UNABLE_TO_INVENTORY_SLOT + // + // MessageText: + // + // Unable to retrieve the slot status. + // + int ERROR_UNABLE_TO_INVENTORY_SLOT = 4326; + // + // MessageId: ERROR_UNABLE_TO_INVENTORY_TRANSPORT + // + // MessageText: + // + // Unable to retrieve status about the transport. + // + int ERROR_UNABLE_TO_INVENTORY_TRANSPORT = 4327; + // + // MessageId: ERROR_TRANSPORT_FULL + // + // MessageText: + // + // Cannot use the transport because it is already in use. + // + int ERROR_TRANSPORT_FULL = 4328; + // + // MessageId: ERROR_CONTROLLING_IEPORT + // + // MessageText: + // + // Unable to open or close the inject/eject port. + // + int ERROR_CONTROLLING_IEPORT = 4329; + // + // MessageId: ERROR_UNABLE_TO_EJECT_MOUNTED_MEDIA + // + // MessageText: + // + // Unable to eject the medium because it is in a drive. + // + int ERROR_UNABLE_TO_EJECT_MOUNTED_MEDIA = 4330; + // + // MessageId: ERROR_CLEANER_SLOT_SET + // + // MessageText: + // + // A cleaner slot is already reserved. + // + int ERROR_CLEANER_SLOT_SET = 4331; + // + // MessageId: ERROR_CLEANER_SLOT_NOT_SET + // + // MessageText: + // + // A cleaner slot is not reserved. + // + int ERROR_CLEANER_SLOT_NOT_SET = 4332; + // + // MessageId: ERROR_CLEANER_CARTRIDGE_SPENT + // + // MessageText: + // + // The cleaner cartridge has performed the maximum number of drive + // cleanings. + // + int ERROR_CLEANER_CARTRIDGE_SPENT = 4333; + // + // MessageId: ERROR_UNEXPECTED_OMID + // + // MessageText: + // + // Unexpected on-medium identifier. + // + int ERROR_UNEXPECTED_OMID = 4334; + // + // MessageId: ERROR_CANT_DELETE_LAST_ITEM + // + // MessageText: + // + // The last remaining item in this group or resource cannot be deleted. + // + int ERROR_CANT_DELETE_LAST_ITEM = 4335; + // + // MessageId: ERROR_MESSAGE_EXCEEDS_MAX_SIZE + // + // MessageText: + // + // The message provided exceeds the maximum size allowed for this parameter. + // + int ERROR_MESSAGE_EXCEEDS_MAX_SIZE = 4336; + // + // MessageId: ERROR_VOLUME_CONTAINS_SYS_FILES + // + // MessageText: + // + // The volume contains system or paging files. + // + int ERROR_VOLUME_CONTAINS_SYS_FILES = 4337; + // + // MessageId: ERROR_INDIGENOUS_TYPE + // + // MessageText: + // + // The media type cannot be removed from this library since at least one + // drive in the library reports it can support this media type. + // + int ERROR_INDIGENOUS_TYPE = 4338; + // + // MessageId: ERROR_NO_SUPPORTING_DRIVES + // + // MessageText: + // + // This offline media cannot be mounted on this system since no enabled + // drives are present which can be used. + // + int ERROR_NO_SUPPORTING_DRIVES = 4339; + // + // MessageId: ERROR_CLEANER_CARTRIDGE_INSTALLED + // + // MessageText: + // + // A cleaner cartridge is present in the tape library. + // + int ERROR_CLEANER_CARTRIDGE_INSTALLED = 4340; + // + // MessageId: ERROR_IEPORT_FULL + // + // MessageText: + // + // Cannot use the ieport because it is not empty. + // + int ERROR_IEPORT_FULL = 4341; + // ///////////////////////////////////////////////// + // =// + // Remote Storage Service Error codes // + // =// + // =4350 to=4389=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_FILE_OFFLINE + // + // MessageText: + // + // This file is currently not available for use on this computer. + // + int ERROR_FILE_OFFLINE = 4350; + // + // MessageId: ERROR_REMOTE_STORAGE_NOT_ACTIVE + // + // MessageText: + // + // The remote storage service is not operational at this time. + // + int ERROR_REMOTE_STORAGE_NOT_ACTIVE = 4351; + // + // MessageId: ERROR_REMOTE_STORAGE_MEDIA_ERROR + // + // MessageText: + // + // The remote storage service encountered a media error. + // + int ERROR_REMOTE_STORAGE_MEDIA_ERROR = 4352; + // ///////////////////////////////////////////////// + // =// + // =Reparse Point Error codes=// + // =// + // =4390 to=4399=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_NOT_A_REPARSE_POINT + // + // MessageText: + // + // The file or directory is not a reparse point. + // + int ERROR_NOT_A_REPARSE_POINT = 4390; + // + // MessageId: ERROR_REPARSE_ATTRIBUTE_CONFLICT + // + // MessageText: + // + // The reparse point attribute cannot be set because it conflicts with an + // existing attribute. + // + int ERROR_REPARSE_ATTRIBUTE_CONFLICT = 4391; + // + // MessageId: ERROR_INVALID_REPARSE_DATA + // + // MessageText: + // + // The data present in the reparse point buffer is invalid. + // + int ERROR_INVALID_REPARSE_DATA = 4392; + // + // MessageId: ERROR_REPARSE_TAG_INVALID + // + // MessageText: + // + // The tag present in the reparse point buffer is invalid. + // + int ERROR_REPARSE_TAG_INVALID = 4393; + // + // MessageId: ERROR_REPARSE_TAG_MISMATCH + // + // MessageText: + // + // There is a mismatch between the tag specified in the request and the tag + // present in the reparse point. + // + // + int ERROR_REPARSE_TAG_MISMATCH = 4394; + // ///////////////////////////////////////////////// + // =// + // =Available=// + // =// + // =4400 to=4499=// + // ///////////////////////////////////////////////// + // ///////////////////////////////////////////////// + // =// + // Single Instance Store (SIS) Error codes // + // =// + // =4500 to=4549=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_VOLUME_NOT_SIS_ENABLED + // + // MessageText: + // + // Single Instance Storage is not available on this volume. + // + int ERROR_VOLUME_NOT_SIS_ENABLED = 4500; + // ///////////////////////////////////////////////// + // =// + // =Available=// + // =// + // =4550 to=4599=// + // ///////////////////////////////////////////////// + // ///////////////////////////////////////////////// + // =// + // =Cluster Error codes=// + // =// + // =5000 to=5999=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_DEPENDENT_RESOURCE_EXISTS + // + // MessageText: + // + // The operation cannot be completed because other resources are dependent + // on this resource. + // + int ERROR_DEPENDENT_RESOURCE_EXISTS = 5001; + // + // MessageId: ERROR_DEPENDENCY_NOT_FOUND + // + // MessageText: + // + // The cluster resource dependency cannot be found. + // + int ERROR_DEPENDENCY_NOT_FOUND = 5002; + // + // MessageId: ERROR_DEPENDENCY_ALREADY_EXISTS + // + // MessageText: + // + // The cluster resource cannot be made dependent on the specified resource + // because it is already dependent. + // + int ERROR_DEPENDENCY_ALREADY_EXISTS = 5003; + // + // MessageId: ERROR_RESOURCE_NOT_ONLINE + // + // MessageText: + // + // The cluster resource is not online. + // + int ERROR_RESOURCE_NOT_ONLINE = 5004; + // + // MessageId: ERROR_HOST_NODE_NOT_AVAILABLE + // + // MessageText: + // + // A cluster node is not available for this operation. + // + int ERROR_HOST_NODE_NOT_AVAILABLE = 5005; + // + // MessageId: ERROR_RESOURCE_NOT_AVAILABLE + // + // MessageText: + // + // The cluster resource is not available. + // + int ERROR_RESOURCE_NOT_AVAILABLE = 5006; + // + // MessageId: ERROR_RESOURCE_NOT_FOUND + // + // MessageText: + // + // The cluster resource could not be found. + // + int ERROR_RESOURCE_NOT_FOUND = 5007; + // + // MessageId: ERROR_SHUTDOWN_CLUSTER + // + // MessageText: + // + // The cluster is being shut down. + // + int ERROR_SHUTDOWN_CLUSTER = 5008; + // + // MessageId: ERROR_CANT_EVICT_ACTIVE_NODE + // + // MessageText: + // + // A cluster node cannot be evicted from the cluster unless the node is down + // or it is the last node. + // + int ERROR_CANT_EVICT_ACTIVE_NODE = 5009; + // + // MessageId: ERROR_OBJECT_ALREADY_EXISTS + // + // MessageText: + // + // The object already exists. + // + int ERROR_OBJECT_ALREADY_EXISTS = 5010; + // + // MessageId: ERROR_OBJECT_IN_LIST + // + // MessageText: + // + // The object is already in the list. + // + int ERROR_OBJECT_IN_LIST = 5011; + // + // MessageId: ERROR_GROUP_NOT_AVAILABLE + // + // MessageText: + // + // The cluster group is not available for any new requests. + // + int ERROR_GROUP_NOT_AVAILABLE = 5012; + // + // MessageId: ERROR_GROUP_NOT_FOUND + // + // MessageText: + // + // The cluster group could not be found. + // + int ERROR_GROUP_NOT_FOUND = 5013; + // + // MessageId: ERROR_GROUP_NOT_ONLINE + // + // MessageText: + // + // The operation could not be completed because the cluster group is not + // online. + // + int ERROR_GROUP_NOT_ONLINE = 5014; + // + // MessageId: ERROR_HOST_NODE_NOT_RESOURCE_OWNER + // + // MessageText: + // + // The operation failed because either the specified cluster node is not the + // owner of the resource, or the node + // is not a possible owner of the resource. + // + int ERROR_HOST_NODE_NOT_RESOURCE_OWNER = 5015; + // + // MessageId: ERROR_HOST_NODE_NOT_GROUP_OWNER + // + // MessageText: + // + // The operation failed because either the specified cluster node is not the + // owner of the group, or the node + // is not a possible owner of the group. + // + int ERROR_HOST_NODE_NOT_GROUP_OWNER = 5016; + // + // MessageId: ERROR_RESMON_CREATE_FAILED + // + // MessageText: + // + // The cluster resource could not be created in the specified resource + // monitor. + // + int ERROR_RESMON_CREATE_FAILED = 5017; + // + // MessageId: ERROR_RESMON_ONLINE_FAILED + // + // MessageText: + // + // The cluster resource could not be brought online by the resource monitor. + // + int ERROR_RESMON_ONLINE_FAILED = 5018; + // + // MessageId: ERROR_RESOURCE_ONLINE + // + // MessageText: + // + // The operation could not be completed because the cluster resource is + // online. + // + int ERROR_RESOURCE_ONLINE = 5019; + // + // MessageId: ERROR_QUORUM_RESOURCE + // + // MessageText: + // + // The cluster resource could not be deleted or brought offline because it + // is the quorum resource. + // + int ERROR_QUORUM_RESOURCE = 5020; + // + // MessageId: ERROR_NOT_QUORUM_CAPABLE + // + // MessageText: + // + // The cluster could not make the specified resource a quorum resource + // because it is not capable of being a quorum resource. + // + int ERROR_NOT_QUORUM_CAPABLE = 5021; + // + // MessageId: ERROR_CLUSTER_SHUTTING_DOWN + // + // MessageText: + // + // The cluster software is shutting down. + // + int ERROR_CLUSTER_SHUTTING_DOWN = 5022; + // + // MessageId: ERROR_INVALID_STATE + // + // MessageText: + // + // The group or resource is not in the correct state to perform the + // requested operation. + // + int ERROR_INVALID_STATE = 5023; + // + // MessageId: ERROR_RESOURCE_PROPERTIES_STORED + // + // MessageText: + // + // The properties were stored but not all changes will take effect until the + // next time the resource is brought online. + // + int ERROR_RESOURCE_PROPERTIES_STORED = 5024; + // + // MessageId: ERROR_NOT_QUORUM_CLASS + // + // MessageText: + // + // The cluster could not make the specified resource a quorum resource + // because it does not belong to a shared storage class. + // + int ERROR_NOT_QUORUM_CLASS = 5025; + // + // MessageId: ERROR_CORE_RESOURCE + // + // MessageText: + // + // The cluster resource could not be deleted since it is a core resource. + // + int ERROR_CORE_RESOURCE = 5026; + // + // MessageId: ERROR_QUORUM_RESOURCE_ONLINE_FAILED + // + // MessageText: + // + // The quorum resource failed to come online. + // + int ERROR_QUORUM_RESOURCE_ONLINE_FAILED = 5027; + // + // MessageId: ERROR_QUORUMLOG_OPEN_FAILED + // + // MessageText: + // + // The quorum log could not be created or mounted successfully. + // + int ERROR_QUORUMLOG_OPEN_FAILED = 5028; + // + // MessageId: ERROR_CLUSTERLOG_CORRUPT + // + // MessageText: + // + // The cluster log is corrupt. + // + int ERROR_CLUSTERLOG_CORRUPT = 5029; + // + // MessageId: ERROR_CLUSTERLOG_RECORD_EXCEEDS_MAXSIZE + // + // MessageText: + // + // The record could not be written to the cluster log since it exceeds the + // maximum size. + // + int ERROR_CLUSTERLOG_RECORD_EXCEEDS_MAXSIZE = 5030; + // + // MessageId: ERROR_CLUSTERLOG_EXCEEDS_MAXSIZE + // + // MessageText: + // + // The cluster log exceeds its maximum size. + // + int ERROR_CLUSTERLOG_EXCEEDS_MAXSIZE = 5031; + // + // MessageId: ERROR_CLUSTERLOG_CHKPOINT_NOT_FOUND + // + // MessageText: + // + // No checkpoint record was found in the cluster log. + // + int ERROR_CLUSTERLOG_CHKPOINT_NOT_FOUND = 5032; + // + // MessageId: ERROR_CLUSTERLOG_NOT_ENOUGH_SPACE + // + // MessageText: + // + // The minimum required disk space needed for logging is not available. + // + int ERROR_CLUSTERLOG_NOT_ENOUGH_SPACE = 5033; + // + // MessageId: ERROR_QUORUM_OWNER_ALIVE + // + // MessageText: + // + // The cluster node failed to take control of the quorum resource because + // the resource is owned by another active node. + // + int ERROR_QUORUM_OWNER_ALIVE = 5034; + // + // MessageId: ERROR_NETWORK_NOT_AVAILABLE + // + // MessageText: + // + // A cluster network is not available for this operation. + // + int ERROR_NETWORK_NOT_AVAILABLE = 5035; + // + // MessageId: ERROR_NODE_NOT_AVAILABLE + // + // MessageText: + // + // A cluster node is not available for this operation. + // + int ERROR_NODE_NOT_AVAILABLE = 5036; + // + // MessageId: ERROR_ALL_NODES_NOT_AVAILABLE + // + // MessageText: + // + // All cluster nodes must be running to perform this operation. + // + int ERROR_ALL_NODES_NOT_AVAILABLE = 5037; + // + // MessageId: ERROR_RESOURCE_FAILED + // + // MessageText: + // + // A cluster resource failed. + // + int ERROR_RESOURCE_FAILED = 5038; + // + // MessageId: ERROR_CLUSTER_INVALID_NODE + // + // MessageText: + // + // The cluster node is not valid. + // + int ERROR_CLUSTER_INVALID_NODE = 5039; + // + // MessageId: ERROR_CLUSTER_NODE_EXISTS + // + // MessageText: + // + // The cluster node already exists. + // + int ERROR_CLUSTER_NODE_EXISTS = 5040; + // + // MessageId: ERROR_CLUSTER_JOIN_IN_PROGRESS + // + // MessageText: + // + // A node is in the process of joining the cluster. + // + int ERROR_CLUSTER_JOIN_IN_PROGRESS = 5041; + // + // MessageId: ERROR_CLUSTER_NODE_NOT_FOUND + // + // MessageText: + // + // The cluster node was not found. + // + int ERROR_CLUSTER_NODE_NOT_FOUND = 5042; + // + // MessageId: ERROR_CLUSTER_LOCAL_NODE_NOT_FOUND + // + // MessageText: + // + // The cluster local node information was not found. + // + int ERROR_CLUSTER_LOCAL_NODE_NOT_FOUND = 5043; + // + // MessageId: ERROR_CLUSTER_NETWORK_EXISTS + // + // MessageText: + // + // The cluster network already exists. + // + int ERROR_CLUSTER_NETWORK_EXISTS = 5044; + // + // MessageId: ERROR_CLUSTER_NETWORK_NOT_FOUND + // + // MessageText: + // + // The cluster network was not found. + // + int ERROR_CLUSTER_NETWORK_NOT_FOUND = 5045; + // + // MessageId: ERROR_CLUSTER_NETINTERFACE_EXISTS + // + // MessageText: + // + // The cluster network interface already exists. + // + int ERROR_CLUSTER_NETINTERFACE_EXISTS = 5046; + // + // MessageId: ERROR_CLUSTER_NETINTERFACE_NOT_FOUND + // + // MessageText: + // + // The cluster network interface was not found. + // + int ERROR_CLUSTER_NETINTERFACE_NOT_FOUND = 5047; + // + // MessageId: ERROR_CLUSTER_INVALID_REQUEST + // + // MessageText: + // + // The cluster request is not valid for this object. + // + int ERROR_CLUSTER_INVALID_REQUEST = 5048; + // + // MessageId: ERROR_CLUSTER_INVALID_NETWORK_PROVIDER + // + // MessageText: + // + // The cluster network provider is not valid. + // + int ERROR_CLUSTER_INVALID_NETWORK_PROVIDER = 5049; + // + // MessageId: ERROR_CLUSTER_NODE_DOWN + // + // MessageText: + // + // The cluster node is down. + // + int ERROR_CLUSTER_NODE_DOWN = 5050; + // + // MessageId: ERROR_CLUSTER_NODE_UNREACHABLE + // + // MessageText: + // + // The cluster node is not reachable. + // + int ERROR_CLUSTER_NODE_UNREACHABLE = 5051; + // + // MessageId: ERROR_CLUSTER_NODE_NOT_MEMBER + // + // MessageText: + // + // The cluster node is not a member of the cluster. + // + int ERROR_CLUSTER_NODE_NOT_MEMBER = 5052; + // + // MessageId: ERROR_CLUSTER_JOIN_NOT_IN_PROGRESS + // + // MessageText: + // + // A cluster join operation is not in progress. + // + int ERROR_CLUSTER_JOIN_NOT_IN_PROGRESS = 5053; + // + // MessageId: ERROR_CLUSTER_INVALID_NETWORK + // + // MessageText: + // + // The cluster network is not valid. + // + int ERROR_CLUSTER_INVALID_NETWORK = 5054; + // + // MessageId: ERROR_CLUSTER_NODE_UP + // + // MessageText: + // + // The cluster node is up. + // + int ERROR_CLUSTER_NODE_UP = 5056; + // + // MessageId: ERROR_CLUSTER_IPADDR_IN_USE + // + // MessageText: + // + // The cluster IP address is already in use. + // + int ERROR_CLUSTER_IPADDR_IN_USE = 5057; + // + // MessageId: ERROR_CLUSTER_NODE_NOT_PAUSED + // + // MessageText: + // + // The cluster node is not paused. + // + int ERROR_CLUSTER_NODE_NOT_PAUSED = 5058; + // + // MessageId: ERROR_CLUSTER_NO_SECURITY_CONTEXT + // + // MessageText: + // + // No cluster security context is available. + // + int ERROR_CLUSTER_NO_SECURITY_CONTEXT = 5059; + // + // MessageId: ERROR_CLUSTER_NETWORK_NOT_INTERNAL + // + // MessageText: + // + // The cluster network is not configured for internal cluster communication. + // + int ERROR_CLUSTER_NETWORK_NOT_INTERNAL = 5060; + // + // MessageId: ERROR_CLUSTER_NODE_ALREADY_UP + // + // MessageText: + // + // The cluster node is already up. + // + int ERROR_CLUSTER_NODE_ALREADY_UP = 5061; + // + // MessageId: ERROR_CLUSTER_NODE_ALREADY_DOWN + // + // MessageText: + // + // The cluster node is already down. + // + int ERROR_CLUSTER_NODE_ALREADY_DOWN = 5062; + // + // MessageId: ERROR_CLUSTER_NETWORK_ALREADY_ONLINE + // + // MessageText: + // + // The cluster network is already online. + // + int ERROR_CLUSTER_NETWORK_ALREADY_ONLINE = 5063; + // + // MessageId: ERROR_CLUSTER_NETWORK_ALREADY_OFFLINE + // + // MessageText: + // + // The cluster network is already offline. + // + int ERROR_CLUSTER_NETWORK_ALREADY_OFFLINE = 5064; + // + // MessageId: ERROR_CLUSTER_NODE_ALREADY_MEMBER + // + // MessageText: + // + // The cluster node is already a member of the cluster. + // + int ERROR_CLUSTER_NODE_ALREADY_MEMBER = 5065; + // + // MessageId: ERROR_CLUSTER_LAST_INTERNAL_NETWORK + // + // MessageText: + // + // The cluster network is the only one configured for internal cluster + // communication between two or more active cluster nodes. The internal + // communication capability cannot be removed from the network. + // + int ERROR_CLUSTER_LAST_INTERNAL_NETWORK = 5066; + // + // MessageId: ERROR_CLUSTER_NETWORK_HAS_DEPENDENTS + // + // MessageText: + // + // One or more cluster resources depend on the network to provide service to + // clients. The client access capability cannot be removed from the network. + // + int ERROR_CLUSTER_NETWORK_HAS_DEPENDENTS = 5067; + // + // MessageId: ERROR_INVALID_OPERATION_ON_QUORUM + // + // MessageText: + // + // This operation cannot be performed on the cluster resource as it the + // quorum resource. You may not bring the quorum resource offline or modify + // its possible owners list. + // + int ERROR_INVALID_OPERATION_ON_QUORUM = 5068; + // + // MessageId: ERROR_DEPENDENCY_NOT_ALLOWED + // + // MessageText: + // + // The cluster quorum resource is not allowed to have any dependencies. + // + int ERROR_DEPENDENCY_NOT_ALLOWED = 5069; + // + // MessageId: ERROR_CLUSTER_NODE_PAUSED + // + // MessageText: + // + // The cluster node is paused. + // + int ERROR_CLUSTER_NODE_PAUSED = 5070; + // + // MessageId: ERROR_NODE_CANT_HOST_RESOURCE + // + // MessageText: + // + // The cluster resource cannot be brought online. The owner node cannot run + // this resource. + // + int ERROR_NODE_CANT_HOST_RESOURCE = 5071; + // + // MessageId: ERROR_CLUSTER_NODE_NOT_READY + // + // MessageText: + // + // The cluster node is not ready to perform the requested operation. + // + int ERROR_CLUSTER_NODE_NOT_READY = 5072; + // + // MessageId: ERROR_CLUSTER_NODE_SHUTTING_DOWN + // + // MessageText: + // + // The cluster node is shutting down. + // + int ERROR_CLUSTER_NODE_SHUTTING_DOWN = 5073; + // + // MessageId: ERROR_CLUSTER_JOIN_ABORTED + // + // MessageText: + // + // The cluster join operation was aborted. + // + int ERROR_CLUSTER_JOIN_ABORTED = 5074; + // + // MessageId: ERROR_CLUSTER_INCOMPATIBLE_VERSIONS + // + // MessageText: + // + // The cluster join operation failed due to incompatible software versions + // between the joining node and its sponsor. + // + int ERROR_CLUSTER_INCOMPATIBLE_VERSIONS = 5075; + // + // MessageId: ERROR_CLUSTER_MAXNUM_OF_RESOURCES_EXCEEDED + // + // MessageText: + // + // This resource cannot be created because the cluster has reached the limit + // on the number of resources it can monitor. + // + int ERROR_CLUSTER_MAXNUM_OF_RESOURCES_EXCEEDED = 5076; + // + // MessageId: ERROR_CLUSTER_SYSTEM_CONFIG_CHANGED + // + // MessageText: + // + // The system configuration changed during the cluster join or form + // operation. The join or form operation was aborted. + // + int ERROR_CLUSTER_SYSTEM_CONFIG_CHANGED = 5077; + // + // MessageId: ERROR_CLUSTER_RESOURCE_TYPE_NOT_FOUND + // + // MessageText: + // + // The specified resource type was not found. + // + int ERROR_CLUSTER_RESOURCE_TYPE_NOT_FOUND = 5078; + // + // MessageId: ERROR_CLUSTER_RESTYPE_NOT_SUPPORTED + // + // MessageText: + // + // The specified node does not support a resource of this type. This may be + // due to version inconsistencies or due to the absence of the resource DLL + // on this node. + // + int ERROR_CLUSTER_RESTYPE_NOT_SUPPORTED = 5079; + // + // MessageId: ERROR_CLUSTER_RESNAME_NOT_FOUND + // + // MessageText: + // + // The specified resource name is not supported by this resource DLL. This + // may be due to a bad (or changed) name supplied to the resource DLL. + // + int ERROR_CLUSTER_RESNAME_NOT_FOUND = 5080; + // + // MessageId: ERROR_CLUSTER_NO_RPC_PACKAGES_REGISTERED + // + // MessageText: + // + // No authentication package could be registered with the RPC server. + // + int ERROR_CLUSTER_NO_RPC_PACKAGES_REGISTERED = 5081; + // + // MessageId: ERROR_CLUSTER_OWNER_NOT_IN_PREFLIST + // + // MessageText: + // + // You cannot bring the group online because the owner of the group is not + // in the preferred list for the group. To change the owner node for the + // group, move the group. + // + int ERROR_CLUSTER_OWNER_NOT_IN_PREFLIST = 5082; + // + // MessageId: ERROR_CLUSTER_DATABASE_SEQMISMATCH + // + // MessageText: + // + // The join operation failed because the cluster database sequence number + // has changed or is incompatible with the locker node. This may happen + // during a join operation if the cluster database was changing during the + // join. + // + int ERROR_CLUSTER_DATABASE_SEQMISMATCH = 5083; + // + // MessageId: ERROR_RESMON_INVALID_STATE + // + // MessageText: + // + // The resource monitor will not allow the fail operation to be performed + // while the resource is in its current state. This may happen if the + // resource is in a pending state. + // + int ERROR_RESMON_INVALID_STATE = 5084; + // + // MessageId: ERROR_CLUSTER_GUM_NOT_LOCKER + // + // MessageText: + // + // A non locker code got a request to reserve the lock for making global + // updates. + // + int ERROR_CLUSTER_GUM_NOT_LOCKER = 5085; + // + // MessageId: ERROR_QUORUM_DISK_NOT_FOUND + // + // MessageText: + // + // The quorum disk could not be located by the cluster service. + // + int ERROR_QUORUM_DISK_NOT_FOUND = 5086; + // + // MessageId: ERROR_DATABASE_BACKUP_CORRUPT + // + // MessageText: + // + // The backed up cluster database is possibly corrupt. + // + int ERROR_DATABASE_BACKUP_CORRUPT = 5087; + // + // MessageId: ERROR_CLUSTER_NODE_ALREADY_HAS_DFS_ROOT + // + // MessageText: + // + // A DFS root already exists in this cluster node. + // + int ERROR_CLUSTER_NODE_ALREADY_HAS_DFS_ROOT = 5088; + // + // MessageId: ERROR_RESOURCE_PROPERTY_UNCHANGEABLE + // + // MessageText: + // + // An attempt to modify a resource property failed because it conflicts with + // another existing property. + // + int ERROR_RESOURCE_PROPERTY_UNCHANGEABLE = 5089; + + /* + * Codes from=4300 through=5889 overlap with codes in + * ds\published\inc\apperr2.w. Do not add any more error codes in that + * range. + */ + // + // MessageId: ERROR_CLUSTER_MEMBERSHIP_INVALID_STATE + // + // MessageText: + // + // An operation was attempted that is incompatible with the current + // membership state of the node. + // + int ERROR_CLUSTER_MEMBERSHIP_INVALID_STATE = 5890; + // + // MessageId: ERROR_CLUSTER_QUORUMLOG_NOT_FOUND + // + // MessageText: + // + // The quorum resource does not contain the quorum log. + // + int ERROR_CLUSTER_QUORUMLOG_NOT_FOUND = 5891; + // + // MessageId: ERROR_CLUSTER_MEMBERSHIP_HALT + // + // MessageText: + // + // The membership engine requested shutdown of the cluster service on this + // node. + // + int ERROR_CLUSTER_MEMBERSHIP_HALT = 5892; + // + // MessageId: ERROR_CLUSTER_INSTANCE_ID_MISMATCH + // + // MessageText: + // + // The join operation failed because the cluster instance ID of the joining + // node does not match the cluster instance ID of the sponsor node. + // + int ERROR_CLUSTER_INSTANCE_ID_MISMATCH = 5893; + // + // MessageId: ERROR_CLUSTER_NETWORK_NOT_FOUND_FOR_IP + // + // MessageText: + // + // A matching cluster network for the specified IP address could not be + // found. + // + int ERROR_CLUSTER_NETWORK_NOT_FOUND_FOR_IP = 5894; + // + // MessageId: ERROR_CLUSTER_PROPERTY_DATA_TYPE_MISMATCH + // + // MessageText: + // + // The actual data type of the property did not match the expected data type + // of the property. + // + int ERROR_CLUSTER_PROPERTY_DATA_TYPE_MISMATCH = 5895; + // + // MessageId: ERROR_CLUSTER_EVICT_WITHOUT_CLEANUP + // + // MessageText: + // + // The cluster node was evicted from the cluster successfully, but the node + // was not cleaned up. To determine what cleanup steps failed and how to + // recover, see the Failover Clustering application event log using Event + // Viewer. + // + int ERROR_CLUSTER_EVICT_WITHOUT_CLEANUP = 5896; + // + // MessageId: ERROR_CLUSTER_PARAMETER_MISMATCH + // + // MessageText: + // + // Two or more parameter values specified for a resource's properties are in + // conflict. + // + int ERROR_CLUSTER_PARAMETER_MISMATCH = 5897; + // + // MessageId: ERROR_NODE_CANNOT_BE_CLUSTERED + // + // MessageText: + // + // This computer cannot be made a member of a cluster. + // + int ERROR_NODE_CANNOT_BE_CLUSTERED = 5898; + // + // MessageId: ERROR_CLUSTER_WRONG_OS_VERSION + // + // MessageText: + // + // This computer cannot be made a member of a cluster because it does not + // have the correct version of Windows installed. + // + int ERROR_CLUSTER_WRONG_OS_VERSION = 5899; + // + // MessageId: ERROR_CLUSTER_CANT_CREATE_DUP_CLUSTER_NAME + // + // MessageText: + // + // A cluster cannot be created with the specified cluster name because that + // cluster name is already in use. Specify a different name for the cluster. + // + int ERROR_CLUSTER_CANT_CREATE_DUP_CLUSTER_NAME = 5900; + // + // MessageId: ERROR_CLUSCFG_ALREADY_COMMITTED + // + // MessageText: + // + // The cluster configuration action has already been committed. + // + int ERROR_CLUSCFG_ALREADY_COMMITTED = 5901; + // + // MessageId: ERROR_CLUSCFG_ROLLBACK_FAILED + // + // MessageText: + // + // The cluster configuration action could not be rolled back. + // + int ERROR_CLUSCFG_ROLLBACK_FAILED = 5902; + // + // MessageId: ERROR_CLUSCFG_SYSTEM_DISK_DRIVE_LETTER_CONFLICT + // + // MessageText: + // + // The drive letter assigned to a system disk on one node conflicted with + // the drive letter assigned to a disk on another node. + // + int ERROR_CLUSCFG_SYSTEM_DISK_DRIVE_LETTER_CONFLICT = 5903; + // + // MessageId: ERROR_CLUSTER_OLD_VERSION + // + // MessageText: + // + // One or more nodes in the cluster are running a version of Windows that + // does not support this operation. + // + int ERROR_CLUSTER_OLD_VERSION = 5904; + // + // MessageId: ERROR_CLUSTER_MISMATCHED_COMPUTER_ACCT_NAME + // + // MessageText: + // + // The name of the corresponding computer account doesn't match the Network + // Name for this resource. + // + int ERROR_CLUSTER_MISMATCHED_COMPUTER_ACCT_NAME = 5905; + // + // MessageId: ERROR_CLUSTER_NO_NET_ADAPTERS + // + // MessageText: + // + // No network adapters are available. + // + int ERROR_CLUSTER_NO_NET_ADAPTERS = 5906; + // + // MessageId: ERROR_CLUSTER_POISONED + // + // MessageText: + // + // The cluster node has been poisoned. + // + int ERROR_CLUSTER_POISONED = 5907; + // + // MessageId: ERROR_CLUSTER_GROUP_MOVING + // + // MessageText: + // + // The group is unable to accept the request since it is moving to another + // node. + // + int ERROR_CLUSTER_GROUP_MOVING = 5908; + // + // MessageId: ERROR_CLUSTER_RESOURCE_TYPE_BUSY + // + // MessageText: + // + // The resource type cannot accept the request since is too busy performing + // another operation. + // + int ERROR_CLUSTER_RESOURCE_TYPE_BUSY = 5909; + // + // MessageId: ERROR_RESOURCE_CALL_TIMED_OUT + // + // MessageText: + // + // The call to the cluster resource DLL timed out. + // + int ERROR_RESOURCE_CALL_TIMED_OUT = 5910; + // + // MessageId: ERROR_INVALID_CLUSTER_IPV6_ADDRESS + // + // MessageText: + // + // The address is not valid for an IPv6 Address resource. A global IPv6 + // address is required, and it must match a cluster network. Compatibility + // addresses are not permitted. + // + int ERROR_INVALID_CLUSTER_IPV6_ADDRESS = 5911; + // + // MessageId: ERROR_CLUSTER_INTERNAL_INVALID_FUNCTION + // + // MessageText: + // + // An internal cluster error occurred. A call to an invalid function was + // attempted. + // + int ERROR_CLUSTER_INTERNAL_INVALID_FUNCTION = 5912; + // + // MessageId: ERROR_CLUSTER_PARAMETER_OUT_OF_BOUNDS + // + // MessageText: + // + // A parameter value is out of acceptable range. + // + int ERROR_CLUSTER_PARAMETER_OUT_OF_BOUNDS = 5913; + // + // MessageId: ERROR_CLUSTER_PARTIAL_SEND + // + // MessageText: + // + // A network error occurred while sending data to another node in the + // cluster. The number of bytes transmitted was less than required. + // + int ERROR_CLUSTER_PARTIAL_SEND = 5914; + // + // MessageId: ERROR_CLUSTER_REGISTRY_INVALID_FUNCTION + // + // MessageText: + // + // An invalid cluster registry operation was attempted. + // + int ERROR_CLUSTER_REGISTRY_INVALID_FUNCTION = 5915; + // + // MessageId: ERROR_CLUSTER_INVALID_STRING_TERMINATION + // + // MessageText: + // + // An input string of characters is not properly terminated. + // + int ERROR_CLUSTER_INVALID_STRING_TERMINATION = 5916; + // + // MessageId: ERROR_CLUSTER_INVALID_STRING_FORMAT + // + // MessageText: + // + // An input string of characters is not in a valid format for the data it + // represents. + // + int ERROR_CLUSTER_INVALID_STRING_FORMAT = 5917; + // + // MessageId: ERROR_CLUSTER_DATABASE_TRANSACTION_IN_PROGRESS + // + // MessageText: + // + // An internal cluster error occurred. A cluster database transaction was + // attempted while a transaction was already in progress. + // + int ERROR_CLUSTER_DATABASE_TRANSACTION_IN_PROGRESS = 5918; + // + // MessageId: ERROR_CLUSTER_DATABASE_TRANSACTION_NOT_IN_PROGRESS + // + // MessageText: + // + // An internal cluster error occurred. There was an attempt to commit a + // cluster database transaction while no transaction was in progress. + // + int ERROR_CLUSTER_DATABASE_TRANSACTION_NOT_IN_PROGRESS = 5919; + // + // MessageId: ERROR_CLUSTER_NULL_DATA + // + // MessageText: + // + // An internal cluster error occurred. Data was not properly initialized. + // + int ERROR_CLUSTER_NULL_DATA = 5920; + // + // MessageId: ERROR_CLUSTER_PARTIAL_READ + // + // MessageText: + // + // An error occurred while reading from a stream of data. An unexpected + // number of bytes was returned. + // + int ERROR_CLUSTER_PARTIAL_READ = 5921; + // + // MessageId: ERROR_CLUSTER_PARTIAL_WRITE + // + // MessageText: + // + // An error occurred while writing to a stream of data. The required number + // of bytes could not be written. + // + int ERROR_CLUSTER_PARTIAL_WRITE = 5922; + // + // MessageId: ERROR_CLUSTER_CANT_DESERIALIZE_DATA + // + // MessageText: + // + // An error occurred while deserializing a stream of cluster data. + // + int ERROR_CLUSTER_CANT_DESERIALIZE_DATA = 5923; + // + // MessageId: ERROR_DEPENDENT_RESOURCE_PROPERTY_CONFLICT + // + // MessageText: + // + // One or more property values for this resource are in conflict with one or + // more property values associated with its dependent resource(s). + // + int ERROR_DEPENDENT_RESOURCE_PROPERTY_CONFLICT = 5924; + // + // MessageId: ERROR_CLUSTER_NO_QUORUM + // + // MessageText: + // + // A quorum of cluster nodes was not present to form a cluster. + // + int ERROR_CLUSTER_NO_QUORUM = 5925; + // + // MessageId: ERROR_CLUSTER_INVALID_IPV6_NETWORK + // + // MessageText: + // + // The cluster network is not valid for an IPv6 Address resource, or it does + // not match the configured address. + // + int ERROR_CLUSTER_INVALID_IPV6_NETWORK = 5926; + // + // MessageId: ERROR_CLUSTER_INVALID_IPV6_TUNNEL_NETWORK + // + // MessageText: + // + // The cluster network is not valid for an IPv6 Tunnel resource. Check the + // configuration of the IP Address resource on which the IPv6 Tunnel + // resource depends. + // + int ERROR_CLUSTER_INVALID_IPV6_TUNNEL_NETWORK = 5927; + // + // MessageId: ERROR_QUORUM_NOT_ALLOWED_IN_THIS_GROUP + // + // MessageText: + // + // Quorum resource cannot reside in the Available Storage group. + // + int ERROR_QUORUM_NOT_ALLOWED_IN_THIS_GROUP = 5928; + // + // MessageId: ERROR_DEPENDENCY_TREE_TOO_COMPLEX + // + // MessageText: + // + // The dependencies for this resource are nested too deeply. + // + int ERROR_DEPENDENCY_TREE_TOO_COMPLEX = 5929; + // + // MessageId: ERROR_EXCEPTION_IN_RESOURCE_CALL + // + // MessageText: + // + // The call into the resource DLL raised an unhandled exception. + // + int ERROR_EXCEPTION_IN_RESOURCE_CALL = 5930; + // + // MessageId: ERROR_CLUSTER_RHS_FAILED_INITIALIZATION + // + // MessageText: + // + // The RHS process failed to initialize. + // + int ERROR_CLUSTER_RHS_FAILED_INITIALIZATION = 5931; + // + // MessageId: ERROR_CLUSTER_NOT_INSTALLED + // + // MessageText: + // + // The Failover Clustering feature is not installed on this node. + // + int ERROR_CLUSTER_NOT_INSTALLED = 5932; + // + // MessageId: ERROR_CLUSTER_RESOURCES_MUST_BE_ONLINE_ON_THE_SAME_NODE + // + // MessageText: + // + // The resources must be online on the same node for this operation + // + int ERROR_CLUSTER_RESOURCES_MUST_BE_ONLINE_ON_THE_SAME_NODE = 5933; + // ///////////////////////////////////////////////// + // =// + // =EFS Error codes=// + // =// + // =6000 to=6099=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_ENCRYPTION_FAILED + // + // MessageText: + // + // The specified file could not be encrypted. + // + int ERROR_ENCRYPTION_FAILED = 6000; + // + // MessageId: ERROR_DECRYPTION_FAILED + // + // MessageText: + // + // The specified file could not be decrypted. + // + int ERROR_DECRYPTION_FAILED = 6001; + // + // MessageId: ERROR_FILE_ENCRYPTED + // + // MessageText: + // + // The specified file is encrypted and the user does not have the ability to + // decrypt it. + // + int ERROR_FILE_ENCRYPTED = 6002; + // + // MessageId: ERROR_NO_RECOVERY_POLICY + // + // MessageText: + // + // There is no valid encryption recovery policy configured for this system. + // + int ERROR_NO_RECOVERY_POLICY = 6003; + // + // MessageId: ERROR_NO_EFS + // + // MessageText: + // + // The required encryption driver is not loaded for this system. + // + int ERROR_NO_EFS = 6004; + // + // MessageId: ERROR_WRONG_EFS + // + // MessageText: + // + // The file was encrypted with a different encryption driver than is + // currently loaded. + // + int ERROR_WRONG_EFS = 6005; + // + // MessageId: ERROR_NO_USER_KEYS + // + // MessageText: + // + // There are no EFS keys defined for the user. + // + int ERROR_NO_USER_KEYS = 6006; + // + // MessageId: ERROR_FILE_NOT_ENCRYPTED + // + // MessageText: + // + // The specified file is not encrypted. + // + int ERROR_FILE_NOT_ENCRYPTED = 6007; + // + // MessageId: ERROR_NOT_EXPORT_FORMAT + // + // MessageText: + // + // The specified file is not in the defined EFS export format. + // + int ERROR_NOT_EXPORT_FORMAT = 6008; + // + // MessageId: ERROR_FILE_READ_ONLY + // + // MessageText: + // + // The specified file is read only. + // + int ERROR_FILE_READ_ONLY = 6009; + // + // MessageId: ERROR_DIR_EFS_DISALLOWED + // + // MessageText: + // + // The directory has been disabled for encryption. + // + int ERROR_DIR_EFS_DISALLOWED = 6010; + // + // MessageId: ERROR_EFS_SERVER_NOT_TRUSTED + // + // MessageText: + // + // The server is not trusted for remote encryption operation. + // + int ERROR_EFS_SERVER_NOT_TRUSTED = 6011; + // + // MessageId: ERROR_BAD_RECOVERY_POLICY + // + // MessageText: + // + // Recovery policy configured for this system contains invalid recovery + // certificate. + // + int ERROR_BAD_RECOVERY_POLICY = 6012; + // + // MessageId: ERROR_EFS_ALG_BLOB_TOO_BIG + // + // MessageText: + // + // The encryption algorithm used on the source file needs a bigger key + // buffer than the one on the destination file. + // + int ERROR_EFS_ALG_BLOB_TOO_BIG = 6013; + // + // MessageId: ERROR_VOLUME_NOT_SUPPORT_EFS + // + // MessageText: + // + // The disk partition does not support file encryption. + // + int ERROR_VOLUME_NOT_SUPPORT_EFS = 6014; + // + // MessageId: ERROR_EFS_DISABLED + // + // MessageText: + // + // This machine is disabled for file encryption. + // + int ERROR_EFS_DISABLED = 6015; + // + // MessageId: ERROR_EFS_VERSION_NOT_SUPPORT + // + // MessageText: + // + // A newer system is required to decrypt this encrypted file. + // + int ERROR_EFS_VERSION_NOT_SUPPORT = 6016; + // + // MessageId: ERROR_CS_ENCRYPTION_INVALID_SERVER_RESPONSE + // + // MessageText: + // + // The remote server sent an invalid response for a file being opened with + // Client Side Encryption. + // + int ERROR_CS_ENCRYPTION_INVALID_SERVER_RESPONSE = 6017; + // + // MessageId: ERROR_CS_ENCRYPTION_UNSUPPORTED_SERVER + // + // MessageText: + // + // Client Side Encryption is not supported by the remote server even though + // it claims to support it. + // + int ERROR_CS_ENCRYPTION_UNSUPPORTED_SERVER = 6018; + // + // MessageId: ERROR_CS_ENCRYPTION_EXISTING_ENCRYPTED_FILE + // + // MessageText: + // + // File is encrypted and should be opened in Client Side Encryption mode. + // + int ERROR_CS_ENCRYPTION_EXISTING_ENCRYPTED_FILE = 6019; + // + // MessageId: ERROR_CS_ENCRYPTION_NEW_ENCRYPTED_FILE + // + // MessageText: + // + // A new encrypted file is being created and a $EFS needs to be provided. + // + int ERROR_CS_ENCRYPTION_NEW_ENCRYPTED_FILE = 6020; + // + // MessageId: ERROR_CS_ENCRYPTION_FILE_NOT_CSE + // + // MessageText: + // + // The SMB client requested a CSE FSCTL on a non-CSE file. + // + int ERROR_CS_ENCRYPTION_FILE_NOT_CSE = 6021; + // ///////////////////////////////////////////////// + // =// + // =BROWSER Error codes=// + // =// + // =6100 to=6199=// + // ///////////////////////////////////////////////// + // This message number is for historical purposes and cannot be changed or + // re-used. + // + // MessageId: ERROR_NO_BROWSER_SERVERS_FOUND + // + // MessageText: + // + // The list of servers for this workgroup is not currently available + // + int ERROR_NO_BROWSER_SERVERS_FOUND = 6118; + // ///////////////////////////////////////////////// + // =// + // =Task Scheduler Error codes=// + // =NET START must understand=// + // =// + // =6200 to=6249=// + // ///////////////////////////////////////////////// + // + // MessageId: SCHED_E_SERVICE_NOT_LOCALSYSTEM + // + // MessageText: + // + // The Task Scheduler service must be configured to run in the System + // account to function properly. Individual tasks may be configured to run + // in other accounts. + // + int SCHED_E_SERVICE_NOT_LOCALSYSTEM = 6200; + // ///////////////////////////////////////////////// + // =// + // =Available=// + // =// + // =6250 to=6599=// + // ///////////////////////////////////////////////// + // ///////////////////////////////////////////////// + // =// + // =Common Log (CLFS) Error codes=// + // =// + // =6600 to=6699=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_LOG_SECTOR_INVALID + // + // MessageText: + // + // Log service encountered an invalid log sector. + // + int ERROR_LOG_SECTOR_INVALID = 6600; + // + // MessageId: ERROR_LOG_SECTOR_PARITY_INVALID + // + // MessageText: + // + // Log service encountered a log sector with invalid block parity. + // + int ERROR_LOG_SECTOR_PARITY_INVALID = 6601; + // + // MessageId: ERROR_LOG_SECTOR_REMAPPED + // + // MessageText: + // + // Log service encountered a remapped log sector. + // + int ERROR_LOG_SECTOR_REMAPPED = 6602; + // + // MessageId: ERROR_LOG_BLOCK_INCOMPLETE + // + // MessageText: + // + // Log service encountered a partial or incomplete log block. + // + int ERROR_LOG_BLOCK_INCOMPLETE = 6603; + // + // MessageId: ERROR_LOG_INVALID_RANGE + // + // MessageText: + // + // Log service encountered an attempt access data outside the active log + // range. + // + int ERROR_LOG_INVALID_RANGE = 6604; + // + // MessageId: ERROR_LOG_BLOCKS_EXHAUSTED + // + // MessageText: + // + // Log service user marshalling buffers are exhausted. + // + int ERROR_LOG_BLOCKS_EXHAUSTED = 6605; + // + // MessageId: ERROR_LOG_READ_CONTEXT_INVALID + // + // MessageText: + // + // Log service encountered an attempt read from a marshalling area with an + // invalid read context. + // + int ERROR_LOG_READ_CONTEXT_INVALID = 6606; + // + // MessageId: ERROR_LOG_RESTART_INVALID + // + // MessageText: + // + // Log service encountered an invalid log restart area. + // + int ERROR_LOG_RESTART_INVALID = 6607; + // + // MessageId: ERROR_LOG_BLOCK_VERSION + // + // MessageText: + // + // Log service encountered an invalid log block version. + // + int ERROR_LOG_BLOCK_VERSION = 6608; + // + // MessageId: ERROR_LOG_BLOCK_INVALID + // + // MessageText: + // + // Log service encountered an invalid log block. + // + int ERROR_LOG_BLOCK_INVALID = 6609; + // + // MessageId: ERROR_LOG_READ_MODE_INVALID + // + // MessageText: + // + // Log service encountered an attempt to read the log with an invalid read + // mode. + // + int ERROR_LOG_READ_MODE_INVALID = 6610; + // + // MessageId: ERROR_LOG_NO_RESTART + // + // MessageText: + // + // Log service encountered a log stream with no restart area. + // + int ERROR_LOG_NO_RESTART = 6611; + // + // MessageId: ERROR_LOG_METADATA_CORRUPT + // + // MessageText: + // + // Log service encountered a corrupted metadata file. + // + int ERROR_LOG_METADATA_CORRUPT = 6612; + // + // MessageId: ERROR_LOG_METADATA_INVALID + // + // MessageText: + // + // Log service encountered a metadata file that could not be created by the + // log file system. + // + int ERROR_LOG_METADATA_INVALID = 6613; + // + // MessageId: ERROR_LOG_METADATA_INCONSISTENT + // + // MessageText: + // + // Log service encountered a metadata file with inconsistent data. + // + int ERROR_LOG_METADATA_INCONSISTENT = 6614; + // + // MessageId: ERROR_LOG_RESERVATION_INVALID + // + // MessageText: + // + // Log service encountered an attempt to erroneous allocate or dispose + // reservation space. + // + int ERROR_LOG_RESERVATION_INVALID = 6615; + // + // MessageId: ERROR_LOG_CANT_DELETE + // + // MessageText: + // + // Log service cannot delete log file or file system container. + // + int ERROR_LOG_CANT_DELETE = 6616; + // + // MessageId: ERROR_LOG_CONTAINER_LIMIT_EXCEEDED + // + // MessageText: + // + // Log service has reached the maximum allowable containers allocated to a + // log file. + // + int ERROR_LOG_CONTAINER_LIMIT_EXCEEDED = 6617; + // + // MessageId: ERROR_LOG_START_OF_LOG + // + // MessageText: + // + // Log service has attempted to read or write backward past the start of the + // log. + // + int ERROR_LOG_START_OF_LOG = 6618; + // + // MessageId: ERROR_LOG_POLICY_ALREADY_INSTALLED + // + // MessageText: + // + // Log policy could not be installed because a policy of the same type is + // already present. + // + int ERROR_LOG_POLICY_ALREADY_INSTALLED = 6619; + // + // MessageId: ERROR_LOG_POLICY_NOT_INSTALLED + // + // MessageText: + // + // Log policy in question was not installed at the time of the request. + // + int ERROR_LOG_POLICY_NOT_INSTALLED = 6620; + // + // MessageId: ERROR_LOG_POLICY_INVALID + // + // MessageText: + // + // The installed set of policies on the log is invalid. + // + int ERROR_LOG_POLICY_INVALID = 6621; + // + // MessageId: ERROR_LOG_POLICY_CONFLICT + // + // MessageText: + // + // A policy on the log in question prevented the operation from completing. + // + int ERROR_LOG_POLICY_CONFLICT = 6622; + // + // MessageId: ERROR_LOG_PINNED_ARCHIVE_TAIL + // + // MessageText: + // + // Log space cannot be reclaimed because the log is pinned by the archive + // tail. + // + int ERROR_LOG_PINNED_ARCHIVE_TAIL = 6623; + // + // MessageId: ERROR_LOG_RECORD_NONEXISTENT + // + // MessageText: + // + // Log record is not a record in the log file. + // + int ERROR_LOG_RECORD_NONEXISTENT = 6624; + // + // MessageId: ERROR_LOG_RECORDS_RESERVED_INVALID + // + // MessageText: + // + // Number of reserved log records or the adjustment of the number of + // reserved log records is invalid. + // + int ERROR_LOG_RECORDS_RESERVED_INVALID = 6625; + // + // MessageId: ERROR_LOG_SPACE_RESERVED_INVALID + // + // MessageText: + // + // Reserved log space or the adjustment of the log space is invalid. + // + int ERROR_LOG_SPACE_RESERVED_INVALID = 6626; + // + // MessageId: ERROR_LOG_TAIL_INVALID + // + // MessageText: + // + // An new or existing archive tail or base of the active log is invalid. + // + int ERROR_LOG_TAIL_INVALID = 6627; + // + // MessageId: ERROR_LOG_FULL + // + // MessageText: + // + // Log space is exhausted. + // + int ERROR_LOG_FULL = 6628; + // + // MessageId: ERROR_COULD_NOT_RESIZE_LOG + // + // MessageText: + // + // The log could not be set to the requested size. + // + int ERROR_COULD_NOT_RESIZE_LOG = 6629; + // + // MessageId: ERROR_LOG_MULTIPLEXED + // + // MessageText: + // + // Log is multiplexed, no direct writes to the physical log is allowed. + // + int ERROR_LOG_MULTIPLEXED = 6630; + // + // MessageId: ERROR_LOG_DEDICATED + // + // MessageText: + // + // The operation failed because the log is a dedicated log. + // + int ERROR_LOG_DEDICATED = 6631; + // + // MessageId: ERROR_LOG_ARCHIVE_NOT_IN_PROGRESS + // + // MessageText: + // + // The operation requires an archive context. + // + int ERROR_LOG_ARCHIVE_NOT_IN_PROGRESS = 6632; + // + // MessageId: ERROR_LOG_ARCHIVE_IN_PROGRESS + // + // MessageText: + // + // Log archival is in progress. + // + int ERROR_LOG_ARCHIVE_IN_PROGRESS = 6633; + // + // MessageId: ERROR_LOG_EPHEMERAL + // + // MessageText: + // + // The operation requires a non-ephemeral log, but the log is ephemeral. + // + int ERROR_LOG_EPHEMERAL = 6634; + // + // MessageId: ERROR_LOG_NOT_ENOUGH_CONTAINERS + // + // MessageText: + // + // The log must have at least two containers before it can be read from or + // written to. + // + int ERROR_LOG_NOT_ENOUGH_CONTAINERS = 6635; + // + // MessageId: ERROR_LOG_CLIENT_ALREADY_REGISTERED + // + // MessageText: + // + // A log client has already registered on the stream. + // + int ERROR_LOG_CLIENT_ALREADY_REGISTERED = 6636; + // + // MessageId: ERROR_LOG_CLIENT_NOT_REGISTERED + // + // MessageText: + // + // A log client has not been registered on the stream. + // + int ERROR_LOG_CLIENT_NOT_REGISTERED = 6637; + // + // MessageId: ERROR_LOG_FULL_HANDLER_IN_PROGRESS + // + // MessageText: + // + // A request has already been made to handle the log full condition. + // + int ERROR_LOG_FULL_HANDLER_IN_PROGRESS = 6638; + // + // MessageId: ERROR_LOG_CONTAINER_READ_FAILED + // + // MessageText: + // + // Log service enountered an error when attempting to read from a log + // container. + // + int ERROR_LOG_CONTAINER_READ_FAILED = 6639; + // + // MessageId: ERROR_LOG_CONTAINER_WRITE_FAILED + // + // MessageText: + // + // Log service enountered an error when attempting to write to a log + // container. + // + int ERROR_LOG_CONTAINER_WRITE_FAILED = 6640; + // + // MessageId: ERROR_LOG_CONTAINER_OPEN_FAILED + // + // MessageText: + // + // Log service enountered an error when attempting open a log container. + // + int ERROR_LOG_CONTAINER_OPEN_FAILED = 6641; + // + // MessageId: ERROR_LOG_CONTAINER_STATE_INVALID + // + // MessageText: + // + // Log service enountered an invalid container state when attempting a + // requested action. + // + int ERROR_LOG_CONTAINER_STATE_INVALID = 6642; + // + // MessageId: ERROR_LOG_STATE_INVALID + // + // MessageText: + // + // Log service is not in the correct state to perform a requested action. + // + int ERROR_LOG_STATE_INVALID = 6643; + // + // MessageId: ERROR_LOG_PINNED + // + // MessageText: + // + // Log space cannot be reclaimed because the log is pinned. + // + int ERROR_LOG_PINNED = 6644; + // + // MessageId: ERROR_LOG_METADATA_FLUSH_FAILED + // + // MessageText: + // + // Log metadata flush failed. + // + int ERROR_LOG_METADATA_FLUSH_FAILED = 6645; + // + // MessageId: ERROR_LOG_INCONSISTENT_SECURITY + // + // MessageText: + // + // Security on the log and its containers is inconsistent. + // + int ERROR_LOG_INCONSISTENT_SECURITY = 6646; + // + // MessageId: ERROR_LOG_APPENDED_FLUSH_FAILED + // + // MessageText: + // + // Records were appended to the log or reservation changes were made, but + // the log could not be flushed. + // + int ERROR_LOG_APPENDED_FLUSH_FAILED = 6647; + // + // MessageId: ERROR_LOG_PINNED_RESERVATION + // + // MessageText: + // + // The log is pinned due to reservation consuming most of the log space. + // Free some reserved records to make space available. + // + int ERROR_LOG_PINNED_RESERVATION = 6648; + // ///////////////////////////////////////////////// + // =// + // =Transaction (KTM) Error codes // + // =// + // =6700 to=6799=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_INVALID_TRANSACTION + // + // MessageText: + // + // The transaction handle associated with this operation is not valid. + // + int ERROR_INVALID_TRANSACTION = 6700; + // + // MessageId: ERROR_TRANSACTION_NOT_ACTIVE + // + // MessageText: + // + // The requested operation was made in the context of a transaction that is + // no longer active. + // + int ERROR_TRANSACTION_NOT_ACTIVE = 6701; + // + // MessageId: ERROR_TRANSACTION_REQUEST_NOT_VALID + // + // MessageText: + // + // The requested operation is not valid on the Transaction object in its + // current state. + // + int ERROR_TRANSACTION_REQUEST_NOT_VALID = 6702; + // + // MessageId: ERROR_TRANSACTION_NOT_REQUESTED + // + // MessageText: + // + // The caller has called a response API, but the response is not expected + // because the TM did not issue the corresponding request to the caller. + // + int ERROR_TRANSACTION_NOT_REQUESTED = 6703; + // + // MessageId: ERROR_TRANSACTION_ALREADY_ABORTED + // + // MessageText: + // + // It is too late to perform the requested operation, since the Transaction + // has already been aborted. + // + int ERROR_TRANSACTION_ALREADY_ABORTED = 6704; + // + // MessageId: ERROR_TRANSACTION_ALREADY_COMMITTED + // + // MessageText: + // + // It is too late to perform the requested operation, since the Transaction + // has already been committed. + // + int ERROR_TRANSACTION_ALREADY_COMMITTED = 6705; + // + // MessageId: ERROR_TM_INITIALIZATION_FAILED + // + // MessageText: + // + // The Transaction Manager was unable to be successfully initialized. + // Transacted operations are not supported. + // + int ERROR_TM_INITIALIZATION_FAILED = 6706; + // + // MessageId: ERROR_RESOURCEMANAGER_READ_ONLY + // + // MessageText: + // + // The specified ResourceManager made no changes or updates to the resource + // under this transaction. + // + int ERROR_RESOURCEMANAGER_READ_ONLY = 6707; + // + // MessageId: ERROR_TRANSACTION_NOT_JOINED + // + // MessageText: + // + // The resource manager has attempted to prepare a transaction that it has + // not successfully joined. + // + int ERROR_TRANSACTION_NOT_JOINED = 6708; + // + // MessageId: ERROR_TRANSACTION_SUPERIOR_EXISTS + // + // MessageText: + // + // The Transaction object already has a superior enlistment, and the caller + // attempted an operation that would have created a new superior. Only a + // single superior enlistment is allow. + // + int ERROR_TRANSACTION_SUPERIOR_EXISTS = 6709; + // + // MessageId: ERROR_CRM_PROTOCOL_ALREADY_EXISTS + // + // MessageText: + // + // The RM tried to register a protocol that already exists. + // + int ERROR_CRM_PROTOCOL_ALREADY_EXISTS = 6710; + // + // MessageId: ERROR_TRANSACTION_PROPAGATION_FAILED + // + // MessageText: + // + // The attempt to propagate the Transaction failed. + // + int ERROR_TRANSACTION_PROPAGATION_FAILED = 6711; + // + // MessageId: ERROR_CRM_PROTOCOL_NOT_FOUND + // + // MessageText: + // + // The requested propagation protocol was not registered as a CRM. + // + int ERROR_CRM_PROTOCOL_NOT_FOUND = 6712; + // + // MessageId: ERROR_TRANSACTION_INVALID_MARSHALL_BUFFER + // + // MessageText: + // + // The buffer passed in to PushTransaction or PullTransaction is not in a + // valid format. + // + int ERROR_TRANSACTION_INVALID_MARSHALL_BUFFER = 6713; + // + // MessageId: ERROR_CURRENT_TRANSACTION_NOT_VALID + // + // MessageText: + // + // The current transaction context associated with the thread is not a valid + // handle to a transaction object. + // + int ERROR_CURRENT_TRANSACTION_NOT_VALID = 6714; + // + // MessageId: ERROR_TRANSACTION_NOT_FOUND + // + // MessageText: + // + // The specified Transaction object could not be opened, because it was not + // found. + // + int ERROR_TRANSACTION_NOT_FOUND = 6715; + // + // MessageId: ERROR_RESOURCEMANAGER_NOT_FOUND + // + // MessageText: + // + // The specified ResourceManager object could not be opened, because it was + // not found. + // + int ERROR_RESOURCEMANAGER_NOT_FOUND = 6716; + // + // MessageId: ERROR_ENLISTMENT_NOT_FOUND + // + // MessageText: + // + // The specified Enlistment object could not be opened, because it was not + // found. + // + int ERROR_ENLISTMENT_NOT_FOUND = 6717; + // + // MessageId: ERROR_TRANSACTIONMANAGER_NOT_FOUND + // + // MessageText: + // + // The specified TransactionManager object could not be opened, because it + // was not found. + // + int ERROR_TRANSACTIONMANAGER_NOT_FOUND = 6718; + // + // MessageId: ERROR_TRANSACTIONMANAGER_NOT_ONLINE + // + // MessageText: + // + // The specified ResourceManager was unable to create an enlistment, because + // its associated TransactionManager is not online. + // + int ERROR_TRANSACTIONMANAGER_NOT_ONLINE = 6719; + // + // MessageId: ERROR_TRANSACTIONMANAGER_RECOVERY_NAME_COLLISION + // + // MessageText: + // + // The specified TransactionManager was unable to create the objects + // contained in its logfile in the Ob namespace. Therefore, the + // TransactionManager was unable to recover. + // + int ERROR_TRANSACTIONMANAGER_RECOVERY_NAME_COLLISION = 6720; + // + // MessageId: ERROR_TRANSACTION_NOT_ROOT + // + // MessageText: + // + // The call to create a superior Enlistment on this Transaction object could + // not be completed, because the Transaction object specified for the + // enlistment is a subordinate branch of the Transaction. Only the root of + // the Transactoin can be enlisted on as a superior. + // + int ERROR_TRANSACTION_NOT_ROOT = 6721; + // + // MessageId: ERROR_TRANSACTION_OBJECT_EXPIRED + // + // MessageText: + // + // Because the associated transaction manager or resource manager has been + // closed, the handle is no longer valid. + // + int ERROR_TRANSACTION_OBJECT_EXPIRED = 6722; + // + // MessageId: ERROR_TRANSACTION_RESPONSE_NOT_ENLISTED + // + // MessageText: + // + // The specified operation could not be performed on this Superior + // enlistment, because the enlistment was not created with the corresponding + // completion response in the NotificationMask. + // + int ERROR_TRANSACTION_RESPONSE_NOT_ENLISTED = 6723; + // + // MessageId: ERROR_TRANSACTION_RECORD_TOO_LONG + // + // MessageText: + // + // The specified operation could not be performed, because the record that + // would be logged was too long. This can occur because of two conditions: + // either there are too many Enlistments on this Transaction, or the + // combined RecoveryInformation being logged on behalf of those Enlistments + // is too long. + // + int ERROR_TRANSACTION_RECORD_TOO_LONG = 6724; + // + // MessageId: ERROR_IMPLICIT_TRANSACTION_NOT_SUPPORTED + // + // MessageText: + // + // Implicit transaction are not supported. + // + int ERROR_IMPLICIT_TRANSACTION_NOT_SUPPORTED = 6725; + // + // MessageId: ERROR_TRANSACTION_INTEGRITY_VIOLATED + // + // MessageText: + // + // The kernel transaction manager had to abort or forget the transaction + // because it blocked forward progress. + // + int ERROR_TRANSACTION_INTEGRITY_VIOLATED = 6726; + // ///////////////////////////////////////////////// + // =// + // =Transactional File Services (TxF) // + // =Error codes=// + // =// + // =6800 to=6899=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_TRANSACTIONAL_CONFLICT + // + // MessageText: + // + // The function attempted to use a name that is reserved for use by another + // transaction. + // + int ERROR_TRANSACTIONAL_CONFLICT = 6800; + // + // MessageId: ERROR_RM_NOT_ACTIVE + // + // MessageText: + // + // Transaction support within the specified file system resource manager is + // not started or was shutdown due to an error. + // + int ERROR_RM_NOT_ACTIVE = 6801; + // + // MessageId: ERROR_RM_METADATA_CORRUPT + // + // MessageText: + // + // The metadata of the RM has been corrupted. The RM will not function. + // + int ERROR_RM_METADATA_CORRUPT = 6802; + // + // MessageId: ERROR_DIRECTORY_NOT_RM + // + // MessageText: + // + // The specified directory does not contain a resource manager. + // + int ERROR_DIRECTORY_NOT_RM = 6803; + // + // MessageId: ERROR_TRANSACTIONS_UNSUPPORTED_REMOTE + // + // MessageText: + // + // The remote server or share does not support transacted file operations. + // + int ERROR_TRANSACTIONS_UNSUPPORTED_REMOTE = 6805; + // + // MessageId: ERROR_LOG_RESIZE_INVALID_SIZE + // + // MessageText: + // + // The requested log size is invalid. + // + int ERROR_LOG_RESIZE_INVALID_SIZE = 6806; + // + // MessageId: ERROR_OBJECT_NO_LONGER_EXISTS + // + // MessageText: + // + // The object (file, stream, link) corresponding to the handle has been + // deleted by a Transaction Savepoint Rollback. + // + int ERROR_OBJECT_NO_LONGER_EXISTS = 6807; + // + // MessageId: ERROR_STREAM_MINIVERSION_NOT_FOUND + // + // MessageText: + // + // The specified file miniversion was not found for this transacted file + // open. + // + int ERROR_STREAM_MINIVERSION_NOT_FOUND = 6808; + // + // MessageId: ERROR_STREAM_MINIVERSION_NOT_VALID + // + // MessageText: + // + // The specified file miniversion was found but has been invalidated. Most + // likely cause is a transaction savepoint rollback. + // + int ERROR_STREAM_MINIVERSION_NOT_VALID = 6809; + // + // MessageId: ERROR_MINIVERSION_INACCESSIBLE_FROM_SPECIFIED_TRANSACTION + // + // MessageText: + // + // A miniversion may only be opened in the context of the transaction that + // created it. + // + int ERROR_MINIVERSION_INACCESSIBLE_FROM_SPECIFIED_TRANSACTION = 6810; + // + // MessageId: ERROR_CANT_OPEN_MINIVERSION_WITH_MODIFY_INTENT + // + // MessageText: + // + // It is not possible to open a miniversion with modify access. + // + int ERROR_CANT_OPEN_MINIVERSION_WITH_MODIFY_INTENT = 6811; + // + // MessageId: ERROR_CANT_CREATE_MORE_STREAM_MINIVERSIONS + // + // MessageText: + // + // It is not possible to create any more miniversions for this stream. + // + int ERROR_CANT_CREATE_MORE_STREAM_MINIVERSIONS = 6812; + // + // MessageId: ERROR_REMOTE_FILE_VERSION_MISMATCH + // + // MessageText: + // + // The remote server sent mismatching version number or Fid for a file + // opened with transactions. + // + int ERROR_REMOTE_FILE_VERSION_MISMATCH = 6814; + // + // MessageId: ERROR_HANDLE_NO_LONGER_VALID + // + // MessageText: + // + // The handle has been invalidated by a transaction. The most likely cause + // is the presence of memory mapping on a file or an open handle when the + // transaction ended or rolled back to savepoint. + // + int ERROR_HANDLE_NO_LONGER_VALID = 6815; + // + // MessageId: ERROR_NO_TXF_METADATA + // + // MessageText: + // + // There is no transaction metadata on the file. + // + int ERROR_NO_TXF_METADATA = 6816; + // + // MessageId: ERROR_LOG_CORRUPTION_DETECTED + // + // MessageText: + // + // The log data is corrupt. + // + int ERROR_LOG_CORRUPTION_DETECTED = 6817; + // + // MessageId: ERROR_CANT_RECOVER_WITH_HANDLE_OPEN + // + // MessageText: + // + // The file can't be recovered because there is a handle still open on it. + // + int ERROR_CANT_RECOVER_WITH_HANDLE_OPEN = 6818; + // + // MessageId: ERROR_RM_DISCONNECTED + // + // MessageText: + // + // The transaction outcome is unavailable because the resource manager + // responsible for it has disconnected. + // + int ERROR_RM_DISCONNECTED = 6819; + // + // MessageId: ERROR_ENLISTMENT_NOT_SUPERIOR + // + // MessageText: + // + // The request was rejected because the enlistment in question is not a + // superior enlistment. + // + int ERROR_ENLISTMENT_NOT_SUPERIOR = 6820; + // + // MessageId: ERROR_RECOVERY_NOT_NEEDED + // + // MessageText: + // + // The transactional resource manager is already consistent. Recovery is not + // needed. + // + int ERROR_RECOVERY_NOT_NEEDED = 6821; + // + // MessageId: ERROR_RM_ALREADY_STARTED + // + // MessageText: + // + // The transactional resource manager has already been started. + // + int ERROR_RM_ALREADY_STARTED = 6822; + // + // MessageId: ERROR_FILE_IDENTITY_NOT_PERSISTENT + // + // MessageText: + // + // The file cannot be opened transactionally, because its identity depends + // on the outcome of an unresolved transaction. + // + int ERROR_FILE_IDENTITY_NOT_PERSISTENT = 6823; + // + // MessageId: ERROR_CANT_BREAK_TRANSACTIONAL_DEPENDENCY + // + // MessageText: + // + // The operation cannot be performed because another transaction is + // depending on the fact that this property will not change. + // + int ERROR_CANT_BREAK_TRANSACTIONAL_DEPENDENCY = 6824; + // + // MessageId: ERROR_CANT_CROSS_RM_BOUNDARY + // + // MessageText: + // + // The operation would involve a single file with two transactional resource + // managers and is therefore not allowed. + // + int ERROR_CANT_CROSS_RM_BOUNDARY = 6825; + // + // MessageId: ERROR_TXF_DIR_NOT_EMPTY + // + // MessageText: + // + // The $Txf directory must be empty for this operation to succeed. + // + int ERROR_TXF_DIR_NOT_EMPTY = 6826; + // + // MessageId: ERROR_INDOUBT_TRANSACTIONS_EXIST + // + // MessageText: + // + // The operation would leave a transactional resource manager in an + // inconsistent state and is therefore not allowed. + // + int ERROR_INDOUBT_TRANSACTIONS_EXIST = 6827; + // + // MessageId: ERROR_TM_VOLATILE + // + // MessageText: + // + // The operation could not be completed because the transaction manager does + // not have a log. + // + int ERROR_TM_VOLATILE = 6828; + // + // MessageId: ERROR_ROLLBACK_TIMER_EXPIRED + // + // MessageText: + // + // A rollback could not be scheduled because a previously scheduled rollback + // has already executed or been queued for execution. + // + int ERROR_ROLLBACK_TIMER_EXPIRED = 6829; + // + // MessageId: ERROR_TXF_ATTRIBUTE_CORRUPT + // + // MessageText: + // + // The transactional metadata attribute on the file or directory is corrupt + // and unreadable. + // + int ERROR_TXF_ATTRIBUTE_CORRUPT = 6830; + // + // MessageId: ERROR_EFS_NOT_ALLOWED_IN_TRANSACTION + // + // MessageText: + // + // The encryption operation could not be completed because a transaction is + // active. + // + int ERROR_EFS_NOT_ALLOWED_IN_TRANSACTION = 6831; + // + // MessageId: ERROR_TRANSACTIONAL_OPEN_NOT_ALLOWED + // + // MessageText: + // + // This object is not allowed to be opened in a transaction. + // + int ERROR_TRANSACTIONAL_OPEN_NOT_ALLOWED = 6832; + // + // MessageId: ERROR_LOG_GROWTH_FAILED + // + // MessageText: + // + // An attempt to create space in the transactional resource manager's log + // failed. The failure status has been recorded in the event log. + // + int ERROR_LOG_GROWTH_FAILED = 6833; + // + // MessageId: ERROR_TRANSACTED_MAPPING_UNSUPPORTED_REMOTE + // + // MessageText: + // + // Memory mapping (creating a mapped section) a remote file under a + // transaction is not supported. + // + int ERROR_TRANSACTED_MAPPING_UNSUPPORTED_REMOTE = 6834; + // + // MessageId: ERROR_TXF_METADATA_ALREADY_PRESENT + // + // MessageText: + // + // Transaction metadata is already present on this file and cannot be + // superseded. + // + int ERROR_TXF_METADATA_ALREADY_PRESENT = 6835; + // + // MessageId: ERROR_TRANSACTION_SCOPE_CALLBACKS_NOT_SET + // + // MessageText: + // + // A transaction scope could not be entered because the scope handler has + // not been initialized. + // + int ERROR_TRANSACTION_SCOPE_CALLBACKS_NOT_SET = 6836; + // + // MessageId: ERROR_TRANSACTION_REQUIRED_PROMOTION + // + // MessageText: + // + // Promotion was required in order to allow the resource manager to enlist, + // but the transaction was set to disallow it. + // + int ERROR_TRANSACTION_REQUIRED_PROMOTION = 6837; + // + // MessageId: ERROR_CANNOT_EXECUTE_FILE_IN_TRANSACTION + // + // MessageText: + // + // This file is open for modification in an unresolved transaction and may + // be opened for execute only by a transacted reader. + // + int ERROR_CANNOT_EXECUTE_FILE_IN_TRANSACTION = 6838; + // + // MessageId: ERROR_TRANSACTIONS_NOT_FROZEN + // + // MessageText: + // + // The request to thaw frozen transactions was ignored because transactions + // had not previously been frozen. + // + int ERROR_TRANSACTIONS_NOT_FROZEN = 6839; + // + // MessageId: ERROR_TRANSACTION_FREEZE_IN_PROGRESS + // + // MessageText: + // + // Transactions cannot be frozen because a freeze is already in progress. + // + int ERROR_TRANSACTION_FREEZE_IN_PROGRESS = 6840; + // + // MessageId: ERROR_NOT_SNAPSHOT_VOLUME + // + // MessageText: + // + // The target volume is not a snapshot volume. This operation is only valid + // on a volume mounted as a snapshot. + // + int ERROR_NOT_SNAPSHOT_VOLUME = 6841; + // + // MessageId: ERROR_NO_SAVEPOINT_WITH_OPEN_FILES + // + // MessageText: + // + // The savepoint operation failed because files are open on the transaction. + // This is not permitted. + // + int ERROR_NO_SAVEPOINT_WITH_OPEN_FILES = 6842; + // + // MessageId: ERROR_DATA_LOST_REPAIR + // + // MessageText: + // + // Windows has discovered corruption in a file, and that file has since been + // repaired. Data loss may have occurred. + // + int ERROR_DATA_LOST_REPAIR = 6843; + // + // MessageId: ERROR_SPARSE_NOT_ALLOWED_IN_TRANSACTION + // + // MessageText: + // + // The sparse operation could not be completed because a transaction is + // active on the file. + // + int ERROR_SPARSE_NOT_ALLOWED_IN_TRANSACTION = 6844; + // + // MessageId: ERROR_TM_IDENTITY_MISMATCH + // + // MessageText: + // + // The call to create a TransactionManager object failed because the Tm + // Identity stored in the logfile does not match the Tm Identity that was + // passed in as an argument. + // + int ERROR_TM_IDENTITY_MISMATCH = 6845; + // + // MessageId: ERROR_FLOATED_SECTION + // + // MessageText: + // + // I/O was attempted on a section object that has been floated as a result + // of a transaction ending. There is no valid data. + // + int ERROR_FLOATED_SECTION = 6846; + // + // MessageId: ERROR_CANNOT_ACCEPT_TRANSACTED_WORK + // + // MessageText: + // + // The transactional resource manager cannot currently accept transacted + // work due to a transient condition such as low resources. + // + int ERROR_CANNOT_ACCEPT_TRANSACTED_WORK = 6847; + // + // MessageId: ERROR_CANNOT_ABORT_TRANSACTIONS + // + // MessageText: + // + // The transactional resource manager had too many tranactions outstanding + // that could not be aborted. The transactional resource manger has been + // shut down. + // + int ERROR_CANNOT_ABORT_TRANSACTIONS = 6848; + // + // MessageId: ERROR_BAD_CLUSTERS + // + // MessageText: + // + // The operation could not be completed due to bad clusters on disk. + // + int ERROR_BAD_CLUSTERS = 6849; + // + // MessageId: ERROR_COMPRESSION_NOT_ALLOWED_IN_TRANSACTION + // + // MessageText: + // + // The compression operation could not be completed because a transaction is + // active on the file. + // + int ERROR_COMPRESSION_NOT_ALLOWED_IN_TRANSACTION = 6850; + // + // MessageId: ERROR_VOLUME_DIRTY + // + // MessageText: + // + // The operation could not be completed because the volume is dirty. Please + // run chkdsk and try again. + // + int ERROR_VOLUME_DIRTY = 6851; + // + // MessageId: ERROR_NO_LINK_TRACKING_IN_TRANSACTION + // + // MessageText: + // + // The link tracking operation could not be completed because a transaction + // is active. + // + int ERROR_NO_LINK_TRACKING_IN_TRANSACTION = 6852; + // + // MessageId: ERROR_OPERATION_NOT_SUPPORTED_IN_TRANSACTION + // + // MessageText: + // + // This operation cannot be performed in a transaction. + // + int ERROR_OPERATION_NOT_SUPPORTED_IN_TRANSACTION = 6853; + // ///////////////////////////////////////////////// + // =// + // =Available=// + // =// + // =6900 to=6999=// + // ///////////////////////////////////////////////// + // ///////////////////////////////////////////////// + // =// + // =Terminal Server Error codes=// + // =// + // =7000 to=7099=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_CTX_WINSTATION_NAME_INVALID + // + // MessageText: + // + // The specified session name is invalid. + // + int ERROR_CTX_WINSTATION_NAME_INVALID = 7001; + // + // MessageId: ERROR_CTX_INVALID_PD + // + // MessageText: + // + // The specified protocol driver is invalid. + // + int ERROR_CTX_INVALID_PD = 7002; + // + // MessageId: ERROR_CTX_PD_NOT_FOUND + // + // MessageText: + // + // The specified protocol driver was not found in the system path. + // + int ERROR_CTX_PD_NOT_FOUND = 7003; + // + // MessageId: ERROR_CTX_WD_NOT_FOUND + // + // MessageText: + // + // The specified terminal connection driver was not found in the system + // path. + // + int ERROR_CTX_WD_NOT_FOUND = 7004; + // + // MessageId: ERROR_CTX_CANNOT_MAKE_EVENTLOG_ENTRY + // + // MessageText: + // + // A registry key for event logging could not be created for this session. + // + int ERROR_CTX_CANNOT_MAKE_EVENTLOG_ENTRY = 7005; + // + // MessageId: ERROR_CTX_SERVICE_NAME_COLLISION + // + // MessageText: + // + // A service with the same name already exists on the system. + // + int ERROR_CTX_SERVICE_NAME_COLLISION = 7006; + // + // MessageId: ERROR_CTX_CLOSE_PENDING + // + // MessageText: + // + // A close operation is pending on the session. + // + int ERROR_CTX_CLOSE_PENDING = 7007; + // + // MessageId: ERROR_CTX_NO_OUTBUF + // + // MessageText: + // + // There are no free output buffers available. + // + int ERROR_CTX_NO_OUTBUF = 7008; + // + // MessageId: ERROR_CTX_MODEM_INF_NOT_FOUND + // + // MessageText: + // + // The MODEM.INF file was not found. + // + int ERROR_CTX_MODEM_INF_NOT_FOUND = 7009; + // + // MessageId: ERROR_CTX_INVALID_MODEMNAME + // + // MessageText: + // + // The modem name was not found in MODEM.INF. + // + int ERROR_CTX_INVALID_MODEMNAME = 7010; + // + // MessageId: ERROR_CTX_MODEM_RESPONSE_ERROR + // + // MessageText: + // + // The modem did not accept the command sent to it. Verify that the + // configured modem name matches the attached modem. + // + int ERROR_CTX_MODEM_RESPONSE_ERROR = 7011; + // + // MessageId: ERROR_CTX_MODEM_RESPONSE_TIMEOUT + // + // MessageText: + // + // The modem did not respond to the command sent to it. Verify that the + // modem is properly cabled and powered on. + // + int ERROR_CTX_MODEM_RESPONSE_TIMEOUT = 7012; + // + // MessageId: ERROR_CTX_MODEM_RESPONSE_NO_CARRIER + // + // MessageText: + // + // Carrier detect has failed or carrier has been dropped due to disconnect. + // + int ERROR_CTX_MODEM_RESPONSE_NO_CARRIER = 7013; + // + // MessageId: ERROR_CTX_MODEM_RESPONSE_NO_DIALTONE + // + // MessageText: + // + // Dial tone not detected within the required time. Verify that the phone + // cable is properly attached and functional. + // + int ERROR_CTX_MODEM_RESPONSE_NO_DIALTONE = 7014; + // + // MessageId: ERROR_CTX_MODEM_RESPONSE_BUSY + // + // MessageText: + // + // Busy signal detected at remote site on callback. + // + int ERROR_CTX_MODEM_RESPONSE_BUSY = 7015; + // + // MessageId: ERROR_CTX_MODEM_RESPONSE_VOICE + // + // MessageText: + // + // Voice detected at remote site on callback. + // + int ERROR_CTX_MODEM_RESPONSE_VOICE = 7016; + // + // MessageId: ERROR_CTX_TD_ERROR + // + // MessageText: + // + // Transport driver error + // + int ERROR_CTX_TD_ERROR = 7017; + // + // MessageId: ERROR_CTX_WINSTATION_NOT_FOUND + // + // MessageText: + // + // The specified session cannot be found. + // + int ERROR_CTX_WINSTATION_NOT_FOUND = 7022; + // + // MessageId: ERROR_CTX_WINSTATION_ALREADY_EXISTS + // + // MessageText: + // + // The specified session name is already in use. + // + int ERROR_CTX_WINSTATION_ALREADY_EXISTS = 7023; + // + // MessageId: ERROR_CTX_WINSTATION_BUSY + // + // MessageText: + // + // The requested operation cannot be completed because the terminal + // connection is currently busy processing a connect, disconnect, reset, or + // delete operation. + // + int ERROR_CTX_WINSTATION_BUSY = 7024; + // + // MessageId: ERROR_CTX_BAD_VIDEO_MODE + // + // MessageText: + // + // An attempt has been made to connect to a session whose video mode is not + // supported by the current client. + // + int ERROR_CTX_BAD_VIDEO_MODE = 7025; + // + // MessageId: ERROR_CTX_GRAPHICS_INVALID + // + // MessageText: + // + // The application attempted to enable DOS graphics mode. + // DOS graphics mode is not supported. + // + int ERROR_CTX_GRAPHICS_INVALID = 7035; + // + // MessageId: ERROR_CTX_LOGON_DISABLED + // + // MessageText: + // + // Your interactive logon privilege has been disabled. + // Please contact your administrator. + // + int ERROR_CTX_LOGON_DISABLED = 7037; + // + // MessageId: ERROR_CTX_NOT_CONSOLE + // + // MessageText: + // + // The requested operation can be performed only on the system console. + // This is most often the result of a driver or system DLL requiring direct + // console access. + // + int ERROR_CTX_NOT_CONSOLE = 7038; + // + // MessageId: ERROR_CTX_CLIENT_QUERY_TIMEOUT + // + // MessageText: + // + // The client failed to respond to the server connect message. + // + int ERROR_CTX_CLIENT_QUERY_TIMEOUT = 7040; + // + // MessageId: ERROR_CTX_CONSOLE_DISCONNECT + // + // MessageText: + // + // Disconnecting the console session is not supported. + // + int ERROR_CTX_CONSOLE_DISCONNECT = 7041; + // + // MessageId: ERROR_CTX_CONSOLE_CONNECT + // + // MessageText: + // + // Reconnecting a disconnected session to the console is not supported. + // + int ERROR_CTX_CONSOLE_CONNECT = 7042; + // + // MessageId: ERROR_CTX_SHADOW_DENIED + // + // MessageText: + // + // The request to control another session remotely was denied. + // + int ERROR_CTX_SHADOW_DENIED = 7044; + // + // MessageId: ERROR_CTX_WINSTATION_ACCESS_DENIED + // + // MessageText: + // + // The requested session access is denied. + // + int ERROR_CTX_WINSTATION_ACCESS_DENIED = 7045; + // + // MessageId: ERROR_CTX_INVALID_WD + // + // MessageText: + // + // The specified terminal connection driver is invalid. + // + int ERROR_CTX_INVALID_WD = 7049; + // + // MessageId: ERROR_CTX_SHADOW_INVALID + // + // MessageText: + // + // The requested session cannot be controlled remotely. + // This may be because the session is disconnected or does not currently + // have a user logged on. + // + int ERROR_CTX_SHADOW_INVALID = 7050; + // + // MessageId: ERROR_CTX_SHADOW_DISABLED + // + // MessageText: + // + // The requested session is not configured to allow remote control. + // + int ERROR_CTX_SHADOW_DISABLED = 7051; + // + // MessageId: ERROR_CTX_CLIENT_LICENSE_IN_USE + // + // MessageText: + // + // Your request to connect to this Terminal Server has been rejected. Your + // Terminal Server client license number is currently being used by another + // user. + // Please call your system administrator to obtain a unique license number. + // + int ERROR_CTX_CLIENT_LICENSE_IN_USE = 7052; + // + // MessageId: ERROR_CTX_CLIENT_LICENSE_NOT_SET + // + // MessageText: + // + // Your request to connect to this Terminal Server has been rejected. Your + // Terminal Server client license number has not been entered for this copy + // of the Terminal Server client. + // Please contact your system administrator. + // + int ERROR_CTX_CLIENT_LICENSE_NOT_SET = 7053; + // + // MessageId: ERROR_CTX_LICENSE_NOT_AVAILABLE + // + // MessageText: + // + // The number of connections to this computer is limited and all connections + // are in use right now. + // Try connecting later or contact your system administrator. + // + int ERROR_CTX_LICENSE_NOT_AVAILABLE = 7054; + // + // MessageId: ERROR_CTX_LICENSE_CLIENT_INVALID + // + // MessageText: + // + // The client you are using is not licensed to use this system. Your logon + // request is denied. + // + int ERROR_CTX_LICENSE_CLIENT_INVALID = 7055; + // + // MessageId: ERROR_CTX_LICENSE_EXPIRED + // + // MessageText: + // + // The system license has expired. Your logon request is denied. + // + int ERROR_CTX_LICENSE_EXPIRED = 7056; + // + // MessageId: ERROR_CTX_SHADOW_NOT_RUNNING + // + // MessageText: + // + // Remote control could not be terminated because the specified session is + // not currently being remotely controlled. + // + int ERROR_CTX_SHADOW_NOT_RUNNING = 7057; + // + // MessageId: ERROR_CTX_SHADOW_ENDED_BY_MODE_CHANGE + // + // MessageText: + // + // The remote control of the console was terminated because the display mode + // was changed. Changing the display mode in a remote control session is not + // supported. + // + int ERROR_CTX_SHADOW_ENDED_BY_MODE_CHANGE = 7058; + // + // MessageId: ERROR_ACTIVATION_COUNT_EXCEEDED + // + // MessageText: + // + // Activation has already been reset the maximum number of times for this + // installation. Your activation timer will not be cleared. + // + int ERROR_ACTIVATION_COUNT_EXCEEDED = 7059; + // + // MessageId: ERROR_CTX_WINSTATIONS_DISABLED + // + // MessageText: + // + // Remote logins are currently disabled. + // + int ERROR_CTX_WINSTATIONS_DISABLED = 7060; + // + // MessageId: ERROR_CTX_ENCRYPTION_LEVEL_REQUIRED + // + // MessageText: + // + // You do not have the proper encryption level to access this Session. + // + int ERROR_CTX_ENCRYPTION_LEVEL_REQUIRED = 7061; + // + // MessageId: ERROR_CTX_SESSION_IN_USE + // + // MessageText: + // + // The user %s\\%s is currently logged on to this computer. Only the current + // user or an administrator can log on to this computer. + // + int ERROR_CTX_SESSION_IN_USE = 7062; + // + // MessageId: ERROR_CTX_NO_FORCE_LOGOFF + // + // MessageText: + // + // The user %s\\%s is already logged on to the console of this computer. You + // do not have permission to log in at this time. To resolve this issue, + // contact %s\\%s and have them log off. + // + int ERROR_CTX_NO_FORCE_LOGOFF = 7063; + // + // MessageId: ERROR_CTX_ACCOUNT_RESTRICTION + // + // MessageText: + // + // Unable to log you on because of an account restriction. + // + int ERROR_CTX_ACCOUNT_RESTRICTION = 7064; + // + // MessageId: ERROR_RDP_PROTOCOL_ERROR + // + // MessageText: + // + // The RDP protocol component %2 detected an error in the protocol stream + // and has disconnected the client. + // + int ERROR_RDP_PROTOCOL_ERROR = 7065; + // + // MessageId: ERROR_CTX_CDM_CONNECT + // + // MessageText: + // + // The Client Drive Mapping Service Has Connected on Terminal Connection. + // + int ERROR_CTX_CDM_CONNECT = 7066; + // + // MessageId: ERROR_CTX_CDM_DISCONNECT + // + // MessageText: + // + // The Client Drive Mapping Service Has Disconnected on Terminal Connection. + // + int ERROR_CTX_CDM_DISCONNECT = 7067; + // + // MessageId: ERROR_CTX_SECURITY_LAYER_ERROR + // + // MessageText: + // + // The Terminal Server security layer detected an error in the protocol + // stream and has disconnected the client. + // + int ERROR_CTX_SECURITY_LAYER_ERROR = 7068; + // + // MessageId: ERROR_TS_INCOMPATIBLE_SESSIONS + // + // MessageText: + // + // The target session is incompatible with the current session. + // + int ERROR_TS_INCOMPATIBLE_SESSIONS = 7069; + // ///////////////////////////////////////////////// + // =// + // =Available=// + // =// + // =7100 to=7499=// + // ///////////////////////////////////////////////// + // ///////////////////////////////////////////////// + // =/ + // =Traffic Control Error Codes=/ + // =/ + // =7500 to=7999=/ + // =/ + // =defined in: tcerror.h=/ + // ///////////////////////////////////////////////// + // ///////////////////////////////////////////////// + // =// + // =Active Directory Error codes=// + // =// + // =8000 to=8999=// + // ///////////////////////////////////////////////// + // ***************** + // FACILITY_FILE_REPLICATION_SERVICE + // ***************** + // + // MessageId: FRS_ERR_INVALID_API_SEQUENCE + // + // MessageText: + // + // The file replication service API was called incorrectly. + // + int FRS_ERR_INVALID_API_SEQUENCE = 8001; + // + // MessageId: FRS_ERR_STARTING_SERVICE + // + // MessageText: + // + // The file replication service cannot be started. + // + int FRS_ERR_STARTING_SERVICE = 8002; + // + // MessageId: FRS_ERR_STOPPING_SERVICE + // + // MessageText: + // + // The file replication service cannot be stopped. + // + int FRS_ERR_STOPPING_SERVICE = 8003; + // + // MessageId: FRS_ERR_INTERNAL_API + // + // MessageText: + // + // The file replication service API terminated the request. + // The event log may have more information. + // + int FRS_ERR_INTERNAL_API = 8004; + // + // MessageId: FRS_ERR_INTERNAL + // + // MessageText: + // + // The file replication service terminated the request. + // The event log may have more information. + // + int FRS_ERR_INTERNAL = 8005; + // + // MessageId: FRS_ERR_SERVICE_COMM + // + // MessageText: + // + // The file replication service cannot be contacted. + // The event log may have more information. + // + int FRS_ERR_SERVICE_COMM = 8006; + // + // MessageId: FRS_ERR_INSUFFICIENT_PRIV + // + // MessageText: + // + // The file replication service cannot satisfy the request because the user + // has insufficient privileges. + // The event log may have more information. + // + int FRS_ERR_INSUFFICIENT_PRIV = 8007; + // + // MessageId: FRS_ERR_AUTHENTICATION + // + // MessageText: + // + // The file replication service cannot satisfy the request because + // authenticated RPC is not available. + // The event log may have more information. + // + int FRS_ERR_AUTHENTICATION = 8008; + // + // MessageId: FRS_ERR_PARENT_INSUFFICIENT_PRIV + // + // MessageText: + // + // The file replication service cannot satisfy the request because the user + // has insufficient privileges on the domain controller. + // The event log may have more information. + // + int FRS_ERR_PARENT_INSUFFICIENT_PRIV = 8009; + // + // MessageId: FRS_ERR_PARENT_AUTHENTICATION + // + // MessageText: + // + // The file replication service cannot satisfy the request because + // authenticated RPC is not available on the domain controller. + // The event log may have more information. + // + int FRS_ERR_PARENT_AUTHENTICATION = 8010; + // + // MessageId: FRS_ERR_CHILD_TO_PARENT_COMM + // + // MessageText: + // + // The file replication service cannot communicate with the file replication + // service on the domain controller. + // The event log may have more information. + // + int FRS_ERR_CHILD_TO_PARENT_COMM = 8011; + // + // MessageId: FRS_ERR_PARENT_TO_CHILD_COMM + // + // MessageText: + // + // The file replication service on the domain controller cannot communicate + // with the file replication service on this computer. + // The event log may have more information. + // + int FRS_ERR_PARENT_TO_CHILD_COMM = 8012; + // + // MessageId: FRS_ERR_SYSVOL_POPULATE + // + // MessageText: + // + // The file replication service cannot populate the system volume because of + // an internal error. + // The event log may have more information. + // + int FRS_ERR_SYSVOL_POPULATE = 8013; + // + // MessageId: FRS_ERR_SYSVOL_POPULATE_TIMEOUT + // + // MessageText: + // + // The file replication service cannot populate the system volume because of + // an internal timeout. + // The event log may have more information. + // + int FRS_ERR_SYSVOL_POPULATE_TIMEOUT = 8014; + // + // MessageId: FRS_ERR_SYSVOL_IS_BUSY + // + // MessageText: + // + // The file replication service cannot process the request. The system + // volume is busy with a previous request. + // + int FRS_ERR_SYSVOL_IS_BUSY = 8015; + // + // MessageId: FRS_ERR_SYSVOL_DEMOTE + // + // MessageText: + // + // The file replication service cannot stop replicating the system volume + // because of an internal error. + // The event log may have more information. + // + int FRS_ERR_SYSVOL_DEMOTE = 8016; + // + // MessageId: FRS_ERR_INVALID_SERVICE_PARAMETER + // + // MessageText: + // + // The file replication service detected an invalid parameter. + // + int FRS_ERR_INVALID_SERVICE_PARAMETER = 8017; + // ***************** + // FACILITY DIRECTORY SERVICE + // ***************** + int DS_S_SUCCESS = NO_ERROR; + // + // MessageId: ERROR_DS_NOT_INSTALLED + // + // MessageText: + // + // An error occurred while installing the directory service. For more + // information, see the event log. + // + int ERROR_DS_NOT_INSTALLED = 8200; + // + // MessageId: ERROR_DS_MEMBERSHIP_EVALUATED_LOCALLY + // + // MessageText: + // + // The directory service evaluated group memberships locally. + // + int ERROR_DS_MEMBERSHIP_EVALUATED_LOCALLY = 8201; + // + // MessageId: ERROR_DS_NO_ATTRIBUTE_OR_VALUE + // + // MessageText: + // + // The specified directory service attribute or value does not exist. + // + int ERROR_DS_NO_ATTRIBUTE_OR_VALUE = 8202; + // + // MessageId: ERROR_DS_INVALID_ATTRIBUTE_SYNTAX + // + // MessageText: + // + // The attribute syntax specified to the directory service is invalid. + // + int ERROR_DS_INVALID_ATTRIBUTE_SYNTAX = 8203; + // + // MessageId: ERROR_DS_ATTRIBUTE_TYPE_UNDEFINED + // + // MessageText: + // + // The attribute type specified to the directory service is not defined. + // + int ERROR_DS_ATTRIBUTE_TYPE_UNDEFINED = 8204; + // + // MessageId: ERROR_DS_ATTRIBUTE_OR_VALUE_EXISTS + // + // MessageText: + // + // The specified directory service attribute or value already exists. + // + int ERROR_DS_ATTRIBUTE_OR_VALUE_EXISTS = 8205; + // + // MessageId: ERROR_DS_BUSY + // + // MessageText: + // + // The directory service is busy. + // + int ERROR_DS_BUSY = 8206; + // + // MessageId: ERROR_DS_UNAVAILABLE + // + // MessageText: + // + // The directory service is unavailable. + // + int ERROR_DS_UNAVAILABLE = 8207; + // + // MessageId: ERROR_DS_NO_RIDS_ALLOCATED + // + // MessageText: + // + // The directory service was unable to allocate a relative identifier. + // + int ERROR_DS_NO_RIDS_ALLOCATED = 8208; + // + // MessageId: ERROR_DS_NO_MORE_RIDS + // + // MessageText: + // + // The directory service has exhausted the pool of relative identifiers. + // + int ERROR_DS_NO_MORE_RIDS = 8209; + // + // MessageId: ERROR_DS_INCORRECT_ROLE_OWNER + // + // MessageText: + // + // The requested operation could not be performed because the directory + // service is not the master for that type of operation. + // + int ERROR_DS_INCORRECT_ROLE_OWNER = 8210; + // + // MessageId: ERROR_DS_RIDMGR_INIT_ERROR + // + // MessageText: + // + // The directory service was unable to initialize the subsystem that + // allocates relative identifiers. + // + int ERROR_DS_RIDMGR_INIT_ERROR = 8211; + // + // MessageId: ERROR_DS_OBJ_CLASS_VIOLATION + // + // MessageText: + // + // The requested operation did not satisfy one or more constraints + // associated with the class of the object. + // + int ERROR_DS_OBJ_CLASS_VIOLATION = 8212; + // + // MessageId: ERROR_DS_CANT_ON_NON_LEAF + // + // MessageText: + // + // The directory service can perform the requested operation only on a leaf + // object. + // + int ERROR_DS_CANT_ON_NON_LEAF = 8213; + // + // MessageId: ERROR_DS_CANT_ON_RDN + // + // MessageText: + // + // The directory service cannot perform the requested operation on the RDN + // attribute of an object. + // + int ERROR_DS_CANT_ON_RDN = 8214; + // + // MessageId: ERROR_DS_CANT_MOD_OBJ_CLASS + // + // MessageText: + // + // The directory service detected an attempt to modify the object class of + // an object. + // + int ERROR_DS_CANT_MOD_OBJ_CLASS = 8215; + // + // MessageId: ERROR_DS_CROSS_DOM_MOVE_ERROR + // + // MessageText: + // + // The requested cross-domain move operation could not be performed. + // + int ERROR_DS_CROSS_DOM_MOVE_ERROR = 8216; + // + // MessageId: ERROR_DS_GC_NOT_AVAILABLE + // + // MessageText: + // + // Unable to contact the global catalog server. + // + int ERROR_DS_GC_NOT_AVAILABLE = 8217; + // + // MessageId: ERROR_SHARED_POLICY + // + // MessageText: + // + // The policy object is shared and can only be modified at the root. + // + int ERROR_SHARED_POLICY = 8218; + // + // MessageId: ERROR_POLICY_OBJECT_NOT_FOUND + // + // MessageText: + // + // The policy object does not exist. + // + int ERROR_POLICY_OBJECT_NOT_FOUND = 8219; + // + // MessageId: ERROR_POLICY_ONLY_IN_DS + // + // MessageText: + // + // The requested policy information is only in the directory service. + // + int ERROR_POLICY_ONLY_IN_DS = 8220; + // + // MessageId: ERROR_PROMOTION_ACTIVE + // + // MessageText: + // + // A domain controller promotion is currently active. + // + int ERROR_PROMOTION_ACTIVE = 8221; + // + // MessageId: ERROR_NO_PROMOTION_ACTIVE + // + // MessageText: + // + // A domain controller promotion is not currently active + // + int ERROR_NO_PROMOTION_ACTIVE = 8222; + // =8223 unused + // + // MessageId: ERROR_DS_OPERATIONS_ERROR + // + // MessageText: + // + // An operations error occurred. + // + int ERROR_DS_OPERATIONS_ERROR = 8224; + // + // MessageId: ERROR_DS_PROTOCOL_ERROR + // + // MessageText: + // + // A protocol error occurred. + // + int ERROR_DS_PROTOCOL_ERROR = 8225; + // + // MessageId: ERROR_DS_TIMELIMIT_EXCEEDED + // + // MessageText: + // + // The time limit for this request was exceeded. + // + int ERROR_DS_TIMELIMIT_EXCEEDED = 8226; + // + // MessageId: ERROR_DS_SIZELIMIT_EXCEEDED + // + // MessageText: + // + // The size limit for this request was exceeded. + // + int ERROR_DS_SIZELIMIT_EXCEEDED = 8227; + // + // MessageId: ERROR_DS_ADMIN_LIMIT_EXCEEDED + // + // MessageText: + // + // The administrative limit for this request was exceeded. + // + int ERROR_DS_ADMIN_LIMIT_EXCEEDED = 8228; + // + // MessageId: ERROR_DS_COMPARE_FALSE + // + // MessageText: + // + // The compare response was false. + // + int ERROR_DS_COMPARE_FALSE = 8229; + // + // MessageId: ERROR_DS_COMPARE_TRUE + // + // MessageText: + // + // The compare response was true. + // + int ERROR_DS_COMPARE_TRUE = 8230; + // + // MessageId: ERROR_DS_AUTH_METHOD_NOT_SUPPORTED + // + // MessageText: + // + // The requested authentication method is not supported by the server. + // + int ERROR_DS_AUTH_METHOD_NOT_SUPPORTED = 8231; + // + // MessageId: ERROR_DS_STRONG_AUTH_REQUIRED + // + // MessageText: + // + // A more secure authentication method is required for this server. + // + int ERROR_DS_STRONG_AUTH_REQUIRED = 8232; + // + // MessageId: ERROR_DS_INAPPROPRIATE_AUTH + // + // MessageText: + // + // Inappropriate authentication. + // + int ERROR_DS_INAPPROPRIATE_AUTH = 8233; + // + // MessageId: ERROR_DS_AUTH_UNKNOWN + // + // MessageText: + // + // The authentication mechanism is unknown. + // + int ERROR_DS_AUTH_UNKNOWN = 8234; + // + // MessageId: ERROR_DS_REFERRAL + // + // MessageText: + // + // A referral was returned from the server. + // + int ERROR_DS_REFERRAL = 8235; + // + // MessageId: ERROR_DS_UNAVAILABLE_CRIT_EXTENSION + // + // MessageText: + // + // The server does not support the requested critical extension. + // + int ERROR_DS_UNAVAILABLE_CRIT_EXTENSION = 8236; + // + // MessageId: ERROR_DS_CONFIDENTIALITY_REQUIRED + // + // MessageText: + // + // This request requires a secure connection. + // + int ERROR_DS_CONFIDENTIALITY_REQUIRED = 8237; + // + // MessageId: ERROR_DS_INAPPROPRIATE_MATCHING + // + // MessageText: + // + // Inappropriate matching. + // + int ERROR_DS_INAPPROPRIATE_MATCHING = 8238; + // + // MessageId: ERROR_DS_CONSTRAINT_VIOLATION + // + // MessageText: + // + // A constraint violation occurred. + // + int ERROR_DS_CONSTRAINT_VIOLATION = 8239; + // + // MessageId: ERROR_DS_NO_SUCH_OBJECT + // + // MessageText: + // + // There is no such object on the server. + // + int ERROR_DS_NO_SUCH_OBJECT = 8240; + // + // MessageId: ERROR_DS_ALIAS_PROBLEM + // + // MessageText: + // + // There is an alias problem. + // + int ERROR_DS_ALIAS_PROBLEM = 8241; + // + // MessageId: ERROR_DS_INVALID_DN_SYNTAX + // + // MessageText: + // + // An invalid dn syntax has been specified. + // + int ERROR_DS_INVALID_DN_SYNTAX = 8242; + // + // MessageId: ERROR_DS_IS_LEAF + // + // MessageText: + // + // The object is a leaf object. + // + int ERROR_DS_IS_LEAF = 8243; + // + // MessageId: ERROR_DS_ALIAS_DEREF_PROBLEM + // + // MessageText: + // + // There is an alias dereferencing problem. + // + int ERROR_DS_ALIAS_DEREF_PROBLEM = 8244; + // + // MessageId: ERROR_DS_UNWILLING_TO_PERFORM + // + // MessageText: + // + // The server is unwilling to process the request. + // + int ERROR_DS_UNWILLING_TO_PERFORM = 8245; + // + // MessageId: ERROR_DS_LOOP_DETECT + // + // MessageText: + // + // A loop has been detected. + // + int ERROR_DS_LOOP_DETECT = 8246; + // + // MessageId: ERROR_DS_NAMING_VIOLATION + // + // MessageText: + // + // There is a naming violation. + // + int ERROR_DS_NAMING_VIOLATION = 8247; + // + // MessageId: ERROR_DS_OBJECT_RESULTS_TOO_LARGE + // + // MessageText: + // + // The result set is too large. + // + int ERROR_DS_OBJECT_RESULTS_TOO_LARGE = 8248; + // + // MessageId: ERROR_DS_AFFECTS_MULTIPLE_DSAS + // + // MessageText: + // + // The operation affects multiple DSAs + // + int ERROR_DS_AFFECTS_MULTIPLE_DSAS = 8249; + // + // MessageId: ERROR_DS_SERVER_DOWN + // + // MessageText: + // + // The server is not operational. + // + int ERROR_DS_SERVER_DOWN = 8250; + // + // MessageId: ERROR_DS_LOCAL_ERROR + // + // MessageText: + // + // A local error has occurred. + // + int ERROR_DS_LOCAL_ERROR = 8251; + // + // MessageId: ERROR_DS_ENCODING_ERROR + // + // MessageText: + // + // An encoding error has occurred. + // + int ERROR_DS_ENCODING_ERROR = 8252; + // + // MessageId: ERROR_DS_DECODING_ERROR + // + // MessageText: + // + // A decoding error has occurred. + // + int ERROR_DS_DECODING_ERROR = 8253; + // + // MessageId: ERROR_DS_FILTER_UNKNOWN + // + // MessageText: + // + // The search filter cannot be recognized. + // + int ERROR_DS_FILTER_UNKNOWN = 8254; + // + // MessageId: ERROR_DS_PARAM_ERROR + // + // MessageText: + // + // One or more parameters are illegal. + // + int ERROR_DS_PARAM_ERROR = 8255; + // + // MessageId: ERROR_DS_NOT_SUPPORTED + // + // MessageText: + // + // The specified method is not supported. + // + int ERROR_DS_NOT_SUPPORTED = 8256; + // + // MessageId: ERROR_DS_NO_RESULTS_RETURNED + // + // MessageText: + // + // No results were returned. + // + int ERROR_DS_NO_RESULTS_RETURNED = 8257; + // + // MessageId: ERROR_DS_CONTROL_NOT_FOUND + // + // MessageText: + // + // The specified control is not supported by the server. + // + int ERROR_DS_CONTROL_NOT_FOUND = 8258; + // + // MessageId: ERROR_DS_CLIENT_LOOP + // + // MessageText: + // + // A referral loop was detected by the client. + // + int ERROR_DS_CLIENT_LOOP = 8259; + // + // MessageId: ERROR_DS_REFERRAL_LIMIT_EXCEEDED + // + // MessageText: + // + // The preset referral limit was exceeded. + // + int ERROR_DS_REFERRAL_LIMIT_EXCEEDED = 8260; + // + // MessageId: ERROR_DS_SORT_CONTROL_MISSING + // + // MessageText: + // + // The search requires a SORT control. + // + int ERROR_DS_SORT_CONTROL_MISSING = 8261; + // + // MessageId: ERROR_DS_OFFSET_RANGE_ERROR + // + // MessageText: + // + // The search results exceed the offset range specified. + // + int ERROR_DS_OFFSET_RANGE_ERROR = 8262; + // + // MessageId: ERROR_DS_ROOT_MUST_BE_NC + // + // MessageText: + // + // The root object must be the head of a naming context. The root object + // cannot have an instantiated parent. + // + int ERROR_DS_ROOT_MUST_BE_NC = 8301; + // + // MessageId: ERROR_DS_ADD_REPLICA_INHIBITED + // + // MessageText: + // + // The add replica operation cannot be performed. The naming context must be + // writeable in order to create the replica. + // + int ERROR_DS_ADD_REPLICA_INHIBITED = 8302; + // + // MessageId: ERROR_DS_ATT_NOT_DEF_IN_SCHEMA + // + // MessageText: + // + // A reference to an attribute that is not defined in the schema occurred. + // + int ERROR_DS_ATT_NOT_DEF_IN_SCHEMA = 8303; + // + // MessageId: ERROR_DS_MAX_OBJ_SIZE_EXCEEDED + // + // MessageText: + // + // The maximum size of an object has been exceeded. + // + int ERROR_DS_MAX_OBJ_SIZE_EXCEEDED = 8304; + // + // MessageId: ERROR_DS_OBJ_STRING_NAME_EXISTS + // + // MessageText: + // + // An attempt was made to add an object to the directory with a name that is + // already in use. + // + int ERROR_DS_OBJ_STRING_NAME_EXISTS = 8305; + // + // MessageId: ERROR_DS_NO_RDN_DEFINED_IN_SCHEMA + // + // MessageText: + // + // An attempt was made to add an object of a class that does not have an RDN + // defined in the schema. + // + int ERROR_DS_NO_RDN_DEFINED_IN_SCHEMA = 8306; + // + // MessageId: ERROR_DS_RDN_DOESNT_MATCH_SCHEMA + // + // MessageText: + // + // An attempt was made to add an object using an RDN that is not the RDN + // defined in the schema. + // + int ERROR_DS_RDN_DOESNT_MATCH_SCHEMA = 8307; + // + // MessageId: ERROR_DS_NO_REQUESTED_ATTS_FOUND + // + // MessageText: + // + // None of the requested attributes were found on the objects. + // + int ERROR_DS_NO_REQUESTED_ATTS_FOUND = 8308; + // + // MessageId: ERROR_DS_USER_BUFFER_TO_SMALL + // + // MessageText: + // + // The user buffer is too small. + // + int ERROR_DS_USER_BUFFER_TO_SMALL = 8309; + // + // MessageId: ERROR_DS_ATT_IS_NOT_ON_OBJ + // + // MessageText: + // + // The attribute specified in the operation is not present on the object. + // + int ERROR_DS_ATT_IS_NOT_ON_OBJ = 8310; + // + // MessageId: ERROR_DS_ILLEGAL_MOD_OPERATION + // + // MessageText: + // + // Illegal modify operation. Some aspect of the modification is not + // permitted. + // + int ERROR_DS_ILLEGAL_MOD_OPERATION = 8311; + // + // MessageId: ERROR_DS_OBJ_TOO_LARGE + // + // MessageText: + // + // The specified object is too large. + // + int ERROR_DS_OBJ_TOO_LARGE = 8312; + // + // MessageId: ERROR_DS_BAD_INSTANCE_TYPE + // + // MessageText: + // + // The specified instance type is not valid. + // + int ERROR_DS_BAD_INSTANCE_TYPE = 8313; + // + // MessageId: ERROR_DS_MASTERDSA_REQUIRED + // + // MessageText: + // + // The operation must be performed at a master DSA. + // + int ERROR_DS_MASTERDSA_REQUIRED = 8314; + // + // MessageId: ERROR_DS_OBJECT_CLASS_REQUIRED + // + // MessageText: + // + // The object class attribute must be specified. + // + int ERROR_DS_OBJECT_CLASS_REQUIRED = 8315; + // + // MessageId: ERROR_DS_MISSING_REQUIRED_ATT + // + // MessageText: + // + // A required attribute is missing. + // + int ERROR_DS_MISSING_REQUIRED_ATT = 8316; + // + // MessageId: ERROR_DS_ATT_NOT_DEF_FOR_CLASS + // + // MessageText: + // + // An attempt was made to modify an object to include an attribute that is + // not legal for its class. + // + int ERROR_DS_ATT_NOT_DEF_FOR_CLASS = 8317; + // + // MessageId: ERROR_DS_ATT_ALREADY_EXISTS + // + // MessageText: + // + // The specified attribute is already present on the object. + // + int ERROR_DS_ATT_ALREADY_EXISTS = 8318; + // =8319 unused + // + // MessageId: ERROR_DS_CANT_ADD_ATT_VALUES + // + // MessageText: + // + // The specified attribute is not present, or has no values. + // + int ERROR_DS_CANT_ADD_ATT_VALUES = 8320; + // + // MessageId: ERROR_DS_SINGLE_VALUE_CONSTRAINT + // + // MessageText: + // + // Multiple values were specified for an attribute that can have only one + // value. + // + int ERROR_DS_SINGLE_VALUE_CONSTRAINT = 8321; + // + // MessageId: ERROR_DS_RANGE_CONSTRAINT + // + // MessageText: + // + // A value for the attribute was not in the acceptable range of values. + // + int ERROR_DS_RANGE_CONSTRAINT = 8322; + // + // MessageId: ERROR_DS_ATT_VAL_ALREADY_EXISTS + // + // MessageText: + // + // The specified value already exists. + // + int ERROR_DS_ATT_VAL_ALREADY_EXISTS = 8323; + // + // MessageId: ERROR_DS_CANT_REM_MISSING_ATT + // + // MessageText: + // + // The attribute cannot be removed because it is not present on the object. + // + int ERROR_DS_CANT_REM_MISSING_ATT = 8324; + // + // MessageId: ERROR_DS_CANT_REM_MISSING_ATT_VAL + // + // MessageText: + // + // The attribute value cannot be removed because it is not present on the + // object. + // + int ERROR_DS_CANT_REM_MISSING_ATT_VAL = 8325; + // + // MessageId: ERROR_DS_ROOT_CANT_BE_SUBREF + // + // MessageText: + // + // The specified root object cannot be a subref. + // + int ERROR_DS_ROOT_CANT_BE_SUBREF = 8326; + // + // MessageId: ERROR_DS_NO_CHAINING + // + // MessageText: + // + // Chaining is not permitted. + // + int ERROR_DS_NO_CHAINING = 8327; + // + // MessageId: ERROR_DS_NO_CHAINED_EVAL + // + // MessageText: + // + // Chained evaluation is not permitted. + // + int ERROR_DS_NO_CHAINED_EVAL = 8328; + // + // MessageId: ERROR_DS_NO_PARENT_OBJECT + // + // MessageText: + // + // The operation could not be performed because the object's parent is + // either uninstantiated or deleted. + // + int ERROR_DS_NO_PARENT_OBJECT = 8329; + // + // MessageId: ERROR_DS_PARENT_IS_AN_ALIAS + // + // MessageText: + // + // Having a parent that is an alias is not permitted. Aliases are leaf + // objects. + // + int ERROR_DS_PARENT_IS_AN_ALIAS = 8330; + // + // MessageId: ERROR_DS_CANT_MIX_MASTER_AND_REPS + // + // MessageText: + // + // The object and parent must be of the same type, either both masters or + // both replicas. + // + int ERROR_DS_CANT_MIX_MASTER_AND_REPS = 8331; + // + // MessageId: ERROR_DS_CHILDREN_EXIST + // + // MessageText: + // + // The operation cannot be performed because child objects exist. This + // operation can only be performed on a leaf object. + // + int ERROR_DS_CHILDREN_EXIST = 8332; + // + // MessageId: ERROR_DS_OBJ_NOT_FOUND + // + // MessageText: + // + // Directory object not found. + // + int ERROR_DS_OBJ_NOT_FOUND = 8333; + // + // MessageId: ERROR_DS_ALIASED_OBJ_MISSING + // + // MessageText: + // + // The aliased object is missing. + // + int ERROR_DS_ALIASED_OBJ_MISSING = 8334; + // + // MessageId: ERROR_DS_BAD_NAME_SYNTAX + // + // MessageText: + // + // The object name has bad syntax. + // + int ERROR_DS_BAD_NAME_SYNTAX = 8335; + // + // MessageId: ERROR_DS_ALIAS_POINTS_TO_ALIAS + // + // MessageText: + // + // It is not permitted for an alias to refer to another alias. + // + int ERROR_DS_ALIAS_POINTS_TO_ALIAS = 8336; + // + // MessageId: ERROR_DS_CANT_DEREF_ALIAS + // + // MessageText: + // + // The alias cannot be dereferenced. + // + int ERROR_DS_CANT_DEREF_ALIAS = 8337; + // + // MessageId: ERROR_DS_OUT_OF_SCOPE + // + // MessageText: + // + // The operation is out of scope. + // + int ERROR_DS_OUT_OF_SCOPE = 8338; + // + // MessageId: ERROR_DS_OBJECT_BEING_REMOVED + // + // MessageText: + // + // The operation cannot continue because the object is in the process of + // being removed. + // + int ERROR_DS_OBJECT_BEING_REMOVED = 8339; + // + // MessageId: ERROR_DS_CANT_DELETE_DSA_OBJ + // + // MessageText: + // + // The DSA object cannot be deleted. + // + int ERROR_DS_CANT_DELETE_DSA_OBJ = 8340; + // + // MessageId: ERROR_DS_GENERIC_ERROR + // + // MessageText: + // + // A directory service error has occurred. + // + int ERROR_DS_GENERIC_ERROR = 8341; + // + // MessageId: ERROR_DS_DSA_MUST_BE_INT_MASTER + // + // MessageText: + // + // The operation can only be performed on an internal master DSA object. + // + int ERROR_DS_DSA_MUST_BE_INT_MASTER = 8342; + // + // MessageId: ERROR_DS_CLASS_NOT_DSA + // + // MessageText: + // + // The object must be of class DSA. + // + int ERROR_DS_CLASS_NOT_DSA = 8343; + // + // MessageId: ERROR_DS_INSUFF_ACCESS_RIGHTS + // + // MessageText: + // + // Insufficient access rights to perform the operation. + // + int ERROR_DS_INSUFF_ACCESS_RIGHTS = 8344; + // + // MessageId: ERROR_DS_ILLEGAL_SUPERIOR + // + // MessageText: + // + // The object cannot be added because the parent is not on the list of + // possible superiors. + // + int ERROR_DS_ILLEGAL_SUPERIOR = 8345; + // + // MessageId: ERROR_DS_ATTRIBUTE_OWNED_BY_SAM + // + // MessageText: + // + // Access to the attribute is not permitted because the attribute is owned + // by the Security Accounts Manager (SAM). + // + int ERROR_DS_ATTRIBUTE_OWNED_BY_SAM = 8346; + // + // MessageId: ERROR_DS_NAME_TOO_MANY_PARTS + // + // MessageText: + // + // The name has too many parts. + // + int ERROR_DS_NAME_TOO_MANY_PARTS = 8347; + // + // MessageId: ERROR_DS_NAME_TOO_LONG + // + // MessageText: + // + // The name is too long. + // + int ERROR_DS_NAME_TOO_LONG = 8348; + // + // MessageId: ERROR_DS_NAME_VALUE_TOO_LONG + // + // MessageText: + // + // The name value is too long. + // + int ERROR_DS_NAME_VALUE_TOO_LONG = 8349; + // + // MessageId: ERROR_DS_NAME_UNPARSEABLE + // + // MessageText: + // + // The directory service encountered an error parsing a name. + // + int ERROR_DS_NAME_UNPARSEABLE = 8350; + // + // MessageId: ERROR_DS_NAME_TYPE_UNKNOWN + // + // MessageText: + // + // The directory service cannot get the attribute type for a name. + // + int ERROR_DS_NAME_TYPE_UNKNOWN = 8351; + // + // MessageId: ERROR_DS_NOT_AN_OBJECT + // + // MessageText: + // + // The name does not identify an object; the name identifies a phantom. + // + int ERROR_DS_NOT_AN_OBJECT = 8352; + // + // MessageId: ERROR_DS_SEC_DESC_TOO_SHORT + // + // MessageText: + // + // The security descriptor is too short. + // + int ERROR_DS_SEC_DESC_TOO_SHORT = 8353; + // + // MessageId: ERROR_DS_SEC_DESC_INVALID + // + // MessageText: + // + // The security descriptor is invalid. + // + int ERROR_DS_SEC_DESC_INVALID = 8354; + // + // MessageId: ERROR_DS_NO_DELETED_NAME + // + // MessageText: + // + // Failed to create name for deleted object. + // + int ERROR_DS_NO_DELETED_NAME = 8355; + // + // MessageId: ERROR_DS_SUBREF_MUST_HAVE_PARENT + // + // MessageText: + // + // The parent of a new subref must exist. + // + int ERROR_DS_SUBREF_MUST_HAVE_PARENT = 8356; + // + // MessageId: ERROR_DS_NCNAME_MUST_BE_NC + // + // MessageText: + // + // The object must be a naming context. + // + int ERROR_DS_NCNAME_MUST_BE_NC = 8357; + // + // MessageId: ERROR_DS_CANT_ADD_SYSTEM_ONLY + // + // MessageText: + // + // It is not permitted to add an attribute which is owned by the system. + // + int ERROR_DS_CANT_ADD_SYSTEM_ONLY = 8358; + // + // MessageId: ERROR_DS_CLASS_MUST_BE_CONCRETE + // + // MessageText: + // + // The class of the object must be structural; you cannot instantiate an + // abstract class. + // + int ERROR_DS_CLASS_MUST_BE_CONCRETE = 8359; + // + // MessageId: ERROR_DS_INVALID_DMD + // + // MessageText: + // + // The schema object could not be found. + // + int ERROR_DS_INVALID_DMD = 8360; + // + // MessageId: ERROR_DS_OBJ_GUID_EXISTS + // + // MessageText: + // + // A local object with this GUID (dead or alive) already exists. + // + int ERROR_DS_OBJ_GUID_EXISTS = 8361; + // + // MessageId: ERROR_DS_NOT_ON_BACKLINK + // + // MessageText: + // + // The operation cannot be performed on a back link. + // + int ERROR_DS_NOT_ON_BACKLINK = 8362; + // + // MessageId: ERROR_DS_NO_CROSSREF_FOR_NC + // + // MessageText: + // + // The cross reference for the specified naming context could not be found. + // + int ERROR_DS_NO_CROSSREF_FOR_NC = 8363; + // + // MessageId: ERROR_DS_SHUTTING_DOWN + // + // MessageText: + // + // The operation could not be performed because the directory service is + // shutting down. + // + int ERROR_DS_SHUTTING_DOWN = 8364; + // + // MessageId: ERROR_DS_UNKNOWN_OPERATION + // + // MessageText: + // + // The directory service request is invalid. + // + int ERROR_DS_UNKNOWN_OPERATION = 8365; + // + // MessageId: ERROR_DS_INVALID_ROLE_OWNER + // + // MessageText: + // + // The role owner attribute could not be read. + // + int ERROR_DS_INVALID_ROLE_OWNER = 8366; + // + // MessageId: ERROR_DS_COULDNT_CONTACT_FSMO + // + // MessageText: + // + // The requested FSMO operation failed. The current FSMO holder could not be + // contacted. + // + int ERROR_DS_COULDNT_CONTACT_FSMO = 8367; + // + // MessageId: ERROR_DS_CROSS_NC_DN_RENAME + // + // MessageText: + // + // Modification of a DN across a naming context is not permitted. + // + int ERROR_DS_CROSS_NC_DN_RENAME = 8368; + // + // MessageId: ERROR_DS_CANT_MOD_SYSTEM_ONLY + // + // MessageText: + // + // The attribute cannot be modified because it is owned by the system. + // + int ERROR_DS_CANT_MOD_SYSTEM_ONLY = 8369; + // + // MessageId: ERROR_DS_REPLICATOR_ONLY + // + // MessageText: + // + // Only the replicator can perform this function. + // + int ERROR_DS_REPLICATOR_ONLY = 8370; + // + // MessageId: ERROR_DS_OBJ_CLASS_NOT_DEFINED + // + // MessageText: + // + // The specified class is not defined. + // + int ERROR_DS_OBJ_CLASS_NOT_DEFINED = 8371; + // + // MessageId: ERROR_DS_OBJ_CLASS_NOT_SUBCLASS + // + // MessageText: + // + // The specified class is not a subclass. + // + int ERROR_DS_OBJ_CLASS_NOT_SUBCLASS = 8372; + // + // MessageId: ERROR_DS_NAME_REFERENCE_INVALID + // + // MessageText: + // + // The name reference is invalid. + // + int ERROR_DS_NAME_REFERENCE_INVALID = 8373; + // + // MessageId: ERROR_DS_CROSS_REF_EXISTS + // + // MessageText: + // + // A cross reference already exists. + // + int ERROR_DS_CROSS_REF_EXISTS = 8374; + // + // MessageId: ERROR_DS_CANT_DEL_MASTER_CROSSREF + // + // MessageText: + // + // It is not permitted to delete a master cross reference. + // + int ERROR_DS_CANT_DEL_MASTER_CROSSREF = 8375; + // + // MessageId: ERROR_DS_SUBTREE_NOTIFY_NOT_NC_HEAD + // + // MessageText: + // + // Subtree notifications are only supported on NC heads. + // + int ERROR_DS_SUBTREE_NOTIFY_NOT_NC_HEAD = 8376; + // + // MessageId: ERROR_DS_NOTIFY_FILTER_TOO_COMPLEX + // + // MessageText: + // + // Notification filter is too complex. + // + int ERROR_DS_NOTIFY_FILTER_TOO_COMPLEX = 8377; + // + // MessageId: ERROR_DS_DUP_RDN + // + // MessageText: + // + // Schema update failed: duplicate RDN. + // + int ERROR_DS_DUP_RDN = 8378; + // + // MessageId: ERROR_DS_DUP_OID + // + // MessageText: + // + // Schema update failed: duplicate OID. + // + int ERROR_DS_DUP_OID = 8379; + // + // MessageId: ERROR_DS_DUP_MAPI_ID + // + // MessageText: + // + // Schema update failed: duplicate MAPI identifier. + // + int ERROR_DS_DUP_MAPI_ID = 8380; + // + // MessageId: ERROR_DS_DUP_SCHEMA_ID_GUID + // + // MessageText: + // + // Schema update failed: duplicate schema-id GUID. + // + int ERROR_DS_DUP_SCHEMA_ID_GUID = 8381; + // + // MessageId: ERROR_DS_DUP_LDAP_DISPLAY_NAME + // + // MessageText: + // + // Schema update failed: duplicate LDAP display name. + // + int ERROR_DS_DUP_LDAP_DISPLAY_NAME = 8382; + // + // MessageId: ERROR_DS_SEMANTIC_ATT_TEST + // + // MessageText: + // + // Schema update failed: range-lower less than range upper. + // + int ERROR_DS_SEMANTIC_ATT_TEST = 8383; + // + // MessageId: ERROR_DS_SYNTAX_MISMATCH + // + // MessageText: + // + // Schema update failed: syntax mismatch. + // + int ERROR_DS_SYNTAX_MISMATCH = 8384; + // + // MessageId: ERROR_DS_EXISTS_IN_MUST_HAVE + // + // MessageText: + // + // Schema deletion failed: attribute is used in must-contain. + // + int ERROR_DS_EXISTS_IN_MUST_HAVE = 8385; + // + // MessageId: ERROR_DS_EXISTS_IN_MAY_HAVE + // + // MessageText: + // + // Schema deletion failed: attribute is used in may-contain. + // + int ERROR_DS_EXISTS_IN_MAY_HAVE = 8386; + // + // MessageId: ERROR_DS_NONEXISTENT_MAY_HAVE + // + // MessageText: + // + // Schema update failed: attribute in may-contain does not exist. + // + int ERROR_DS_NONEXISTENT_MAY_HAVE = 8387; + // + // MessageId: ERROR_DS_NONEXISTENT_MUST_HAVE + // + // MessageText: + // + // Schema update failed: attribute in must-contain does not exist. + // + int ERROR_DS_NONEXISTENT_MUST_HAVE = 8388; + // + // MessageId: ERROR_DS_AUX_CLS_TEST_FAIL + // + // MessageText: + // + // Schema update failed: class in aux-class list does not exist or is not an + // auxiliary class. + // + int ERROR_DS_AUX_CLS_TEST_FAIL = 8389; + // + // MessageId: ERROR_DS_NONEXISTENT_POSS_SUP + // + // MessageText: + // + // Schema update failed: class in poss-superiors does not exist. + // + int ERROR_DS_NONEXISTENT_POSS_SUP = 8390; + // + // MessageId: ERROR_DS_SUB_CLS_TEST_FAIL + // + // MessageText: + // + // Schema update failed: class in subclassof list does not exist or does not + // satisfy hierarchy rules. + // + int ERROR_DS_SUB_CLS_TEST_FAIL = 8391; + // + // MessageId: ERROR_DS_BAD_RDN_ATT_ID_SYNTAX + // + // MessageText: + // + // Schema update failed: Rdn-Att-Id has wrong syntax. + // + int ERROR_DS_BAD_RDN_ATT_ID_SYNTAX = 8392; + // + // MessageId: ERROR_DS_EXISTS_IN_AUX_CLS + // + // MessageText: + // + // Schema deletion failed: class is used as auxiliary class. + // + int ERROR_DS_EXISTS_IN_AUX_CLS = 8393; + // + // MessageId: ERROR_DS_EXISTS_IN_SUB_CLS + // + // MessageText: + // + // Schema deletion failed: class is used as sub class. + // + int ERROR_DS_EXISTS_IN_SUB_CLS = 8394; + // + // MessageId: ERROR_DS_EXISTS_IN_POSS_SUP + // + // MessageText: + // + // Schema deletion failed: class is used as poss superior. + // + int ERROR_DS_EXISTS_IN_POSS_SUP = 8395; + // + // MessageId: ERROR_DS_RECALCSCHEMA_FAILED + // + // MessageText: + // + // Schema update failed in recalculating validation cache. + // + int ERROR_DS_RECALCSCHEMA_FAILED = 8396; + // + // MessageId: ERROR_DS_TREE_DELETE_NOT_FINISHED + // + // MessageText: + // + // The tree deletion is not finished. The request must be made again to + // continue deleting the tree. + // + int ERROR_DS_TREE_DELETE_NOT_FINISHED = 8397; + // + // MessageId: ERROR_DS_CANT_DELETE + // + // MessageText: + // + // The requested delete operation could not be performed. + // + int ERROR_DS_CANT_DELETE = 8398; + // + // MessageId: ERROR_DS_ATT_SCHEMA_REQ_ID + // + // MessageText: + // + // Cannot read the governs class identifier for the schema record. + // + int ERROR_DS_ATT_SCHEMA_REQ_ID = 8399; + // + // MessageId: ERROR_DS_BAD_ATT_SCHEMA_SYNTAX + // + // MessageText: + // + // The attribute schema has bad syntax. + // + int ERROR_DS_BAD_ATT_SCHEMA_SYNTAX = 8400; + // + // MessageId: ERROR_DS_CANT_CACHE_ATT + // + // MessageText: + // + // The attribute could not be cached. + // + int ERROR_DS_CANT_CACHE_ATT = 8401; + // + // MessageId: ERROR_DS_CANT_CACHE_CLASS + // + // MessageText: + // + // The class could not be cached. + // + int ERROR_DS_CANT_CACHE_CLASS = 8402; + // + // MessageId: ERROR_DS_CANT_REMOVE_ATT_CACHE + // + // MessageText: + // + // The attribute could not be removed from the cache. + // + int ERROR_DS_CANT_REMOVE_ATT_CACHE = 8403; + // + // MessageId: ERROR_DS_CANT_REMOVE_CLASS_CACHE + // + // MessageText: + // + // The class could not be removed from the cache. + // + int ERROR_DS_CANT_REMOVE_CLASS_CACHE = 8404; + // + // MessageId: ERROR_DS_CANT_RETRIEVE_DN + // + // MessageText: + // + // The distinguished name attribute could not be read. + // + int ERROR_DS_CANT_RETRIEVE_DN = 8405; + // + // MessageId: ERROR_DS_MISSING_SUPREF + // + // MessageText: + // + // No superior reference has been configured for the directory service. The + // directory service is therefore unable to issue referrals to objects + // outside this forest. + // + int ERROR_DS_MISSING_SUPREF = 8406; + // + // MessageId: ERROR_DS_CANT_RETRIEVE_INSTANCE + // + // MessageText: + // + // The instance type attribute could not be retrieved. + // + int ERROR_DS_CANT_RETRIEVE_INSTANCE = 8407; + // + // MessageId: ERROR_DS_CODE_INCONSISTENCY + // + // MessageText: + // + // An internal error has occurred. + // + int ERROR_DS_CODE_INCONSISTENCY = 8408; + // + // MessageId: ERROR_DS_DATABASE_ERROR + // + // MessageText: + // + // A database error has occurred. + // + int ERROR_DS_DATABASE_ERROR = 8409; + // + // MessageId: ERROR_DS_GOVERNSID_MISSING + // + // MessageText: + // + // The attribute GOVERNSID is missing. + // + int ERROR_DS_GOVERNSID_MISSING = 8410; + // + // MessageId: ERROR_DS_MISSING_EXPECTED_ATT + // + // MessageText: + // + // An expected attribute is missing. + // + int ERROR_DS_MISSING_EXPECTED_ATT = 8411; + // + // MessageId: ERROR_DS_NCNAME_MISSING_CR_REF + // + // MessageText: + // + // The specified naming context is missing a cross reference. + // + int ERROR_DS_NCNAME_MISSING_CR_REF = 8412; + // + // MessageId: ERROR_DS_SECURITY_CHECKING_ERROR + // + // MessageText: + // + // A security checking error has occurred. + // + int ERROR_DS_SECURITY_CHECKING_ERROR = 8413; + // + // MessageId: ERROR_DS_SCHEMA_NOT_LOADED + // + // MessageText: + // + // The schema is not loaded. + // + int ERROR_DS_SCHEMA_NOT_LOADED = 8414; + // + // MessageId: ERROR_DS_SCHEMA_ALLOC_FAILED + // + // MessageText: + // + // Schema allocation failed. Please check if the machine is running low on + // memory. + // + int ERROR_DS_SCHEMA_ALLOC_FAILED = 8415; + // + // MessageId: ERROR_DS_ATT_SCHEMA_REQ_SYNTAX + // + // MessageText: + // + // Failed to obtain the required syntax for the attribute schema. + // + int ERROR_DS_ATT_SCHEMA_REQ_SYNTAX = 8416; + // + // MessageId: ERROR_DS_GCVERIFY_ERROR + // + // MessageText: + // + // The global catalog verification failed. The global catalog is not + // available or does not support the operation. Some part of the directory + // is currently not available. + // + int ERROR_DS_GCVERIFY_ERROR = 8417; + // + // MessageId: ERROR_DS_DRA_SCHEMA_MISMATCH + // + // MessageText: + // + // The replication operation failed because of a schema mismatch between the + // servers involved. + // + int ERROR_DS_DRA_SCHEMA_MISMATCH = 8418; + // + // MessageId: ERROR_DS_CANT_FIND_DSA_OBJ + // + // MessageText: + // + // The DSA object could not be found. + // + int ERROR_DS_CANT_FIND_DSA_OBJ = 8419; + // + // MessageId: ERROR_DS_CANT_FIND_EXPECTED_NC + // + // MessageText: + // + // The naming context could not be found. + // + int ERROR_DS_CANT_FIND_EXPECTED_NC = 8420; + // + // MessageId: ERROR_DS_CANT_FIND_NC_IN_CACHE + // + // MessageText: + // + // The naming context could not be found in the cache. + // + int ERROR_DS_CANT_FIND_NC_IN_CACHE = 8421; + // + // MessageId: ERROR_DS_CANT_RETRIEVE_CHILD + // + // MessageText: + // + // The child object could not be retrieved. + // + int ERROR_DS_CANT_RETRIEVE_CHILD = 8422; + // + // MessageId: ERROR_DS_SECURITY_ILLEGAL_MODIFY + // + // MessageText: + // + // The modification was not permitted for security reasons. + // + int ERROR_DS_SECURITY_ILLEGAL_MODIFY = 8423; + // + // MessageId: ERROR_DS_CANT_REPLACE_HIDDEN_REC + // + // MessageText: + // + // The operation cannot replace the hidden record. + // + int ERROR_DS_CANT_REPLACE_HIDDEN_REC = 8424; + // + // MessageId: ERROR_DS_BAD_HIERARCHY_FILE + // + // MessageText: + // + // The hierarchy file is invalid. + // + int ERROR_DS_BAD_HIERARCHY_FILE = 8425; + // + // MessageId: ERROR_DS_BUILD_HIERARCHY_TABLE_FAILED + // + // MessageText: + // + // The attempt to build the hierarchy table failed. + // + int ERROR_DS_BUILD_HIERARCHY_TABLE_FAILED = 8426; + // + // MessageId: ERROR_DS_CONFIG_PARAM_MISSING + // + // MessageText: + // + // The directory configuration parameter is missing from the registry. + // + int ERROR_DS_CONFIG_PARAM_MISSING = 8427; + // + // MessageId: ERROR_DS_COUNTING_AB_INDICES_FAILED + // + // MessageText: + // + // The attempt to count the address book indices failed. + // + int ERROR_DS_COUNTING_AB_INDICES_FAILED = 8428; + // + // MessageId: ERROR_DS_HIERARCHY_TABLE_MALLOC_FAILED + // + // MessageText: + // + // The allocation of the hierarchy table failed. + // + int ERROR_DS_HIERARCHY_TABLE_MALLOC_FAILED = 8429; + // + // MessageId: ERROR_DS_INTERNAL_FAILURE + // + // MessageText: + // + // The directory service encountered an internal failure. + // + int ERROR_DS_INTERNAL_FAILURE = 8430; + // + // MessageId: ERROR_DS_UNKNOWN_ERROR + // + // MessageText: + // + // The directory service encountered an unknown failure. + // + int ERROR_DS_UNKNOWN_ERROR = 8431; + // + // MessageId: ERROR_DS_ROOT_REQUIRES_CLASS_TOP + // + // MessageText: + // + // A root object requires a class of 'top'. + // + int ERROR_DS_ROOT_REQUIRES_CLASS_TOP = 8432; + // + // MessageId: ERROR_DS_REFUSING_FSMO_ROLES + // + // MessageText: + // + // This directory server is shutting down, and cannot take ownership of new + // floating single-master operation roles. + // + int ERROR_DS_REFUSING_FSMO_ROLES = 8433; + // + // MessageId: ERROR_DS_MISSING_FSMO_SETTINGS + // + // MessageText: + // + // The directory service is missing mandatory configuration information, and + // is unable to determine the ownership of floating single-master operation + // roles. + // + int ERROR_DS_MISSING_FSMO_SETTINGS = 8434; + // + // MessageId: ERROR_DS_UNABLE_TO_SURRENDER_ROLES + // + // MessageText: + // + // The directory service was unable to transfer ownership of one or more + // floating single-master operation roles to other servers. + // + int ERROR_DS_UNABLE_TO_SURRENDER_ROLES = 8435; + // + // MessageId: ERROR_DS_DRA_GENERIC + // + // MessageText: + // + // The replication operation failed. + // + int ERROR_DS_DRA_GENERIC = 8436; + // + // MessageId: ERROR_DS_DRA_INVALID_PARAMETER + // + // MessageText: + // + // An invalid parameter was specified for this replication operation. + // + int ERROR_DS_DRA_INVALID_PARAMETER = 8437; + // + // MessageId: ERROR_DS_DRA_BUSY + // + // MessageText: + // + // The directory service is too busy to complete the replication operation + // at this time. + // + int ERROR_DS_DRA_BUSY = 8438; + // + // MessageId: ERROR_DS_DRA_BAD_DN + // + // MessageText: + // + // The distinguished name specified for this replication operation is + // invalid. + // + int ERROR_DS_DRA_BAD_DN = 8439; + // + // MessageId: ERROR_DS_DRA_BAD_NC + // + // MessageText: + // + // The naming context specified for this replication operation is invalid. + // + int ERROR_DS_DRA_BAD_NC = 8440; + // + // MessageId: ERROR_DS_DRA_DN_EXISTS + // + // MessageText: + // + // The distinguished name specified for this replication operation already + // exists. + // + int ERROR_DS_DRA_DN_EXISTS = 8441; + // + // MessageId: ERROR_DS_DRA_INTERNAL_ERROR + // + // MessageText: + // + // The replication system encountered an internal error. + // + int ERROR_DS_DRA_INTERNAL_ERROR = 8442; + // + // MessageId: ERROR_DS_DRA_INCONSISTENT_DIT + // + // MessageText: + // + // The replication operation encountered a database inconsistency. + // + int ERROR_DS_DRA_INCONSISTENT_DIT = 8443; + // + // MessageId: ERROR_DS_DRA_CONNECTION_FAILED + // + // MessageText: + // + // The server specified for this replication operation could not be + // contacted. + // + int ERROR_DS_DRA_CONNECTION_FAILED = 8444; + // + // MessageId: ERROR_DS_DRA_BAD_INSTANCE_TYPE + // + // MessageText: + // + // The replication operation encountered an object with an invalid instance + // type. + // + int ERROR_DS_DRA_BAD_INSTANCE_TYPE = 8445; + // + // MessageId: ERROR_DS_DRA_OUT_OF_MEM + // + // MessageText: + // + // The replication operation failed to allocate memory. + // + int ERROR_DS_DRA_OUT_OF_MEM = 8446; + // + // MessageId: ERROR_DS_DRA_MAIL_PROBLEM + // + // MessageText: + // + // The replication operation encountered an error with the mail system. + // + int ERROR_DS_DRA_MAIL_PROBLEM = 8447; + // + // MessageId: ERROR_DS_DRA_REF_ALREADY_EXISTS + // + // MessageText: + // + // The replication reference information for the target server already + // exists. + // + int ERROR_DS_DRA_REF_ALREADY_EXISTS = 8448; + // + // MessageId: ERROR_DS_DRA_REF_NOT_FOUND + // + // MessageText: + // + // The replication reference information for the target server does not + // exist. + // + int ERROR_DS_DRA_REF_NOT_FOUND = 8449; + // + // MessageId: ERROR_DS_DRA_OBJ_IS_REP_SOURCE + // + // MessageText: + // + // The naming context cannot be removed because it is replicated to another + // server. + // + int ERROR_DS_DRA_OBJ_IS_REP_SOURCE = 8450; + // + // MessageId: ERROR_DS_DRA_DB_ERROR + // + // MessageText: + // + // The replication operation encountered a database error. + // + int ERROR_DS_DRA_DB_ERROR = 8451; + // + // MessageId: ERROR_DS_DRA_NO_REPLICA + // + // MessageText: + // + // The naming context is in the process of being removed or is not + // replicated from the specified server. + // + int ERROR_DS_DRA_NO_REPLICA = 8452; + // + // MessageId: ERROR_DS_DRA_ACCESS_DENIED + // + // MessageText: + // + // Replication access was denied. + // + int ERROR_DS_DRA_ACCESS_DENIED = 8453; + // + // MessageId: ERROR_DS_DRA_NOT_SUPPORTED + // + // MessageText: + // + // The requested operation is not supported by this version of the directory + // service. + // + int ERROR_DS_DRA_NOT_SUPPORTED = 8454; + // + // MessageId: ERROR_DS_DRA_RPC_CANCELLED + // + // MessageText: + // + // The replication remote procedure call was cancelled. + // + int ERROR_DS_DRA_RPC_CANCELLED = 8455; + // + // MessageId: ERROR_DS_DRA_SOURCE_DISABLED + // + // MessageText: + // + // The source server is currently rejecting replication requests. + // + int ERROR_DS_DRA_SOURCE_DISABLED = 8456; + // + // MessageId: ERROR_DS_DRA_SINK_DISABLED + // + // MessageText: + // + // The destination server is currently rejecting replication requests. + // + int ERROR_DS_DRA_SINK_DISABLED = 8457; + // + // MessageId: ERROR_DS_DRA_NAME_COLLISION + // + // MessageText: + // + // The replication operation failed due to a collision of object names. + // + int ERROR_DS_DRA_NAME_COLLISION = 8458; + // + // MessageId: ERROR_DS_DRA_SOURCE_REINSTALLED + // + // MessageText: + // + // The replication source has been reinstalled. + // + int ERROR_DS_DRA_SOURCE_REINSTALLED = 8459; + // + // MessageId: ERROR_DS_DRA_MISSING_PARENT + // + // MessageText: + // + // The replication operation failed because a required parent object is + // missing. + // + int ERROR_DS_DRA_MISSING_PARENT = 8460; + // + // MessageId: ERROR_DS_DRA_PREEMPTED + // + // MessageText: + // + // The replication operation was preempted. + // + int ERROR_DS_DRA_PREEMPTED = 8461; + // + // MessageId: ERROR_DS_DRA_ABANDON_SYNC + // + // MessageText: + // + // The replication synchronization attempt was abandoned because of a lack + // of updates. + // + int ERROR_DS_DRA_ABANDON_SYNC = 8462; + // + // MessageId: ERROR_DS_DRA_SHUTDOWN + // + // MessageText: + // + // The replication operation was terminated because the system is shutting + // down. + // + int ERROR_DS_DRA_SHUTDOWN = 8463; + // + // MessageId: ERROR_DS_DRA_INCOMPATIBLE_PARTIAL_SET + // + // MessageText: + // + // Synchronization attempt failed because the destination DC is currently + // waiting to synchronize new partial attributes from source. This condition + // is normal if a recent schema change modified the partial attribute set. + // The destination partial attribute set is not a subset of source partial + // attribute set. + // + int ERROR_DS_DRA_INCOMPATIBLE_PARTIAL_SET = 8464; + // + // MessageId: ERROR_DS_DRA_SOURCE_IS_PARTIAL_REPLICA + // + // MessageText: + // + // The replication synchronization attempt failed because a master replica + // attempted to sync from a partial replica. + // + int ERROR_DS_DRA_SOURCE_IS_PARTIAL_REPLICA = 8465; + // + // MessageId: ERROR_DS_DRA_EXTN_CONNECTION_FAILED + // + // MessageText: + // + // The server specified for this replication operation was contacted, but + // that server was unable to contact an additional server needed to complete + // the operation. + // + int ERROR_DS_DRA_EXTN_CONNECTION_FAILED = 8466; + // + // MessageId: ERROR_DS_INSTALL_SCHEMA_MISMATCH + // + // MessageText: + // + // The version of the directory service schema of the source forest is not + // compatible with the version of directory service on this computer. + // + int ERROR_DS_INSTALL_SCHEMA_MISMATCH = 8467; + // + // MessageId: ERROR_DS_DUP_LINK_ID + // + // MessageText: + // + // Schema update failed: An attribute with the same link identifier already + // exists. + // + int ERROR_DS_DUP_LINK_ID = 8468; + // + // MessageId: ERROR_DS_NAME_ERROR_RESOLVING + // + // MessageText: + // + // Name translation: Generic processing error. + // + int ERROR_DS_NAME_ERROR_RESOLVING = 8469; + // + // MessageId: ERROR_DS_NAME_ERROR_NOT_FOUND + // + // MessageText: + // + // Name translation: Could not find the name or insufficient right to see + // name. + // + int ERROR_DS_NAME_ERROR_NOT_FOUND = 8470; + // + // MessageId: ERROR_DS_NAME_ERROR_NOT_UNIQUE + // + // MessageText: + // + // Name translation: Input name mapped to more than one output name. + // + int ERROR_DS_NAME_ERROR_NOT_UNIQUE = 8471; + // + // MessageId: ERROR_DS_NAME_ERROR_NO_MAPPING + // + // MessageText: + // + // Name translation: Input name found, but not the associated output format. + // + int ERROR_DS_NAME_ERROR_NO_MAPPING = 8472; + // + // MessageId: ERROR_DS_NAME_ERROR_DOMAIN_ONLY + // + // MessageText: + // + // Name translation: Unable to resolve completely, only the domain was + // found. + // + int ERROR_DS_NAME_ERROR_DOMAIN_ONLY = 8473; + // + // MessageId: ERROR_DS_NAME_ERROR_NO_SYNTACTICAL_MAPPING + // + // MessageText: + // + // Name translation: Unable to perform purely syntactical mapping at the + // client without going out to the wire. + // + int ERROR_DS_NAME_ERROR_NO_SYNTACTICAL_MAPPING = 8474; + // + // MessageId: ERROR_DS_CONSTRUCTED_ATT_MOD + // + // MessageText: + // + // Modification of a constructed attribute is not allowed. + // + int ERROR_DS_CONSTRUCTED_ATT_MOD = 8475; + // + // MessageId: ERROR_DS_WRONG_OM_OBJ_CLASS + // + // MessageText: + // + // The OM-Object-Class specified is incorrect for an attribute with the + // specified syntax. + // + int ERROR_DS_WRONG_OM_OBJ_CLASS = 8476; + // + // MessageId: ERROR_DS_DRA_REPL_PENDING + // + // MessageText: + // + // The replication request has been posted; waiting for reply. + // + int ERROR_DS_DRA_REPL_PENDING = 8477; + // + // MessageId: ERROR_DS_DS_REQUIRED + // + // MessageText: + // + // The requested operation requires a directory service, and none was + // available. + // + int ERROR_DS_DS_REQUIRED = 8478; + // + // MessageId: ERROR_DS_INVALID_LDAP_DISPLAY_NAME + // + // MessageText: + // + // The LDAP display name of the class or attribute contains non-ASCII + // characters. + // + int ERROR_DS_INVALID_LDAP_DISPLAY_NAME = 8479; + // + // MessageId: ERROR_DS_NON_BASE_SEARCH + // + // MessageText: + // + // The requested search operation is only supported for base searches. + // + int ERROR_DS_NON_BASE_SEARCH = 8480; + // + // MessageId: ERROR_DS_CANT_RETRIEVE_ATTS + // + // MessageText: + // + // The search failed to retrieve attributes from the database. + // + int ERROR_DS_CANT_RETRIEVE_ATTS = 8481; + // + // MessageId: ERROR_DS_BACKLINK_WITHOUT_LINK + // + // MessageText: + // + // The schema update operation tried to add a backward link attribute that + // has no corresponding forward link. + // + int ERROR_DS_BACKLINK_WITHOUT_LINK = 8482; + // + // MessageId: ERROR_DS_EPOCH_MISMATCH + // + // MessageText: + // + // Source and destination of a cross-domain move do not agree on the + // object's epoch number. Either source or destination does not have the + // latest version of the object. + // + int ERROR_DS_EPOCH_MISMATCH = 8483; + // + // MessageId: ERROR_DS_SRC_NAME_MISMATCH + // + // MessageText: + // + // Source and destination of a cross-domain move do not agree on the + // object's current name. Either source or destination does not have the + // latest version of the object. + // + int ERROR_DS_SRC_NAME_MISMATCH = 8484; + // + // MessageId: ERROR_DS_SRC_AND_DST_NC_IDENTICAL + // + // MessageText: + // + // Source and destination for the cross-domain move operation are identical. + // Caller should use local move operation instead of cross-domain move + // operation. + // + int ERROR_DS_SRC_AND_DST_NC_IDENTICAL = 8485; + // + // MessageId: ERROR_DS_DST_NC_MISMATCH + // + // MessageText: + // + // Source and destination for a cross-domain move are not in agreement on + // the naming contexts in the forest. Either source or destination does not + // have the latest version of the Partitions container. + // + int ERROR_DS_DST_NC_MISMATCH = 8486; + // + // MessageId: ERROR_DS_NOT_AUTHORITIVE_FOR_DST_NC + // + // MessageText: + // + // Destination of a cross-domain move is not authoritative for the + // destination naming context. + // + int ERROR_DS_NOT_AUTHORITIVE_FOR_DST_NC = 8487; + // + // MessageId: ERROR_DS_SRC_GUID_MISMATCH + // + // MessageText: + // + // Source and destination of a cross-domain move do not agree on the + // identity of the source object. Either source or destination does not have + // the latest version of the source object. + // + int ERROR_DS_SRC_GUID_MISMATCH = 8488; + // + // MessageId: ERROR_DS_CANT_MOVE_DELETED_OBJECT + // + // MessageText: + // + // Object being moved across-domains is already known to be deleted by the + // destination server. The source server does not have the latest version of + // the source object. + // + int ERROR_DS_CANT_MOVE_DELETED_OBJECT = 8489; + // + // MessageId: ERROR_DS_PDC_OPERATION_IN_PROGRESS + // + // MessageText: + // + // Another operation which requires exclusive access to the PDC FSMO is + // already in progress. + // + int ERROR_DS_PDC_OPERATION_IN_PROGRESS = 8490; + // + // MessageId: ERROR_DS_CROSS_DOMAIN_CLEANUP_REQD + // + // MessageText: + // + // A cross-domain move operation failed such that two versions of the moved + // object exist - one each in the source and destination domains. The + // destination object needs to be removed to restore the system to a + // consistent state. + // + int ERROR_DS_CROSS_DOMAIN_CLEANUP_REQD = 8491; + // + // MessageId: ERROR_DS_ILLEGAL_XDOM_MOVE_OPERATION + // + // MessageText: + // + // This object may not be moved across domain boundaries either because + // cross-domain moves for this class are disallowed, or the object has some + // special characteristics, e.g.: trust account or restricted RID, which + // prevent its move. + // + int ERROR_DS_ILLEGAL_XDOM_MOVE_OPERATION = 8492; + // + // MessageId: ERROR_DS_CANT_WITH_ACCT_GROUP_MEMBERSHPS + // + // MessageText: + // + // Can't move objects with memberships across domain boundaries as once + // moved, this would violate the membership conditions of the account group. + // Remove the object from any account group memberships and retry. + // + int ERROR_DS_CANT_WITH_ACCT_GROUP_MEMBERSHPS = 8493; + // + // MessageId: ERROR_DS_NC_MUST_HAVE_NC_PARENT + // + // MessageText: + // + // A naming context head must be the immediate child of another naming + // context head, not of an interior node. + // + int ERROR_DS_NC_MUST_HAVE_NC_PARENT = 8494; + // + // MessageId: ERROR_DS_CR_IMPOSSIBLE_TO_VALIDATE + // + // MessageText: + // + // The directory cannot validate the proposed naming context name because it + // does not hold a replica of the naming context above the proposed naming + // context. Please ensure that the domain naming master role is held by a + // server that is configured as a global catalog server, and that the server + // is up to date with its replication partners. (Applies only to + // Windows=2000 Domain Naming masters) + // + int ERROR_DS_CR_IMPOSSIBLE_TO_VALIDATE = 8495; + // + // MessageId: ERROR_DS_DST_DOMAIN_NOT_NATIVE + // + // MessageText: + // + // Destination domain must be in native mode. + // + int ERROR_DS_DST_DOMAIN_NOT_NATIVE = 8496; + // + // MessageId: ERROR_DS_MISSING_INFRASTRUCTURE_CONTAINER + // + // MessageText: + // + // The operation cannot be performed because the server does not have an + // infrastructure container in the domain of interest. + // + int ERROR_DS_MISSING_INFRASTRUCTURE_CONTAINER = 8497; + // + // MessageId: ERROR_DS_CANT_MOVE_ACCOUNT_GROUP + // + // MessageText: + // + // Cross-domain move of non-empty account groups is not allowed. + // + int ERROR_DS_CANT_MOVE_ACCOUNT_GROUP = 8498; + // + // MessageId: ERROR_DS_CANT_MOVE_RESOURCE_GROUP + // + // MessageText: + // + // Cross-domain move of non-empty resource groups is not allowed. + // + int ERROR_DS_CANT_MOVE_RESOURCE_GROUP = 8499; + // + // MessageId: ERROR_DS_INVALID_SEARCH_FLAG + // + // MessageText: + // + // The search flags for the attribute are invalid. The ANR bit is valid only + // on attributes of Unicode or Teletex strings. + // + int ERROR_DS_INVALID_SEARCH_FLAG = 8500; + // + // MessageId: ERROR_DS_NO_TREE_DELETE_ABOVE_NC + // + // MessageText: + // + // Tree deletions starting at an object which has an NC head as a descendant + // are not allowed. + // + int ERROR_DS_NO_TREE_DELETE_ABOVE_NC = 8501; + // + // MessageId: ERROR_DS_COULDNT_LOCK_TREE_FOR_DELETE + // + // MessageText: + // + // The directory service failed to lock a tree in preparation for a tree + // deletion because the tree was in use. + // + int ERROR_DS_COULDNT_LOCK_TREE_FOR_DELETE = 8502; + // + // MessageId: ERROR_DS_COULDNT_IDENTIFY_OBJECTS_FOR_TREE_DELETE + // + // MessageText: + // + // The directory service failed to identify the list of objects to delete + // while attempting a tree deletion. + // + int ERROR_DS_COULDNT_IDENTIFY_OBJECTS_FOR_TREE_DELETE = 8503; + // + // MessageId: ERROR_DS_SAM_INIT_FAILURE + // + // MessageText: + // + // Security Accounts Manager initialization failed because of the following + // error: %1. + // Error Status: 0x%2. Click OK to shut down the system and reboot into + // Directory Services Restore Mode. Check the event log for detailed + // information. + // + int ERROR_DS_SAM_INIT_FAILURE = 8504; + // + // MessageId: ERROR_DS_SENSITIVE_GROUP_VIOLATION + // + // MessageText: + // + // Only an administrator can modify the membership list of an administrative + // group. + // + int ERROR_DS_SENSITIVE_GROUP_VIOLATION = 8505; + // + // MessageId: ERROR_DS_CANT_MOD_PRIMARYGROUPID + // + // MessageText: + // + // Cannot change the primary group ID of a domain controller account. + // + int ERROR_DS_CANT_MOD_PRIMARYGROUPID = 8506; + // + // MessageId: ERROR_DS_ILLEGAL_BASE_SCHEMA_MOD + // + // MessageText: + // + // An attempt is made to modify the base schema. + // + int ERROR_DS_ILLEGAL_BASE_SCHEMA_MOD = 8507; + // + // MessageId: ERROR_DS_NONSAFE_SCHEMA_CHANGE + // + // MessageText: + // + // Adding a new mandatory attribute to an existing class, deleting a + // mandatory attribute from an existing class, or adding an optional + // attribute to the special class Top that is not a backlink attribute + // (directly or through inheritance, for example, by adding or deleting an + // auxiliary class) is not allowed. + // + int ERROR_DS_NONSAFE_SCHEMA_CHANGE = 8508; + // + // MessageId: ERROR_DS_SCHEMA_UPDATE_DISALLOWED + // + // MessageText: + // + // Schema update is not allowed on this DC because the DC is not the schema + // FSMO Role Owner. + // + int ERROR_DS_SCHEMA_UPDATE_DISALLOWED = 8509; + // + // MessageId: ERROR_DS_CANT_CREATE_UNDER_SCHEMA + // + // MessageText: + // + // An object of this class cannot be created under the schema container. You + // can only create attribute-schema and class-schema objects under the + // schema container. + // + int ERROR_DS_CANT_CREATE_UNDER_SCHEMA = 8510; + // + // MessageId: ERROR_DS_INSTALL_NO_SRC_SCH_VERSION + // + // MessageText: + // + // The replica/child install failed to get the objectVersion attribute on + // the schema container on the source DC. Either the attribute is missing on + // the schema container or the credentials supplied do not have permission + // to read it. + // + int ERROR_DS_INSTALL_NO_SRC_SCH_VERSION = 8511; + // + // MessageId: ERROR_DS_INSTALL_NO_SCH_VERSION_IN_INIFILE + // + // MessageText: + // + // The replica/child install failed to read the objectVersion attribute in + // the SCHEMA section of the file schema.ini in the system32 directory. + // + int ERROR_DS_INSTALL_NO_SCH_VERSION_IN_INIFILE = 8512; + // + // MessageId: ERROR_DS_INVALID_GROUP_TYPE + // + // MessageText: + // + // The specified group type is invalid. + // + int ERROR_DS_INVALID_GROUP_TYPE = 8513; + // + // MessageId: ERROR_DS_NO_NEST_GLOBALGROUP_IN_MIXEDDOMAIN + // + // MessageText: + // + // You cannot nest global groups in a mixed domain if the group is + // security-enabled. + // + int ERROR_DS_NO_NEST_GLOBALGROUP_IN_MIXEDDOMAIN = 8514; + // + // MessageId: ERROR_DS_NO_NEST_LOCALGROUP_IN_MIXEDDOMAIN + // + // MessageText: + // + // You cannot nest local groups in a mixed domain if the group is + // security-enabled. + // + int ERROR_DS_NO_NEST_LOCALGROUP_IN_MIXEDDOMAIN = 8515; + // + // MessageId: ERROR_DS_GLOBAL_CANT_HAVE_LOCAL_MEMBER + // + // MessageText: + // + // A global group cannot have a local group as a member. + // + int ERROR_DS_GLOBAL_CANT_HAVE_LOCAL_MEMBER = 8516; + // + // MessageId: ERROR_DS_GLOBAL_CANT_HAVE_UNIVERSAL_MEMBER + // + // MessageText: + // + // A global group cannot have a universal group as a member. + // + int ERROR_DS_GLOBAL_CANT_HAVE_UNIVERSAL_MEMBER = 8517; + // + // MessageId: ERROR_DS_UNIVERSAL_CANT_HAVE_LOCAL_MEMBER + // + // MessageText: + // + // A universal group cannot have a local group as a member. + // + int ERROR_DS_UNIVERSAL_CANT_HAVE_LOCAL_MEMBER = 8518; + // + // MessageId: ERROR_DS_GLOBAL_CANT_HAVE_CROSSDOMAIN_MEMBER + // + // MessageText: + // + // A global group cannot have a cross-domain member. + // + int ERROR_DS_GLOBAL_CANT_HAVE_CROSSDOMAIN_MEMBER = 8519; + // + // MessageId: ERROR_DS_LOCAL_CANT_HAVE_CROSSDOMAIN_LOCAL_MEMBER + // + // MessageText: + // + // A local group cannot have another cross domain local group as a member. + // + int ERROR_DS_LOCAL_CANT_HAVE_CROSSDOMAIN_LOCAL_MEMBER = 8520; + // + // MessageId: ERROR_DS_HAVE_PRIMARY_MEMBERS + // + // MessageText: + // + // A group with primary members cannot change to a security-disabled group. + // + int ERROR_DS_HAVE_PRIMARY_MEMBERS = 8521; + // + // MessageId: ERROR_DS_STRING_SD_CONVERSION_FAILED + // + // MessageText: + // + // The schema cache load failed to convert the string default SD on a + // class-schema object. + // + int ERROR_DS_STRING_SD_CONVERSION_FAILED = 8522; + // + // MessageId: ERROR_DS_NAMING_MASTER_GC + // + // MessageText: + // + // Only DSAs configured to be Global Catalog servers should be allowed to + // hold the Domain Naming Master FSMO role. (Applies only to Windows=2000 + // servers) + // + int ERROR_DS_NAMING_MASTER_GC = 8523; + // + // MessageId: ERROR_DS_DNS_LOOKUP_FAILURE + // + // MessageText: + // + // The DSA operation is unable to proceed because of a DNS lookup failure. + // + int ERROR_DS_DNS_LOOKUP_FAILURE = 8524; + // + // MessageId: ERROR_DS_COULDNT_UPDATE_SPNS + // + // MessageText: + // + // While processing a change to the DNS Host Name for an object, the Service + // Principal Name values could not be kept in sync. + // + int ERROR_DS_COULDNT_UPDATE_SPNS = 8525; + // + // MessageId: ERROR_DS_CANT_RETRIEVE_SD + // + // MessageText: + // + // The Security Descriptor attribute could not be read. + // + int ERROR_DS_CANT_RETRIEVE_SD = 8526; + // + // MessageId: ERROR_DS_KEY_NOT_UNIQUE + // + // MessageText: + // + // The object requested was not found, but an object with that key was + // found. + // + int ERROR_DS_KEY_NOT_UNIQUE = 8527; + // + // MessageId: ERROR_DS_WRONG_LINKED_ATT_SYNTAX + // + // MessageText: + // + // The syntax of the linked attribute being added is incorrect. Forward + // links can only have syntax=2.5.5.1,=2.5.5.7, and=2.5.5.14, and backlinks + // can only have syntax=2.5.5.1 + // + int ERROR_DS_WRONG_LINKED_ATT_SYNTAX = 8528; + // + // MessageId: ERROR_DS_SAM_NEED_BOOTKEY_PASSWORD + // + // MessageText: + // + // Security Account Manager needs to get the boot password. + // + int ERROR_DS_SAM_NEED_BOOTKEY_PASSWORD = 8529; + // + // MessageId: ERROR_DS_SAM_NEED_BOOTKEY_FLOPPY + // + // MessageText: + // + // Security Account Manager needs to get the boot key from floppy disk. + // + int ERROR_DS_SAM_NEED_BOOTKEY_FLOPPY = 8530; + // + // MessageId: ERROR_DS_CANT_START + // + // MessageText: + // + // Directory Service cannot start. + // + int ERROR_DS_CANT_START = 8531; + // + // MessageId: ERROR_DS_INIT_FAILURE + // + // MessageText: + // + // Directory Services could not start. + // + int ERROR_DS_INIT_FAILURE = 8532; + // + // MessageId: ERROR_DS_NO_PKT_PRIVACY_ON_CONNECTION + // + // MessageText: + // + // The connection between client and server requires packet privacy or + // better. + // + int ERROR_DS_NO_PKT_PRIVACY_ON_CONNECTION = 8533; + // + // MessageId: ERROR_DS_SOURCE_DOMAIN_IN_FOREST + // + // MessageText: + // + // The source domain may not be in the same forest as destination. + // + int ERROR_DS_SOURCE_DOMAIN_IN_FOREST = 8534; + // + // MessageId: ERROR_DS_DESTINATION_DOMAIN_NOT_IN_FOREST + // + // MessageText: + // + // The destination domain must be in the forest. + // + int ERROR_DS_DESTINATION_DOMAIN_NOT_IN_FOREST = 8535; + // + // MessageId: ERROR_DS_DESTINATION_AUDITING_NOT_ENABLED + // + // MessageText: + // + // The operation requires that destination domain auditing be enabled. + // + int ERROR_DS_DESTINATION_AUDITING_NOT_ENABLED = 8536; + // + // MessageId: ERROR_DS_CANT_FIND_DC_FOR_SRC_DOMAIN + // + // MessageText: + // + // The operation couldn't locate a DC for the source domain. + // + int ERROR_DS_CANT_FIND_DC_FOR_SRC_DOMAIN = 8537; + // + // MessageId: ERROR_DS_SRC_OBJ_NOT_GROUP_OR_USER + // + // MessageText: + // + // The source object must be a group or user. + // + int ERROR_DS_SRC_OBJ_NOT_GROUP_OR_USER = 8538; + // + // MessageId: ERROR_DS_SRC_SID_EXISTS_IN_FOREST + // + // MessageText: + // + // The source object's SID already exists in destination forest. + // + int ERROR_DS_SRC_SID_EXISTS_IN_FOREST = 8539; + // + // MessageId: ERROR_DS_SRC_AND_DST_OBJECT_CLASS_MISMATCH + // + // MessageText: + // + // The source and destination object must be of the same type. + // + int ERROR_DS_SRC_AND_DST_OBJECT_CLASS_MISMATCH = 8540; + // + // MessageId: ERROR_SAM_INIT_FAILURE + // + // MessageText: + // + // Security Accounts Manager initialization failed because of the following + // error: %1. + // Error Status: 0x%2. Click OK to shut down the system and reboot into Safe + // Mode. Check the event log for detailed information. + // + int ERROR_SAM_INIT_FAILURE = 8541; + // + // MessageId: ERROR_DS_DRA_SCHEMA_INFO_SHIP + // + // MessageText: + // + // Schema information could not be included in the replication request. + // + int ERROR_DS_DRA_SCHEMA_INFO_SHIP = 8542; + // + // MessageId: ERROR_DS_DRA_SCHEMA_CONFLICT + // + // MessageText: + // + // The replication operation could not be completed due to a schema + // incompatibility. + // + int ERROR_DS_DRA_SCHEMA_CONFLICT = 8543; + // + // MessageId: ERROR_DS_DRA_EARLIER_SCHEMA_CONFLICT + // + // MessageText: + // + // The replication operation could not be completed due to a previous schema + // incompatibility. + // + int ERROR_DS_DRA_EARLIER_SCHEMA_CONFLICT = 8544; + // + // MessageId: ERROR_DS_DRA_OBJ_NC_MISMATCH + // + // MessageText: + // + // The replication update could not be applied because either the source or + // the destination has not yet received information regarding a recent + // cross-domain move operation. + // + int ERROR_DS_DRA_OBJ_NC_MISMATCH = 8545; + // + // MessageId: ERROR_DS_NC_STILL_HAS_DSAS + // + // MessageText: + // + // The requested domain could not be deleted because there exist domain + // controllers that still host this domain. + // + int ERROR_DS_NC_STILL_HAS_DSAS = 8546; + // + // MessageId: ERROR_DS_GC_REQUIRED + // + // MessageText: + // + // The requested operation can be performed only on a global catalog server. + // + int ERROR_DS_GC_REQUIRED = 8547; + // + // MessageId: ERROR_DS_LOCAL_MEMBER_OF_LOCAL_ONLY + // + // MessageText: + // + // A local group can only be a member of other local groups in the same + // domain. + // + int ERROR_DS_LOCAL_MEMBER_OF_LOCAL_ONLY = 8548; + // + // MessageId: ERROR_DS_NO_FPO_IN_UNIVERSAL_GROUPS + // + // MessageText: + // + // Foreign security principals cannot be members of universal groups. + // + int ERROR_DS_NO_FPO_IN_UNIVERSAL_GROUPS = 8549; + // + // MessageId: ERROR_DS_CANT_ADD_TO_GC + // + // MessageText: + // + // The attribute is not allowed to be replicated to the GC because of + // security reasons. + // + int ERROR_DS_CANT_ADD_TO_GC = 8550; + // + // MessageId: ERROR_DS_NO_CHECKPOINT_WITH_PDC + // + // MessageText: + // + // The checkpoint with the PDC could not be taken because there too many + // modifications being processed currently. + // + int ERROR_DS_NO_CHECKPOINT_WITH_PDC = 8551; + // + // MessageId: ERROR_DS_SOURCE_AUDITING_NOT_ENABLED + // + // MessageText: + // + // The operation requires that source domain auditing be enabled. + // + int ERROR_DS_SOURCE_AUDITING_NOT_ENABLED = 8552; + // + // MessageId: ERROR_DS_CANT_CREATE_IN_NONDOMAIN_NC + // + // MessageText: + // + // Security principal objects can only be created inside domain naming + // contexts. + // + int ERROR_DS_CANT_CREATE_IN_NONDOMAIN_NC = 8553; + // + // MessageId: ERROR_DS_INVALID_NAME_FOR_SPN + // + // MessageText: + // + // A Service Principal Name (SPN) could not be constructed because the + // provided hostname is not in the necessary format. + // + int ERROR_DS_INVALID_NAME_FOR_SPN = 8554; + // + // MessageId: ERROR_DS_FILTER_USES_CONTRUCTED_ATTRS + // + // MessageText: + // + // A Filter was passed that uses constructed attributes. + // + int ERROR_DS_FILTER_USES_CONTRUCTED_ATTRS = 8555; + // + // MessageId: ERROR_DS_UNICODEPWD_NOT_IN_QUOTES + // + // MessageText: + // + // The unicodePwd attribute value must be enclosed in double quotes. + // + int ERROR_DS_UNICODEPWD_NOT_IN_QUOTES = 8556; + // + // MessageId: ERROR_DS_MACHINE_ACCOUNT_QUOTA_EXCEEDED + // + // MessageText: + // + // Your computer could not be joined to the domain. You have exceeded the + // maximum number of computer accounts you are allowed to create in this + // domain. Contact your system administrator to have this limit reset or + // increased. + // + int ERROR_DS_MACHINE_ACCOUNT_QUOTA_EXCEEDED = 8557; + // + // MessageId: ERROR_DS_MUST_BE_RUN_ON_DST_DC + // + // MessageText: + // + // For security reasons, the operation must be run on the destination DC. + // + int ERROR_DS_MUST_BE_RUN_ON_DST_DC = 8558; + // + // MessageId: ERROR_DS_SRC_DC_MUST_BE_SP4_OR_GREATER + // + // MessageText: + // + // For security reasons, the source DC must be NT4SP4 or greater. + // + int ERROR_DS_SRC_DC_MUST_BE_SP4_OR_GREATER = 8559; + // + // MessageId: ERROR_DS_CANT_TREE_DELETE_CRITICAL_OBJ + // + // MessageText: + // + // Critical Directory Service System objects cannot be deleted during tree + // delete operations. The tree delete may have been partially performed. + // + int ERROR_DS_CANT_TREE_DELETE_CRITICAL_OBJ = 8560; + // + // MessageId: ERROR_DS_INIT_FAILURE_CONSOLE + // + // MessageText: + // + // Directory Services could not start because of the following error: %1. + // Error Status: 0x%2. Please click OK to shutdown the system. You can use + // the recovery console to diagnose the system further. + // + int ERROR_DS_INIT_FAILURE_CONSOLE = 8561; + // + // MessageId: ERROR_DS_SAM_INIT_FAILURE_CONSOLE + // + // MessageText: + // + // Security Accounts Manager initialization failed because of the following + // error: %1. + // Error Status: 0x%2. Please click OK to shutdown the system. You can use + // the recovery console to diagnose the system further. + // + int ERROR_DS_SAM_INIT_FAILURE_CONSOLE = 8562; + // + // MessageId: ERROR_DS_FOREST_VERSION_TOO_HIGH + // + // MessageText: + // + // The version of the operating system installed is incompatible with the + // current forest functional level. You must upgrade to a new version of the + // operating system before this server can become a domain controller in + // this forest. + // + int ERROR_DS_FOREST_VERSION_TOO_HIGH = 8563; + // + // MessageId: ERROR_DS_DOMAIN_VERSION_TOO_HIGH + // + // MessageText: + // + // The version of the operating system installed is incompatible with the + // current domain functional level. You must upgrade to a new version of the + // operating system before this server can become a domain controller in + // this domain. + // + int ERROR_DS_DOMAIN_VERSION_TOO_HIGH = 8564; + // + // MessageId: ERROR_DS_FOREST_VERSION_TOO_LOW + // + // MessageText: + // + // The version of the operating system installed on this server no longer + // supports the current forest functional level. You must raise the forest + // functional level before this server can become a domain controller in + // this forest. + // + int ERROR_DS_FOREST_VERSION_TOO_LOW = 8565; + // + // MessageId: ERROR_DS_DOMAIN_VERSION_TOO_LOW + // + // MessageText: + // + // The version of the operating system installed on this server no longer + // supports the current domain functional level. You must raise the domain + // functional level before this server can become a domain controller in + // this domain. + // + int ERROR_DS_DOMAIN_VERSION_TOO_LOW = 8566; + // + // MessageId: ERROR_DS_INCOMPATIBLE_VERSION + // + // MessageText: + // + // The version of the operating system installed on this server is + // incompatible with the functional level of the domain or forest. + // + int ERROR_DS_INCOMPATIBLE_VERSION = 8567; + // + // MessageId: ERROR_DS_LOW_DSA_VERSION + // + // MessageText: + // + // The functional level of the domain (or forest) cannot be raised to the + // requested value, because there exist one or more domain controllers in + // the domain (or forest) that are at a lower incompatible functional level. + // + int ERROR_DS_LOW_DSA_VERSION = 8568; + // + // MessageId: ERROR_DS_NO_BEHAVIOR_VERSION_IN_MIXEDDOMAIN + // + // MessageText: + // + // The forest functional level cannot be raised to the requested value since + // one or more domains are still in mixed domain mode. All domains in the + // forest must be in native mode, for you to raise the forest functional + // level. + // + int ERROR_DS_NO_BEHAVIOR_VERSION_IN_MIXEDDOMAIN = 8569; + // + // MessageId: ERROR_DS_NOT_SUPPORTED_SORT_ORDER + // + // MessageText: + // + // The sort order requested is not supported. + // + int ERROR_DS_NOT_SUPPORTED_SORT_ORDER = 8570; + // + // MessageId: ERROR_DS_NAME_NOT_UNIQUE + // + // MessageText: + // + // The requested name already exists as a unique identifier. + // + int ERROR_DS_NAME_NOT_UNIQUE = 8571; + // + // MessageId: ERROR_DS_MACHINE_ACCOUNT_CREATED_PRENT4 + // + // MessageText: + // + // The machine account was created pre-NT4. The account needs to be + // recreated. + // + int ERROR_DS_MACHINE_ACCOUNT_CREATED_PRENT4 = 8572; + // + // MessageId: ERROR_DS_OUT_OF_VERSION_STORE + // + // MessageText: + // + // The database is out of version store. + // + int ERROR_DS_OUT_OF_VERSION_STORE = 8573; + // + // MessageId: ERROR_DS_INCOMPATIBLE_CONTROLS_USED + // + // MessageText: + // + // Unable to continue operation because multiple conflicting controls were + // used. + // + int ERROR_DS_INCOMPATIBLE_CONTROLS_USED = 8574; + // + // MessageId: ERROR_DS_NO_REF_DOMAIN + // + // MessageText: + // + // Unable to find a valid security descriptor reference domain for this + // partition. + // + int ERROR_DS_NO_REF_DOMAIN = 8575; + // + // MessageId: ERROR_DS_RESERVED_LINK_ID + // + // MessageText: + // + // Schema update failed: The link identifier is reserved. + // + int ERROR_DS_RESERVED_LINK_ID = 8576; + // + // MessageId: ERROR_DS_LINK_ID_NOT_AVAILABLE + // + // MessageText: + // + // Schema update failed: There are no link identifiers available. + // + int ERROR_DS_LINK_ID_NOT_AVAILABLE = 8577; + // + // MessageId: ERROR_DS_AG_CANT_HAVE_UNIVERSAL_MEMBER + // + // MessageText: + // + // An account group cannot have a universal group as a member. + // + int ERROR_DS_AG_CANT_HAVE_UNIVERSAL_MEMBER = 8578; + // + // MessageId: ERROR_DS_MODIFYDN_DISALLOWED_BY_INSTANCE_TYPE + // + // MessageText: + // + // Rename or move operations on naming context heads or read-only objects + // are not allowed. + // + int ERROR_DS_MODIFYDN_DISALLOWED_BY_INSTANCE_TYPE = 8579; + // + // MessageId: ERROR_DS_NO_OBJECT_MOVE_IN_SCHEMA_NC + // + // MessageText: + // + // Move operations on objects in the schema naming context are not allowed. + // + int ERROR_DS_NO_OBJECT_MOVE_IN_SCHEMA_NC = 8580; + // + // MessageId: ERROR_DS_MODIFYDN_DISALLOWED_BY_FLAG + // + // MessageText: + // + // A system flag has been set on the object and does not allow the object to + // be moved or renamed. + // + int ERROR_DS_MODIFYDN_DISALLOWED_BY_FLAG = 8581; + // + // MessageId: ERROR_DS_MODIFYDN_WRONG_GRANDPARENT + // + // MessageText: + // + // This object is not allowed to change its grandparent container. Moves are + // not forbidden on this object, but are restricted to sibling containers. + // + int ERROR_DS_MODIFYDN_WRONG_GRANDPARENT = 8582; + // + // MessageId: ERROR_DS_NAME_ERROR_TRUST_REFERRAL + // + // MessageText: + // + // Unable to resolve completely, a referral to another forest is generated. + // + int ERROR_DS_NAME_ERROR_TRUST_REFERRAL = 8583; + // + // MessageId: ERROR_NOT_SUPPORTED_ON_STANDARD_SERVER + // + // MessageText: + // + // The requested action is not supported on standard server. + // + int ERROR_NOT_SUPPORTED_ON_STANDARD_SERVER = 8584; + // + // MessageId: ERROR_DS_CANT_ACCESS_REMOTE_PART_OF_AD + // + // MessageText: + // + // Could not access a partition of the directory service located on a remote + // server. Make sure at least one server is running for the partition in + // question. + // + int ERROR_DS_CANT_ACCESS_REMOTE_PART_OF_AD = 8585; + // + // MessageId: ERROR_DS_CR_IMPOSSIBLE_TO_VALIDATE_V2 + // + // MessageText: + // + // The directory cannot validate the proposed naming context (or partition) + // name because it does not hold a replica nor can it contact a replica of + // the naming context above the proposed naming context. Please ensure that + // the parent naming context is properly registered in DNS, and at least one + // replica of this naming context is reachable by the Domain Naming master. + // + int ERROR_DS_CR_IMPOSSIBLE_TO_VALIDATE_V2 = 8586; + // + // MessageId: ERROR_DS_THREAD_LIMIT_EXCEEDED + // + // MessageText: + // + // The thread limit for this request was exceeded. + // + int ERROR_DS_THREAD_LIMIT_EXCEEDED = 8587; + // + // MessageId: ERROR_DS_NOT_CLOSEST + // + // MessageText: + // + // The Global catalog server is not in the closest site. + // + int ERROR_DS_NOT_CLOSEST = 8588; + // + // MessageId: ERROR_DS_CANT_DERIVE_SPN_WITHOUT_SERVER_REF + // + // MessageText: + // + // The DS cannot derive a service principal name (SPN) with which to + // mutually authenticate the target server because the corresponding server + // object in the local DS database has no serverReference attribute. + // + int ERROR_DS_CANT_DERIVE_SPN_WITHOUT_SERVER_REF = 8589; + // + // MessageId: ERROR_DS_SINGLE_USER_MODE_FAILED + // + // MessageText: + // + // The Directory Service failed to enter single user mode. + // + int ERROR_DS_SINGLE_USER_MODE_FAILED = 8590; + // + // MessageId: ERROR_DS_NTDSCRIPT_SYNTAX_ERROR + // + // MessageText: + // + // The Directory Service cannot parse the script because of a syntax error. + // + int ERROR_DS_NTDSCRIPT_SYNTAX_ERROR = 8591; + // + // MessageId: ERROR_DS_NTDSCRIPT_PROCESS_ERROR + // + // MessageText: + // + // The Directory Service cannot process the script because of an error. + // + int ERROR_DS_NTDSCRIPT_PROCESS_ERROR = 8592; + // + // MessageId: ERROR_DS_DIFFERENT_REPL_EPOCHS + // + // MessageText: + // + // The directory service cannot perform the requested operation because the + // servers + // involved are of different replication epochs (which is usually related to + // a + // domain rename that is in progress). + // + int ERROR_DS_DIFFERENT_REPL_EPOCHS = 8593; + // + // MessageId: ERROR_DS_DRS_EXTENSIONS_CHANGED + // + // MessageText: + // + // The directory service binding must be renegotiated due to a change in the + // server + // extensions information. + // + int ERROR_DS_DRS_EXTENSIONS_CHANGED = 8594; + // + // MessageId: ERROR_DS_REPLICA_SET_CHANGE_NOT_ALLOWED_ON_DISABLED_CR + // + // MessageText: + // + // Operation not allowed on a disabled cross ref. + // + int ERROR_DS_REPLICA_SET_CHANGE_NOT_ALLOWED_ON_DISABLED_CR = 8595; + // + // MessageId: ERROR_DS_NO_MSDS_INTID + // + // MessageText: + // + // Schema update failed: No values for msDS-IntId are available. + // + int ERROR_DS_NO_MSDS_INTID = 8596; + // + // MessageId: ERROR_DS_DUP_MSDS_INTID + // + // MessageText: + // + // Schema update failed: Duplicate msDS-INtId. Retry the operation. + // + int ERROR_DS_DUP_MSDS_INTID = 8597; + // + // MessageId: ERROR_DS_EXISTS_IN_RDNATTID + // + // MessageText: + // + // Schema deletion failed: attribute is used in rDNAttID. + // + int ERROR_DS_EXISTS_IN_RDNATTID = 8598; + // + // MessageId: ERROR_DS_AUTHORIZATION_FAILED + // + // MessageText: + // + // The directory service failed to authorize the request. + // + int ERROR_DS_AUTHORIZATION_FAILED = 8599; + // + // MessageId: ERROR_DS_INVALID_SCRIPT + // + // MessageText: + // + // The Directory Service cannot process the script because it is invalid. + // + int ERROR_DS_INVALID_SCRIPT = 8600; + // + // MessageId: ERROR_DS_REMOTE_CROSSREF_OP_FAILED + // + // MessageText: + // + // The remote create cross reference operation failed on the Domain Naming + // Master FSMO. The operation's error is in the extended data. + // + int ERROR_DS_REMOTE_CROSSREF_OP_FAILED = 8601; + // + // MessageId: ERROR_DS_CROSS_REF_BUSY + // + // MessageText: + // + // A cross reference is in use locally with the same name. + // + int ERROR_DS_CROSS_REF_BUSY = 8602; + // + // MessageId: ERROR_DS_CANT_DERIVE_SPN_FOR_DELETED_DOMAIN + // + // MessageText: + // + // The DS cannot derive a service principal name (SPN) with which to + // mutually authenticate the target server because the server's domain has + // been deleted from the forest. + // + int ERROR_DS_CANT_DERIVE_SPN_FOR_DELETED_DOMAIN = 8603; + // + // MessageId: ERROR_DS_CANT_DEMOTE_WITH_WRITEABLE_NC + // + // MessageText: + // + // Writeable NCs prevent this DC from demoting. + // + int ERROR_DS_CANT_DEMOTE_WITH_WRITEABLE_NC = 8604; + // + // MessageId: ERROR_DS_DUPLICATE_ID_FOUND + // + // MessageText: + // + // The requested object has a non-unique identifier and cannot be retrieved. + // + int ERROR_DS_DUPLICATE_ID_FOUND = 8605; + // + // MessageId: ERROR_DS_INSUFFICIENT_ATTR_TO_CREATE_OBJECT + // + // MessageText: + // + // Insufficient attributes were given to create an object. This object may + // not exist because it may have been deleted and already garbage collected. + // + int ERROR_DS_INSUFFICIENT_ATTR_TO_CREATE_OBJECT = 8606; + // + // MessageId: ERROR_DS_GROUP_CONVERSION_ERROR + // + // MessageText: + // + // The group cannot be converted due to attribute restrictions on the + // requested group type. + // + int ERROR_DS_GROUP_CONVERSION_ERROR = 8607; + // + // MessageId: ERROR_DS_CANT_MOVE_APP_BASIC_GROUP + // + // MessageText: + // + // Cross-domain move of non-empty basic application groups is not allowed. + // + int ERROR_DS_CANT_MOVE_APP_BASIC_GROUP = 8608; + // + // MessageId: ERROR_DS_CANT_MOVE_APP_QUERY_GROUP + // + // MessageText: + // + // Cross-domain move of non-empty query based application groups is not + // allowed. + // + int ERROR_DS_CANT_MOVE_APP_QUERY_GROUP = 8609; + // + // MessageId: ERROR_DS_ROLE_NOT_VERIFIED + // + // MessageText: + // + // The FSMO role ownership could not be verified because its directory + // partition has not replicated successfully with atleast one replication + // partner. + // + int ERROR_DS_ROLE_NOT_VERIFIED = 8610; + // + // MessageId: ERROR_DS_WKO_CONTAINER_CANNOT_BE_SPECIAL + // + // MessageText: + // + // The target container for a redirection of a well known object container + // cannot already be a special container. + // + int ERROR_DS_WKO_CONTAINER_CANNOT_BE_SPECIAL = 8611; + // + // MessageId: ERROR_DS_DOMAIN_RENAME_IN_PROGRESS + // + // MessageText: + // + // The Directory Service cannot perform the requested operation because a + // domain rename operation is in progress. + // + int ERROR_DS_DOMAIN_RENAME_IN_PROGRESS = 8612; + // + // MessageId: ERROR_DS_EXISTING_AD_CHILD_NC + // + // MessageText: + // + // The directory service detected a child partition below the requested + // partition name. The partition hierarchy must be created in a top down + // method. + // + int ERROR_DS_EXISTING_AD_CHILD_NC = 8613; + // + // MessageId: ERROR_DS_REPL_LIFETIME_EXCEEDED + // + // MessageText: + // + // The directory service cannot replicate with this server because the time + // since the last replication with this server has exceeded the tombstone + // lifetime. + // + int ERROR_DS_REPL_LIFETIME_EXCEEDED = 8614; + // + // MessageId: ERROR_DS_DISALLOWED_IN_SYSTEM_CONTAINER + // + // MessageText: + // + // The requested operation is not allowed on an object under the system + // container. + // + int ERROR_DS_DISALLOWED_IN_SYSTEM_CONTAINER = 8615; + // + // MessageId: ERROR_DS_LDAP_SEND_QUEUE_FULL + // + // MessageText: + // + // The LDAP servers network send queue has filled up because the client is + // not processing the results of it's requests fast enough. No more requests + // will be processed until the client catches up. If the client does not + // catch up then it will be disconnected. + // + int ERROR_DS_LDAP_SEND_QUEUE_FULL = 8616; + // + // MessageId: ERROR_DS_DRA_OUT_SCHEDULE_WINDOW + // + // MessageText: + // + // The scheduled replication did not take place because the system was too + // busy to execute the request within the schedule window. The replication + // queue is overloaded. Consider reducing the number of partners or + // decreasing the scheduled replication frequency. + // + int ERROR_DS_DRA_OUT_SCHEDULE_WINDOW = 8617; + // + // MessageId: ERROR_DS_POLICY_NOT_KNOWN + // + // MessageText: + // + // At this time, it cannot be determined if the branch replication policy is + // available on the hub domain controller. Please retry at a later time to + // account for replication latencies. + // + int ERROR_DS_POLICY_NOT_KNOWN = 8618; + // + // MessageId: ERROR_NO_SITE_SETTINGS_OBJECT + // + // MessageText: + // + // The site settings object for the specified site does not exist. + // + int ERROR_NO_SITE_SETTINGS_OBJECT = 8619; + // + // MessageId: ERROR_NO_SECRETS + // + // MessageText: + // + // The local account store does not contain secret material for the + // specified account. + // + int ERROR_NO_SECRETS = 8620; + // + // MessageId: ERROR_NO_WRITABLE_DC_FOUND + // + // MessageText: + // + // Could not find a writable domain controller in the domain. + // + int ERROR_NO_WRITABLE_DC_FOUND = 8621; + // + // MessageId: ERROR_DS_NO_SERVER_OBJECT + // + // MessageText: + // + // The server object for the domain controller does not exist. + // + int ERROR_DS_NO_SERVER_OBJECT = 8622; + // + // MessageId: ERROR_DS_NO_NTDSA_OBJECT + // + // MessageText: + // + // The NTDS Settings object for the domain controller does not exist. + // + int ERROR_DS_NO_NTDSA_OBJECT = 8623; + // + // MessageId: ERROR_DS_NON_ASQ_SEARCH + // + // MessageText: + // + // The requested search operation is not supported for ASQ searches. + // + int ERROR_DS_NON_ASQ_SEARCH = 8624; + // + // MessageId: ERROR_DS_AUDIT_FAILURE + // + // MessageText: + // + // A required audit event could not be generated for the operation. + // + int ERROR_DS_AUDIT_FAILURE = 8625; + // + // MessageId: ERROR_DS_INVALID_SEARCH_FLAG_SUBTREE + // + // MessageText: + // + // The search flags for the attribute are invalid. The subtree index bit is + // valid only on single valued attributes. + // + int ERROR_DS_INVALID_SEARCH_FLAG_SUBTREE = 8626; + // + // MessageId: ERROR_DS_INVALID_SEARCH_FLAG_TUPLE + // + // MessageText: + // + // The search flags for the attribute are invalid. The tuple index bit is + // valid only on attributes of Unicode strings. + // + int ERROR_DS_INVALID_SEARCH_FLAG_TUPLE = 8627; + // + // MessageId: ERROR_DS_HIERARCHY_TABLE_TOO_DEEP + // + // MessageText: + // + // The address books are nested too deeply. Failed to build the hierarchy + // table. + // + int ERROR_DS_HIERARCHY_TABLE_TOO_DEEP = 8628; + // ///////////////////////////////////////////////// + // =/ + // =End of Active Directory Error Codes / + // =/ + // =8000 to =8999=/ + // ///////////////////////////////////////////////// + // ///////////////////////////////////////////////// + // =// + // =DNS Error codes=// + // =// + // =9000 to=9999=// + // ///////////////////////////////////////////////// + // ==== + // Facility DNS Error Messages + // ==== + // + // DNS response codes. + // + int DNS_ERROR_RESPONSE_CODES_BASE = 9000; + int DNS_ERROR_RCODE_NO_ERROR = NO_ERROR; + int DNS_ERROR_MASK = 0x00002328; // =9000 or + // DNS_ERROR_RESPONSE_CODES_BASE + // DNS_ERROR_RCODE_FORMAT_ERROR=0x00002329 + // + // MessageId: DNS_ERROR_RCODE_FORMAT_ERROR + // + // MessageText: + // + // DNS server unable to interpret format. + // + int DNS_ERROR_RCODE_FORMAT_ERROR = 9001; + // DNS_ERROR_RCODE_SERVER_FAILURE=0x0000232a + // + // MessageId: DNS_ERROR_RCODE_SERVER_FAILURE + // + // MessageText: + // + // DNS server failure. + // + int DNS_ERROR_RCODE_SERVER_FAILURE = 9002; + // DNS_ERROR_RCODE_NAME_ERROR=0x0000232b + // + // MessageId: DNS_ERROR_RCODE_NAME_ERROR + // + // MessageText: + // + // DNS name does not exist. + // + int DNS_ERROR_RCODE_NAME_ERROR = 9003; + // DNS_ERROR_RCODE_NOT_IMPLEMENTED 0x0000232c + // + // MessageId: DNS_ERROR_RCODE_NOT_IMPLEMENTED + // + // MessageText: + // + // DNS request not supported by name server. + // + int DNS_ERROR_RCODE_NOT_IMPLEMENTED = 9004; + // DNS_ERROR_RCODE_REFUSED=0x0000232d + // + // MessageId: DNS_ERROR_RCODE_REFUSED + // + // MessageText: + // + // DNS operation refused. + // + int DNS_ERROR_RCODE_REFUSED = 9005; + // DNS_ERROR_RCODE_YXDOMAIN=0x0000232e + // + // MessageId: DNS_ERROR_RCODE_YXDOMAIN + // + // MessageText: + // + // DNS name that ought not exist, does exist. + // + int DNS_ERROR_RCODE_YXDOMAIN = 9006; + // DNS_ERROR_RCODE_YXRRSET=0x0000232f + // + // MessageId: DNS_ERROR_RCODE_YXRRSET + // + // MessageText: + // + // DNS RR set that ought not exist, does exist. + // + int DNS_ERROR_RCODE_YXRRSET = 9007; + // DNS_ERROR_RCODE_NXRRSET=0x00002330 + // + // MessageId: DNS_ERROR_RCODE_NXRRSET + // + // MessageText: + // + // DNS RR set that ought to exist, does not exist. + // + int DNS_ERROR_RCODE_NXRRSET = 9008; + // DNS_ERROR_RCODE_NOTAUTH=0x00002331 + // + // MessageId: DNS_ERROR_RCODE_NOTAUTH + // + // MessageText: + // + // DNS server not authoritative for zone. + // + int DNS_ERROR_RCODE_NOTAUTH = 9009; + // DNS_ERROR_RCODE_NOTZONE=0x00002332 + // + // MessageId: DNS_ERROR_RCODE_NOTZONE + // + // MessageText: + // + // DNS name in update or prereq is not in zone. + // + int DNS_ERROR_RCODE_NOTZONE = 9010; + // DNS_ERROR_RCODE_BADSIG=0x00002338 + // + // MessageId: DNS_ERROR_RCODE_BADSIG + // + // MessageText: + // + // DNS signature failed to verify. + // + int DNS_ERROR_RCODE_BADSIG = 9016; + // DNS_ERROR_RCODE_BADKEY=0x00002339 + // + // MessageId: DNS_ERROR_RCODE_BADKEY + // + // MessageText: + // + // DNS bad key. + // + int DNS_ERROR_RCODE_BADKEY = 9017; + // DNS_ERROR_RCODE_BADTIME=0x0000233a + // + // MessageId: DNS_ERROR_RCODE_BADTIME + // + // MessageText: + // + // DNS signature validity expired. + // + int DNS_ERROR_RCODE_BADTIME = 9018; + int DNS_ERROR_RCODE_LAST = DNS_ERROR_RCODE_BADTIME; + // + // Packet format + // + int DNS_ERROR_PACKET_FMT_BASE = 9500; + // DNS_INFO_NO_RECORDS=0x0000251d + // + // MessageId: DNS_INFO_NO_RECORDS + // + // MessageText: + // + // No records found for given DNS query. + // + int DNS_INFO_NO_RECORDS = 9501; + // DNS_ERROR_BAD_PACKET=0x0000251e + // + // MessageId: DNS_ERROR_BAD_PACKET + // + // MessageText: + // + // Bad DNS packet. + // + int DNS_ERROR_BAD_PACKET = 9502; + // DNS_ERROR_NO_PACKET=0x0000251f + // + // MessageId: DNS_ERROR_NO_PACKET + // + // MessageText: + // + // No DNS packet. + // + int DNS_ERROR_NO_PACKET = 9503; + // DNS_ERROR_RCODE=0x00002520 + // + // MessageId: DNS_ERROR_RCODE + // + // MessageText: + // + // DNS error, check rcode. + // + int DNS_ERROR_RCODE = 9504; + // DNS_ERROR_UNSECURE_PACKET=0x00002521 + // + // MessageId: DNS_ERROR_UNSECURE_PACKET + // + // MessageText: + // + // Unsecured DNS packet. + // + int DNS_ERROR_UNSECURE_PACKET = 9505; + int DNS_STATUS_PACKET_UNSECURE = DNS_ERROR_UNSECURE_PACKET; + // + // General API errors + // + int DNS_ERROR_NO_MEMORY = ERROR_OUTOFMEMORY; + int DNS_ERROR_INVALID_NAME = ERROR_INVALID_NAME; + int DNS_ERROR_INVALID_DATA = ERROR_INVALID_DATA; + int DNS_ERROR_GENERAL_API_BASE = 9550; + // DNS_ERROR_INVALID_TYPE=0x0000254f + // + // MessageId: DNS_ERROR_INVALID_TYPE + // + // MessageText: + // + // Invalid DNS type. + // + int DNS_ERROR_INVALID_TYPE = 9551; + // DNS_ERROR_INVALID_IP_ADDRESS=0x00002550 + // + // MessageId: DNS_ERROR_INVALID_IP_ADDRESS + // + // MessageText: + // + // Invalid IP address. + // + int DNS_ERROR_INVALID_IP_ADDRESS = 9552; + // DNS_ERROR_INVALID_PROPERTY=0x00002551 + // + // MessageId: DNS_ERROR_INVALID_PROPERTY + // + // MessageText: + // + // Invalid property. + // + int DNS_ERROR_INVALID_PROPERTY = 9553; + // DNS_ERROR_TRY_AGAIN_LATER=0x00002552 + // + // MessageId: DNS_ERROR_TRY_AGAIN_LATER + // + // MessageText: + // + // Try DNS operation again later. + // + int DNS_ERROR_TRY_AGAIN_LATER = 9554; + // DNS_ERROR_NOT_UNIQUE=0x00002553 + // + // MessageId: DNS_ERROR_NOT_UNIQUE + // + // MessageText: + // + // Record for given name and type is not unique. + // + int DNS_ERROR_NOT_UNIQUE = 9555; + // DNS_ERROR_NON_RFC_NAME=0x00002554 + // + // MessageId: DNS_ERROR_NON_RFC_NAME + // + // MessageText: + // + // DNS name does not comply with RFC specifications. + // + int DNS_ERROR_NON_RFC_NAME = 9556; + // DNS_STATUS_FQDN=0x00002555 + // + // MessageId: DNS_STATUS_FQDN + // + // MessageText: + // + // DNS name is a fully-qualified DNS name. + // + int DNS_STATUS_FQDN = 9557; + // DNS_STATUS_DOTTED_NAME=0x00002556 + // + // MessageId: DNS_STATUS_DOTTED_NAME + // + // MessageText: + // + // DNS name is dotted (multi-labe;. + // + int DNS_STATUS_DOTTED_NAME = 9558; + // DNS_STATUS_SINGLE_PART_NAME=0x00002557 + // + // MessageId: DNS_STATUS_SINGLE_PART_NAME + // + // MessageText: + // + // DNS name is a single-part name. + // + int DNS_STATUS_SINGLE_PART_NAME = 9559; + // DNS_ERROR_INVALID_NAME_CHAR=0x00002558 + // + // MessageId: DNS_ERROR_INVALID_NAME_CHAR + // + // MessageText: + // + // DNS name contains an invalid character. + // + int DNS_ERROR_INVALID_NAME_CHAR = 9560; + // DNS_ERROR_NUMERIC_NAME=0x00002559 + // + // MessageId: DNS_ERROR_NUMERIC_NAME + // + // MessageText: + // + // DNS name is entirely numeric. + // + int DNS_ERROR_NUMERIC_NAME = 9561; + // DNS_ERROR_NOT_ALLOWED_ON_ROOT_SERVER 0x0000255A + // + // MessageId: DNS_ERROR_NOT_ALLOWED_ON_ROOT_SERVER + // + // MessageText: + // + // The operation requested is not permitted on a DNS root server. + // + int DNS_ERROR_NOT_ALLOWED_ON_ROOT_SERVER = 9562; + // DNS_ERROR_NOT_ALLOWED_UNDER_DELEGATION 0x0000255B + // + // MessageId: DNS_ERROR_NOT_ALLOWED_UNDER_DELEGATION + // + // MessageText: + // + // The record could not be created because this part of the DNS namespace + // has been delegated to another server. + // + int DNS_ERROR_NOT_ALLOWED_UNDER_DELEGATION = 9563; + // DNS_ERROR_CANNOT_FIND_ROOT_HINTS 0x0000255C + // + // MessageId: DNS_ERROR_CANNOT_FIND_ROOT_HINTS + // + // MessageText: + // + // The DNS server could not find a set of root hints. + // + int DNS_ERROR_CANNOT_FIND_ROOT_HINTS = 9564; + // DNS_ERROR_INCONSISTENT_ROOT_HINTS 0x0000255D + // + // MessageId: DNS_ERROR_INCONSISTENT_ROOT_HINTS + // + // MessageText: + // + // The DNS server found root hints but they were not consistent across all + // adapters. + // + int DNS_ERROR_INCONSISTENT_ROOT_HINTS = 9565; + // DNS_ERROR_DWORD_VALUE_TOO_SMALL 0x0000255E + // + // MessageId: DNS_ERROR_DWORD_VALUE_TOO_SMALL + // + // MessageText: + // + // The specified value is too small for this parameter. + // + int DNS_ERROR_DWORD_VALUE_TOO_SMALL = 9566; + // DNS_ERROR_DWORD_VALUE_TOO_LARGE 0x0000255F + // + // MessageId: DNS_ERROR_DWORD_VALUE_TOO_LARGE + // + // MessageText: + // + // The specified value is too large for this parameter. + // + int DNS_ERROR_DWORD_VALUE_TOO_LARGE = 9567; + // DNS_ERROR_BACKGROUND_LOADING 0x00002560 + // + // MessageId: DNS_ERROR_BACKGROUND_LOADING + // + // MessageText: + // + // This operation is not allowed while the DNS server is loading zones in + // the background. Please try again later. + // + int DNS_ERROR_BACKGROUND_LOADING = 9568; + // DNS_ERROR_NOT_ALLOWED_ON_RODC 0x00002561 + // + // MessageId: DNS_ERROR_NOT_ALLOWED_ON_RODC + // + // MessageText: + // + // The operation requested is not permitted on against a DNS server running + // on a read-only DC. + // + int DNS_ERROR_NOT_ALLOWED_ON_RODC = 9569; + // DNS_ERROR_NOT_ALLOWED_UNDER_DNAME 0x00002562 + // + // MessageId: DNS_ERROR_NOT_ALLOWED_UNDER_DNAME + // + // MessageText: + // + // No data is allowed to exist underneath a DNAME record. + // + int DNS_ERROR_NOT_ALLOWED_UNDER_DNAME = 9570; + // + // Zone errors + // + int DNS_ERROR_ZONE_BASE = 9600; + // DNS_ERROR_ZONE_DOES_NOT_EXIST=0x00002581 + // + // MessageId: DNS_ERROR_ZONE_DOES_NOT_EXIST + // + // MessageText: + // + // DNS zone does not exist. + // + int DNS_ERROR_ZONE_DOES_NOT_EXIST = 9601; + // DNS_ERROR_NO_ZONE_INFO=0x00002582 + // + // MessageId: DNS_ERROR_NO_ZONE_INFO + // + // MessageText: + // + // DNS zone information not available. + // + int DNS_ERROR_NO_ZONE_INFO = 9602; + // DNS_ERROR_INVALID_ZONE_OPERATION 0x00002583 + // + // MessageId: DNS_ERROR_INVALID_ZONE_OPERATION + // + // MessageText: + // + // Invalid operation for DNS zone. + // + int DNS_ERROR_INVALID_ZONE_OPERATION = 9603; + // DNS_ERROR_ZONE_CONFIGURATION_ERROR 0x00002584 + // + // MessageId: DNS_ERROR_ZONE_CONFIGURATION_ERROR + // + // MessageText: + // + // Invalid DNS zone configuration. + // + int DNS_ERROR_ZONE_CONFIGURATION_ERROR = 9604; + // DNS_ERROR_ZONE_HAS_NO_SOA_RECORD 0x00002585 + // + // MessageId: DNS_ERROR_ZONE_HAS_NO_SOA_RECORD + // + // MessageText: + // + // DNS zone has no start of authority (SOA) record. + // + int DNS_ERROR_ZONE_HAS_NO_SOA_RECORD = 9605; + // DNS_ERROR_ZONE_HAS_NO_NS_RECORDS 0x00002586 + // + // MessageId: DNS_ERROR_ZONE_HAS_NO_NS_RECORDS + // + // MessageText: + // + // DNS zone has no Name Server (NS) record. + // + int DNS_ERROR_ZONE_HAS_NO_NS_RECORDS = 9606; + // DNS_ERROR_ZONE_LOCKED=0x00002587 + // + // MessageId: DNS_ERROR_ZONE_LOCKED + // + // MessageText: + // + // DNS zone is locked. + // + int DNS_ERROR_ZONE_LOCKED = 9607; + // DNS_ERROR_ZONE_CREATION_FAILED=0x00002588 + // + // MessageId: DNS_ERROR_ZONE_CREATION_FAILED + // + // MessageText: + // + // DNS zone creation failed. + // + int DNS_ERROR_ZONE_CREATION_FAILED = 9608; + // DNS_ERROR_ZONE_ALREADY_EXISTS=0x00002589 + // + // MessageId: DNS_ERROR_ZONE_ALREADY_EXISTS + // + // MessageText: + // + // DNS zone already exists. + // + int DNS_ERROR_ZONE_ALREADY_EXISTS = 9609; + // DNS_ERROR_AUTOZONE_ALREADY_EXISTS 0x0000258a + // + // MessageId: DNS_ERROR_AUTOZONE_ALREADY_EXISTS + // + // MessageText: + // + // DNS automatic zone already exists. + // + int DNS_ERROR_AUTOZONE_ALREADY_EXISTS = 9610; + // DNS_ERROR_INVALID_ZONE_TYPE=0x0000258b + // + // MessageId: DNS_ERROR_INVALID_ZONE_TYPE + // + // MessageText: + // + // Invalid DNS zone type. + // + int DNS_ERROR_INVALID_ZONE_TYPE = 9611; + // DNS_ERROR_SECONDARY_REQUIRES_MASTER_IP 0x0000258c + // + // MessageId: DNS_ERROR_SECONDARY_REQUIRES_MASTER_IP + // + // MessageText: + // + // Secondary DNS zone requires master IP address. + // + int DNS_ERROR_SECONDARY_REQUIRES_MASTER_IP = 9612; + // DNS_ERROR_ZONE_NOT_SECONDARY=0x0000258d + // + // MessageId: DNS_ERROR_ZONE_NOT_SECONDARY + // + // MessageText: + // + // DNS zone not secondary. + // + int DNS_ERROR_ZONE_NOT_SECONDARY = 9613; + // DNS_ERROR_NEED_SECONDARY_ADDRESSES 0x0000258e + // + // MessageId: DNS_ERROR_NEED_SECONDARY_ADDRESSES + // + // MessageText: + // + // Need secondary IP address. + // + int DNS_ERROR_NEED_SECONDARY_ADDRESSES = 9614; + // DNS_ERROR_WINS_INIT_FAILED=0x0000258f + // + // MessageId: DNS_ERROR_WINS_INIT_FAILED + // + // MessageText: + // + // WINS initialization failed. + // + int DNS_ERROR_WINS_INIT_FAILED = 9615; + // DNS_ERROR_NEED_WINS_SERVERS=0x00002590 + // + // MessageId: DNS_ERROR_NEED_WINS_SERVERS + // + // MessageText: + // + // Need WINS servers. + // + int DNS_ERROR_NEED_WINS_SERVERS = 9616; + // DNS_ERROR_NBSTAT_INIT_FAILED=0x00002591 + // + // MessageId: DNS_ERROR_NBSTAT_INIT_FAILED + // + // MessageText: + // + // NBTSTAT initialization call failed. + // + int DNS_ERROR_NBSTAT_INIT_FAILED = 9617; + // DNS_ERROR_SOA_DELETE_INVALID=0x00002592 + // + // MessageId: DNS_ERROR_SOA_DELETE_INVALID + // + // MessageText: + // + // Invalid delete of start of authority (SOA) + // + int DNS_ERROR_SOA_DELETE_INVALID = 9618; + // DNS_ERROR_FORWARDER_ALREADY_EXISTS 0x00002593 + // + // MessageId: DNS_ERROR_FORWARDER_ALREADY_EXISTS + // + // MessageText: + // + // A conditional forwarding zone already exists for that name. + // + int DNS_ERROR_FORWARDER_ALREADY_EXISTS = 9619; + // DNS_ERROR_ZONE_REQUIRES_MASTER_IP 0x00002594 + // + // MessageId: DNS_ERROR_ZONE_REQUIRES_MASTER_IP + // + // MessageText: + // + // This zone must be configured with one or more master DNS server IP + // addresses. + // + int DNS_ERROR_ZONE_REQUIRES_MASTER_IP = 9620; + // DNS_ERROR_ZONE_IS_SHUTDOWN=0x00002595 + // + // MessageId: DNS_ERROR_ZONE_IS_SHUTDOWN + // + // MessageText: + // + // The operation cannot be performed because this zone is shutdown. + // + int DNS_ERROR_ZONE_IS_SHUTDOWN = 9621; + // + // Datafile errors + // + int DNS_ERROR_DATAFILE_BASE = 9650; + // DNS=0x000025b3 + // + // MessageId: DNS_ERROR_PRIMARY_REQUIRES_DATAFILE + // + // MessageText: + // + // Primary DNS zone requires datafile. + // + int DNS_ERROR_PRIMARY_REQUIRES_DATAFILE = 9651; + // DNS=0x000025b4 + // + // MessageId: DNS_ERROR_INVALID_DATAFILE_NAME + // + // MessageText: + // + // Invalid datafile name for DNS zone. + // + int DNS_ERROR_INVALID_DATAFILE_NAME = 9652; + // DNS=0x000025b5 + // + // MessageId: DNS_ERROR_DATAFILE_OPEN_FAILURE + // + // MessageText: + // + // Failed to open datafile for DNS zone. + // + int DNS_ERROR_DATAFILE_OPEN_FAILURE = 9653; + // DNS=0x000025b6 + // + // MessageId: DNS_ERROR_FILE_WRITEBACK_FAILED + // + // MessageText: + // + // Failed to write datafile for DNS zone. + // + int DNS_ERROR_FILE_WRITEBACK_FAILED = 9654; + // DNS=0x000025b7 + // + // MessageId: DNS_ERROR_DATAFILE_PARSING + // + // MessageText: + // + // Failure while reading datafile for DNS zone. + // + int DNS_ERROR_DATAFILE_PARSING = 9655; + // + // Database errors + // + int DNS_ERROR_DATABASE_BASE = 9700; + // DNS_ERROR_RECORD_DOES_NOT_EXIST 0x000025e5 + // + // MessageId: DNS_ERROR_RECORD_DOES_NOT_EXIST + // + // MessageText: + // + // DNS record does not exist. + // + int DNS_ERROR_RECORD_DOES_NOT_EXIST = 9701; + // DNS_ERROR_RECORD_FORMAT=0x000025e6 + // + // MessageId: DNS_ERROR_RECORD_FORMAT + // + // MessageText: + // + // DNS record format error. + // + int DNS_ERROR_RECORD_FORMAT = 9702; + // DNS_ERROR_NODE_CREATION_FAILED=0x000025e7 + // + // MessageId: DNS_ERROR_NODE_CREATION_FAILED + // + // MessageText: + // + // Node creation failure in DNS. + // + int DNS_ERROR_NODE_CREATION_FAILED = 9703; + // DNS_ERROR_UNKNOWN_RECORD_TYPE=0x000025e8 + // + // MessageId: DNS_ERROR_UNKNOWN_RECORD_TYPE + // + // MessageText: + // + // Unknown DNS record type. + // + int DNS_ERROR_UNKNOWN_RECORD_TYPE = 9704; + // DNS_ERROR_RECORD_TIMED_OUT=0x000025e9 + // + // MessageId: DNS_ERROR_RECORD_TIMED_OUT + // + // MessageText: + // + // DNS record timed out. + // + int DNS_ERROR_RECORD_TIMED_OUT = 9705; + // DNS_ERROR_NAME_NOT_IN_ZONE=0x000025ea + // + // MessageId: DNS_ERROR_NAME_NOT_IN_ZONE + // + // MessageText: + // + // Name not in DNS zone. + // + int DNS_ERROR_NAME_NOT_IN_ZONE = 9706; + // DNS_ERROR_CNAME_LOOP=0x000025eb + // + // MessageId: DNS_ERROR_CNAME_LOOP + // + // MessageText: + // + // CNAME loop detected. + // + int DNS_ERROR_CNAME_LOOP = 9707; + // DNS_ERROR_NODE_IS_CNAME=0x000025ec + // + // MessageId: DNS_ERROR_NODE_IS_CNAME + // + // MessageText: + // + // Node is a CNAME DNS record. + // + int DNS_ERROR_NODE_IS_CNAME = 9708; + // DNS_ERROR_CNAME_COLLISION=0x000025ed + // + // MessageId: DNS_ERROR_CNAME_COLLISION + // + // MessageText: + // + // A CNAME record already exists for given name. + // + int DNS_ERROR_CNAME_COLLISION = 9709; + // DNS_ERROR_RECORD_ONLY_AT_ZONE_ROOT 0x000025ee + // + // MessageId: DNS_ERROR_RECORD_ONLY_AT_ZONE_ROOT + // + // MessageText: + // + // Record only at DNS zone root. + // + int DNS_ERROR_RECORD_ONLY_AT_ZONE_ROOT = 9710; + // DNS_ERROR_RECORD_ALREADY_EXISTS 0x000025ef + // + // MessageId: DNS_ERROR_RECORD_ALREADY_EXISTS + // + // MessageText: + // + // DNS record already exists. + // + int DNS_ERROR_RECORD_ALREADY_EXISTS = 9711; + // DNS_ERROR_SECONDARY_DATA=0x000025f0 + // + // MessageId: DNS_ERROR_SECONDARY_DATA + // + // MessageText: + // + // Secondary DNS zone data error. + // + int DNS_ERROR_SECONDARY_DATA = 9712; + // DNS_ERROR_NO_CREATE_CACHE_DATA=0x000025f1 + // + // MessageId: DNS_ERROR_NO_CREATE_CACHE_DATA + // + // MessageText: + // + // Could not create DNS cache data. + // + int DNS_ERROR_NO_CREATE_CACHE_DATA = 9713; + // DNS_ERROR_NAME_DOES_NOT_EXIST=0x000025f2 + // + // MessageId: DNS_ERROR_NAME_DOES_NOT_EXIST + // + // MessageText: + // + // DNS name does not exist. + // + int DNS_ERROR_NAME_DOES_NOT_EXIST = 9714; + // DNS_WARNING_PTR_CREATE_FAILED=0x000025f3 + // + // MessageId: DNS_WARNING_PTR_CREATE_FAILED + // + // MessageText: + // + // Could not create pointer (PTR) record. + // + int DNS_WARNING_PTR_CREATE_FAILED = 9715; + // DNS_WARNING_DOMAIN_UNDELETED=0x000025f4 + // + // MessageId: DNS_WARNING_DOMAIN_UNDELETED + // + // MessageText: + // + // DNS domain was undeleted. + // + int DNS_WARNING_DOMAIN_UNDELETED = 9716; + // DNS_ERROR_DS_UNAVAILABLE=0x000025f5 + // + // MessageId: DNS_ERROR_DS_UNAVAILABLE + // + // MessageText: + // + // The directory service is unavailable. + // + int DNS_ERROR_DS_UNAVAILABLE = 9717; + // DNS_ERROR_DS_ZONE_ALREADY_EXISTS 0x000025f6 + // + // MessageId: DNS_ERROR_DS_ZONE_ALREADY_EXISTS + // + // MessageText: + // + // DNS zone already exists in the directory service. + // + int DNS_ERROR_DS_ZONE_ALREADY_EXISTS = 9718; + // DNS_ERROR_NO_BOOTFILE_IF_DS_ZONE 0x000025f7 + // + // MessageId: DNS_ERROR_NO_BOOTFILE_IF_DS_ZONE + // + // MessageText: + // + // DNS server not creating or reading the boot file for the directory + // service integrated DNS zone. + // + int DNS_ERROR_NO_BOOTFILE_IF_DS_ZONE = 9719; + // DNS_ERROR_NODE_IS_DNAME=0x000025f8 + // + // MessageId: DNS_ERROR_NODE_IS_DNAME + // + // MessageText: + // + // Node is a DNAME DNS record. + // + int DNS_ERROR_NODE_IS_DNAME = 9720; + // DNS_ERROR_DNAME_COLLISION=0x000025f9 + // + // MessageId: DNS_ERROR_DNAME_COLLISION + // + // MessageText: + // + // A DNAME record already exists for given name. + // + int DNS_ERROR_DNAME_COLLISION = 9721; + // DNS_ERROR_ALIAS_LOOP=0x000025fa + // + // MessageId: DNS_ERROR_ALIAS_LOOP + // + // MessageText: + // + // An alias loop has been detected with either CNAME or DNAME records. + // + int DNS_ERROR_ALIAS_LOOP = 9722; + // + // Operation errors + // + int DNS_ERROR_OPERATION_BASE = 9750; + // DNS_INFO_AXFR_COMPLETE=0x00002617 + // + // MessageId: DNS_INFO_AXFR_COMPLETE + // + // MessageText: + // + // DNS AXFR (zone transfer) complete. + // + int DNS_INFO_AXFR_COMPLETE = 9751; + // DNS_ERROR_AXFR=0x00002618 + // + // MessageId: DNS_ERROR_AXFR + // + // MessageText: + // + // DNS zone transfer failed. + // + int DNS_ERROR_AXFR = 9752; + // DNS_INFO_ADDED_LOCAL_WINS=0x00002619 + // + // MessageId: DNS_INFO_ADDED_LOCAL_WINS + // + // MessageText: + // + // Added local WINS server. + // + int DNS_INFO_ADDED_LOCAL_WINS = 9753; + // + // Secure update + // + int DNS_ERROR_SECURE_BASE = 9800; + // DNS_STATUS_CONTINUE_NEEDED=0x00002649 + // + // MessageId: DNS_STATUS_CONTINUE_NEEDED + // + // MessageText: + // + // Secure update call needs to continue update request. + // + int DNS_STATUS_CONTINUE_NEEDED = 9801; + // + // Setup errors + // + int DNS_ERROR_SETUP_BASE = 9850; + // DNS_ERROR_NO_TCPIP=0x0000267b + // + // MessageId: DNS_ERROR_NO_TCPIP + // + // MessageText: + // + // TCP/IP network protocol not installed. + // + int DNS_ERROR_NO_TCPIP = 9851; + // DNS_ERROR_NO_DNS_SERVERS=0x0000267c + // + // MessageId: DNS_ERROR_NO_DNS_SERVERS + // + // MessageText: + // + // No DNS servers configured for local system. + // + int DNS_ERROR_NO_DNS_SERVERS = 9852; + // + // Directory partition (DP) errors + // + int DNS_ERROR_DP_BASE = 9900; + // DNS_ERROR_DP_DOES_NOT_EXIST=0x000026ad + // + // MessageId: DNS_ERROR_DP_DOES_NOT_EXIST + // + // MessageText: + // + // The specified directory partition does not exist. + // + int DNS_ERROR_DP_DOES_NOT_EXIST = 9901; + // DNS_ERROR_DP_ALREADY_EXISTS=0x000026ae + // + // MessageId: DNS_ERROR_DP_ALREADY_EXISTS + // + // MessageText: + // + // The specified directory partition already exists. + // + int DNS_ERROR_DP_ALREADY_EXISTS = 9902; + // DNS_ERROR_DP_NOT_ENLISTED=0x000026af + // + // MessageId: DNS_ERROR_DP_NOT_ENLISTED + // + // MessageText: + // + // This DNS server is not enlisted in the specified directory partition. + // + int DNS_ERROR_DP_NOT_ENLISTED = 9903; + // DNS_ERROR_DP_ALREADY_ENLISTED=0x000026b0 + // + // MessageId: DNS_ERROR_DP_ALREADY_ENLISTED + // + // MessageText: + // + // This DNS server is already enlisted in the specified directory partition. + // + int DNS_ERROR_DP_ALREADY_ENLISTED = 9904; + // DNS_ERROR_DP_NOT_AVAILABLE=0x000026b1 + // + // MessageId: DNS_ERROR_DP_NOT_AVAILABLE + // + // MessageText: + // + // The directory partition is not available at this time. Please wait a few + // minutes and try again. + // + int DNS_ERROR_DP_NOT_AVAILABLE = 9905; + // DNS_ERROR_DP_FSMO_ERROR=0x000026b2 + // + // MessageId: DNS_ERROR_DP_FSMO_ERROR + // + // MessageText: + // + // The application directory partition operation failed. The domain + // controller holding the domain naming master role is down or unable to + // service the request or is not running Windows Server=2003. + // + int DNS_ERROR_DP_FSMO_ERROR = 9906; + // ///////////////////////////////////////////////// + // =// + // =End of DNS Error Codes=// + // =// + // =9000 to=9999=// + // ///////////////////////////////////////////////// + // ///////////////////////////////////////////////// + // =// + // =WinSock Error Codes=// + // =// + // =10000 to=11999=// + // ///////////////////////////////////////////////// + // + // WinSock error codes are also defined in WinSock.h + // and WinSock2.h, hence the IFDEF + // + int WSABASEERR = 10000; + // + // MessageId: WSAEINTR + // + // MessageText: + // + // A blocking operation was interrupted by a call to WSACancelBlockingCall. + // + int WSAEINTR = 10004; + // + // MessageId: WSAEBADF + // + // MessageText: + // + // The file handle supplied is not valid. + // + int WSAEBADF = 10009; + // + // MessageId: WSAEACCES + // + // MessageText: + // + // An attempt was made to access a socket in a way forbidden by its access + // permissions. + // + int WSAEACCES = 10013; + // + // MessageId: WSAEFAULT + // + // MessageText: + // + // The system detected an invalid pointer address in attempting to use a + // pointer argument in a call. + // + int WSAEFAULT = 10014; + // + // MessageId: WSAEINVAL + // + // MessageText: + // + // An invalid argument was supplied. + // + int WSAEINVAL = 10022; + // + // MessageId: WSAEMFILE + // + // MessageText: + // + // Too many open sockets. + // + int WSAEMFILE = 10024; + // + // MessageId: WSAEWOULDBLOCK + // + // MessageText: + // + // A non-blocking socket operation could not be completed immediately. + // + int WSAEWOULDBLOCK = 10035; + // + // MessageId: WSAEINPROGRESS + // + // MessageText: + // + // A blocking operation is currently executing. + // + int WSAEINPROGRESS = 10036; + // + // MessageId: WSAEALREADY + // + // MessageText: + // + // An operation was attempted on a non-blocking socket that already had an + // operation in progress. + // + int WSAEALREADY = 10037; + // + // MessageId: WSAENOTSOCK + // + // MessageText: + // + // An operation was attempted on something that is not a socket. + // + int WSAENOTSOCK = 10038; + // + // MessageId: WSAEDESTADDRREQ + // + // MessageText: + // + // A required address was omitted from an operation on a socket. + // + int WSAEDESTADDRREQ = 10039; + // + // MessageId: WSAEMSGSIZE + // + // MessageText: + // + // A message sent on a datagram socket was larger than the internal message + // buffer or some other network limit, or the buffer used to receive a + // datagram into was smaller than the datagram itself. + // + int WSAEMSGSIZE = 10040; + // + // MessageId: WSAEPROTOTYPE + // + // MessageText: + // + // A protocol was specified in the socket function call that does not + // support the semantics of the socket type requested. + // + int WSAEPROTOTYPE = 10041; + // + // MessageId: WSAENOPROTOOPT + // + // MessageText: + // + // An unknown, invalid, or unsupported option or level was specified in a + // getsockopt or setsockopt call. + // + int WSAENOPROTOOPT = 10042; + // + // MessageId: WSAEPROTONOSUPPORT + // + // MessageText: + // + // The requested protocol has not been configured into the system, or no + // implementation for it exists. + // + int WSAEPROTONOSUPPORT = 10043; + // + // MessageId: WSAESOCKTNOSUPPORT + // + // MessageText: + // + // The support for the specified socket type does not exist in this address + // family. + // + int WSAESOCKTNOSUPPORT = 10044; + // + // MessageId: WSAEOPNOTSUPP + // + // MessageText: + // + // The attempted operation is not supported for the type of object + // referenced. + // + int WSAEOPNOTSUPP = 10045; + // + // MessageId: WSAEPFNOSUPPORT + // + // MessageText: + // + // The protocol family has not been configured into the system or no + // implementation for it exists. + // + int WSAEPFNOSUPPORT = 10046; + // + // MessageId: WSAEAFNOSUPPORT + // + // MessageText: + // + // An address incompatible with the requested protocol was used. + // + int WSAEAFNOSUPPORT = 10047; + // + // MessageId: WSAEADDRINUSE + // + // MessageText: + // + // Only one usage of each socket address (protocol/network address/port) is + // normally permitted. + // + int WSAEADDRINUSE = 10048; + // + // MessageId: WSAEADDRNOTAVAIL + // + // MessageText: + // + // The requested address is not valid in its context. + // + int WSAEADDRNOTAVAIL = 10049; + // + // MessageId: WSAENETDOWN + // + // MessageText: + // + // A socket operation encountered a dead network. + // + int WSAENETDOWN = 10050; + // + // MessageId: WSAENETUNREACH + // + // MessageText: + // + // A socket operation was attempted to an unreachable network. + // + int WSAENETUNREACH = 10051; + // + // MessageId: WSAENETRESET + // + // MessageText: + // + // The connection has been broken due to keep-alive activity detecting a + // failure while the operation was in progress. + // + int WSAENETRESET = 10052; + // + // MessageId: WSAECONNABORTED + // + // MessageText: + // + // An established connection was aborted by the software in your host + // machine. + // + int WSAECONNABORTED = 10053; + // + // MessageId: WSAECONNRESET + // + // MessageText: + // + // An existing connection was forcibly closed by the remote host. + // + int WSAECONNRESET = 10054; + // + // MessageId: WSAENOBUFS + // + // MessageText: + // + // An operation on a socket could not be performed because the system lacked + // sufficient buffer space or because a queue was full. + // + int WSAENOBUFS = 10055; + // + // MessageId: WSAEISCONN + // + // MessageText: + // + // A connect request was made on an already connected socket. + // + int WSAEISCONN = 10056; + // + // MessageId: WSAENOTCONN + // + // MessageText: + // + // A request to send or receive data was disallowed because the socket is + // not connected and (when sending on a datagram socket using a sendto cal; + // no address was supplied. + // + int WSAENOTCONN = 10057; + // + // MessageId: WSAESHUTDOWN + // + // MessageText: + // + // A request to send or receive data was disallowed because the socket had + // already been shut down in that direction with a previous shutdown call. + // + int WSAESHUTDOWN = 10058; + // + // MessageId: WSAETOOMANYREFS + // + // MessageText: + // + // Too many references to some kernel object. + // + int WSAETOOMANYREFS = 10059; + // + // MessageId: WSAETIMEDOUT + // + // MessageText: + // + // A connection attempt failed because the connected party did not properly + // respond after a period of time, or established connection failed because + // connected host has failed to respond. + // + int WSAETIMEDOUT = 10060; + // + // MessageId: WSAECONNREFUSED + // + // MessageText: + // + // No connection could be made because the target machine actively refused + // it. + // + int WSAECONNREFUSED = 10061; + // + // MessageId: WSAELOOP + // + // MessageText: + // + // Cannot translate name. + // + int WSAELOOP = 10062; + // + // MessageId: WSAENAMETOOLONG + // + // MessageText: + // + // Name component or name was too long. + // + int WSAENAMETOOLONG = 10063; + // + // MessageId: WSAEHOSTDOWN + // + // MessageText: + // + // A socket operation failed because the destination host was down. + // + int WSAEHOSTDOWN = 10064; + // + // MessageId: WSAEHOSTUNREACH + // + // MessageText: + // + // A socket operation was attempted to an unreachable host. + // + int WSAEHOSTUNREACH = 10065; + // + // MessageId: WSAENOTEMPTY + // + // MessageText: + // + // Cannot remove a directory that is not empty. + // + int WSAENOTEMPTY = 10066; + // + // MessageId: WSAEPROCLIM + // + // MessageText: + // + // A Windows Sockets implementation may have a limit on the number of + // applications that may use it simultaneously. + // + int WSAEPROCLIM = 10067; + // + // MessageId: WSAEUSERS + // + // MessageText: + // + // Ran out of quota. + // + int WSAEUSERS = 10068; + // + // MessageId: WSAEDQUOT + // + // MessageText: + // + // Ran out of disk quota. + // + int WSAEDQUOT = 10069; + // + // MessageId: WSAESTALE + // + // MessageText: + // + // File handle reference is no longer available. + // + int WSAESTALE = 10070; + // + // MessageId: WSAEREMOTE + // + // MessageText: + // + // Item is not available locally. + // + int WSAEREMOTE = 10071; + // + // MessageId: WSASYSNOTREADY + // + // MessageText: + // + // WSAStartup cannot function at this time because the underlying system it + // uses to provide network services is currently unavailable. + // + int WSASYSNOTREADY = 10091; + // + // MessageId: WSAVERNOTSUPPORTED + // + // MessageText: + // + // The Windows Sockets version requested is not supported. + // + int WSAVERNOTSUPPORTED = 10092; + // + // MessageId: WSANOTINITIALISED + // + // MessageText: + // + // Either the application has not called WSAStartup, or WSAStartup failed. + // + int WSANOTINITIALISED = 10093; + // + // MessageId: WSAEDISCON + // + // MessageText: + // + // Returned by WSARecv or WSARecvFrom to indicate the remote party has + // initiated a graceful shutdown sequence. + // + int WSAEDISCON = 10101; + // + // MessageId: WSAENOMORE + // + // MessageText: + // + // No more results can be returned by WSALookupServiceNext. + // + int WSAENOMORE = 10102; + // + // MessageId: WSAECANCELLED + // + // MessageText: + // + // A call to WSALookupServiceEnd was made while this call was still + // processing. The call has been canceled. + // + int WSAECANCELLED = 10103; + // + // MessageId: WSAEINVALIDPROCTABLE + // + // MessageText: + // + // The procedure call table is invalid. + // + int WSAEINVALIDPROCTABLE = 10104; + // + // MessageId: WSAEINVALIDPROVIDER + // + // MessageText: + // + // The requested service provider is invalid. + // + int WSAEINVALIDPROVIDER = 10105; + // + // MessageId: WSAEPROVIDERFAILEDINIT + // + // MessageText: + // + // The requested service provider could not be loaded or initialized. + // + int WSAEPROVIDERFAILEDINIT = 10106; + // + // MessageId: WSASYSCALLFAILURE + // + // MessageText: + // + // A system call that should never fail has failed. + // + int WSASYSCALLFAILURE = 10107; + // + // MessageId: WSASERVICE_NOT_FOUND + // + // MessageText: + // + // No such service is known. The service cannot be found in the specified + // name space. + // + int WSASERVICE_NOT_FOUND = 10108; + // + // MessageId: WSATYPE_NOT_FOUND + // + // MessageText: + // + // The specified class was not found. + // + int WSATYPE_NOT_FOUND = 10109; + // + // MessageId: WSA_E_NO_MORE + // + // MessageText: + // + // No more results can be returned by WSALookupServiceNext. + // + int WSA_E_NO_MORE = 10110; + // + // MessageId: WSA_E_CANCELLED + // + // MessageText: + // + // A call to WSALookupServiceEnd was made while this call was still + // processing. The call has been canceled. + // + int WSA_E_CANCELLED = 10111; + // + // MessageId: WSAEREFUSED + // + // MessageText: + // + // A database query failed because it was actively refused. + // + int WSAEREFUSED = 10112; + // + // MessageId: WSAHOST_NOT_FOUND + // + // MessageText: + // + // No such host is known. + // + int WSAHOST_NOT_FOUND = 11001; + // + // MessageId: WSATRY_AGAIN + // + // MessageText: + // + // This is usually a temporary error during hostname resolution and means + // that the local server did not receive a response from an authoritative + // server. + // + int WSATRY_AGAIN = 11002; + // + // MessageId: WSANO_RECOVERY + // + // MessageText: + // + // A non-recoverable error occurred during a database lookup. + // + int WSANO_RECOVERY = 11003; + // + // MessageId: WSANO_DATA + // + // MessageText: + // + // The requested name is valid, but no data of the requested type was found. + // + int WSANO_DATA = 11004; + // + // MessageId: WSA_QOS_RECEIVERS + // + // MessageText: + // + // At least one reserve has arrived. + // + int WSA_QOS_RECEIVERS = 11005; + // + // MessageId: WSA_QOS_SENDERS + // + // MessageText: + // + // At least one path has arrived. + // + int WSA_QOS_SENDERS = 11006; + // + // MessageId: WSA_QOS_NO_SENDERS + // + // MessageText: + // + // There are no senders. + // + int WSA_QOS_NO_SENDERS = 11007; + // + // MessageId: WSA_QOS_NO_RECEIVERS + // + // MessageText: + // + // There are no receivers. + // + int WSA_QOS_NO_RECEIVERS = 11008; + // + // MessageId: WSA_QOS_REQUEST_CONFIRMED + // + // MessageText: + // + // Reserve has been confirmed. + // + int WSA_QOS_REQUEST_CONFIRMED = 11009; + // + // MessageId: WSA_QOS_ADMISSION_FAILURE + // + // MessageText: + // + // Error due to lack of resources. + // + int WSA_QOS_ADMISSION_FAILURE = 11010; + // + // MessageId: WSA_QOS_POLICY_FAILURE + // + // MessageText: + // + // Rejected for administrative reasons - bad credentials. + // + int WSA_QOS_POLICY_FAILURE = 11011; + // + // MessageId: WSA_QOS_BAD_STYLE + // + // MessageText: + // + // Unknown or conflicting style. + // + int WSA_QOS_BAD_STYLE = 11012; + // + // MessageId: WSA_QOS_BAD_OBJECT + // + // MessageText: + // + // Problem with some part of the filterspec or providerspecific buffer in + // general. + // + int WSA_QOS_BAD_OBJECT = 11013; + // + // MessageId: WSA_QOS_TRAFFIC_CTRL_ERROR + // + // MessageText: + // + // Problem with some part of the flowspec. + // + int WSA_QOS_TRAFFIC_CTRL_ERROR = 11014; + // + // MessageId: WSA_QOS_GENERIC_ERROR + // + // MessageText: + // + // General QOS error. + // + int WSA_QOS_GENERIC_ERROR = 11015; + // + // MessageId: WSA_QOS_ESERVICETYPE + // + // MessageText: + // + // An invalid or unrecognized service type was found in the flowspec. + // + int WSA_QOS_ESERVICETYPE = 11016; + // + // MessageId: WSA_QOS_EFLOWSPEC + // + // MessageText: + // + // An invalid or inconsistent flowspec was found in the QOS structure. + // + int WSA_QOS_EFLOWSPEC = 11017; + // + // MessageId: WSA_QOS_EPROVSPECBUF + // + // MessageText: + // + // Invalid QOS provider-specific buffer. + // + int WSA_QOS_EPROVSPECBUF = 11018; + // + // MessageId: WSA_QOS_EFILTERSTYLE + // + // MessageText: + // + // An invalid QOS filter style was used. + // + int WSA_QOS_EFILTERSTYLE = 11019; + // + // MessageId: WSA_QOS_EFILTERTYPE + // + // MessageText: + // + // An invalid QOS filter type was used. + // + int WSA_QOS_EFILTERTYPE = 11020; + // + // MessageId: WSA_QOS_EFILTERCOUNT + // + // MessageText: + // + // An incorrect number of QOS FILTERSPECs were specified in the + // FLOWDESCRIPTOR. + // + int WSA_QOS_EFILTERCOUNT = 11021; + // + // MessageId: WSA_QOS_EOBJLENGTH + // + // MessageText: + // + // An object with an invalid ObjectLength field was specified in the QOS + // provider-specific buffer. + // + int WSA_QOS_EOBJLENGTH = 11022; + // + // MessageId: WSA_QOS_EFLOWCOUNT + // + // MessageText: + // + // An incorrect number of flow descriptors was specified in the QOS + // structure. + // + int WSA_QOS_EFLOWCOUNT = 11023; + // + // MessageId: WSA_QOS_EUNKOWNPSOBJ + // + // MessageText: + // + // An unrecognized object was found in the QOS provider-specific buffer. + // + int WSA_QOS_EUNKOWNPSOBJ = 11024; + // + // MessageId: WSA_QOS_EPOLICYOBJ + // + // MessageText: + // + // An invalid policy object was found in the QOS provider-specific buffer. + // + int WSA_QOS_EPOLICYOBJ = 11025; + // + // MessageId: WSA_QOS_EFLOWDESC + // + // MessageText: + // + // An invalid QOS flow descriptor was found in the flow descriptor list. + // + int WSA_QOS_EFLOWDESC = 11026; + // + // MessageId: WSA_QOS_EPSFLOWSPEC + // + // MessageText: + // + // An invalid or inconsistent flowspec was found in the QOS provider + // specific buffer. + // + int WSA_QOS_EPSFLOWSPEC = 11027; + // + // MessageId: WSA_QOS_EPSFILTERSPEC + // + // MessageText: + // + // An invalid FILTERSPEC was found in the QOS provider-specific buffer. + // + int WSA_QOS_EPSFILTERSPEC = 11028; + // + // MessageId: WSA_QOS_ESDMODEOBJ + // + // MessageText: + // + // An invalid shape discard mode object was found in the QOS provider + // specific buffer. + // + int WSA_QOS_ESDMODEOBJ = 11029; + // + // MessageId: WSA_QOS_ESHAPERATEOBJ + // + // MessageText: + // + // An invalid shaping rate object was found in the QOS provider-specific + // buffer. + // + int WSA_QOS_ESHAPERATEOBJ = 11030; + // + // MessageId: WSA_QOS_RESERVED_PETYPE + // + // MessageText: + // + // A reserved policy element was found in the QOS provider-specific buffer. + // + int WSA_QOS_RESERVED_PETYPE = 11031; + // ///////////////////////////////////////////////// + // =End of WinSock Error Codes=// + // =// + // =10000 to=11999=// + // ///////////////////////////////////////////////// + // ///////////////////////////////////////////////// + // =// + // =Available=// + // =// + // =12000 to=129999=// + // ///////////////////////////////////////////////// + // ///////////////////////////////////////////////// + // =// + // =Start of IPSec Error codes=// + // =// + // =13000 to=13999=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_IPSEC_QM_POLICY_EXISTS + // + // MessageText: + // + // The specified quick mode policy already exists. + // + int ERROR_IPSEC_QM_POLICY_EXISTS = 13000; + // + // MessageId: ERROR_IPSEC_QM_POLICY_NOT_FOUND + // + // MessageText: + // + // The specified quick mode policy was not found. + // + int ERROR_IPSEC_QM_POLICY_NOT_FOUND = 13001; + // + // MessageId: ERROR_IPSEC_QM_POLICY_IN_USE + // + // MessageText: + // + // The specified quick mode policy is being used. + // + int ERROR_IPSEC_QM_POLICY_IN_USE = 13002; + // + // MessageId: ERROR_IPSEC_MM_POLICY_EXISTS + // + // MessageText: + // + // The specified main mode policy already exists. + // + int ERROR_IPSEC_MM_POLICY_EXISTS = 13003; + // + // MessageId: ERROR_IPSEC_MM_POLICY_NOT_FOUND + // + // MessageText: + // + // The specified main mode policy was not found + // + int ERROR_IPSEC_MM_POLICY_NOT_FOUND = 13004; + // + // MessageId: ERROR_IPSEC_MM_POLICY_IN_USE + // + // MessageText: + // + // The specified main mode policy is being used. + // + int ERROR_IPSEC_MM_POLICY_IN_USE = 13005; + // + // MessageId: ERROR_IPSEC_MM_FILTER_EXISTS + // + // MessageText: + // + // The specified main mode filter already exists. + // + int ERROR_IPSEC_MM_FILTER_EXISTS = 13006; + // + // MessageId: ERROR_IPSEC_MM_FILTER_NOT_FOUND + // + // MessageText: + // + // The specified main mode filter was not found. + // + int ERROR_IPSEC_MM_FILTER_NOT_FOUND = 13007; + // + // MessageId: ERROR_IPSEC_TRANSPORT_FILTER_EXISTS + // + // MessageText: + // + // The specified transport mode filter already exists. + // + int ERROR_IPSEC_TRANSPORT_FILTER_EXISTS = 13008; + // + // MessageId: ERROR_IPSEC_TRANSPORT_FILTER_NOT_FOUND + // + // MessageText: + // + // The specified transport mode filter does not exist. + // + int ERROR_IPSEC_TRANSPORT_FILTER_NOT_FOUND = 13009; + // + // MessageId: ERROR_IPSEC_MM_AUTH_EXISTS + // + // MessageText: + // + // The specified main mode authentication list exists. + // + int ERROR_IPSEC_MM_AUTH_EXISTS = 13010; + // + // MessageId: ERROR_IPSEC_MM_AUTH_NOT_FOUND + // + // MessageText: + // + // The specified main mode authentication list was not found. + // + int ERROR_IPSEC_MM_AUTH_NOT_FOUND = 13011; + // + // MessageId: ERROR_IPSEC_MM_AUTH_IN_USE + // + // MessageText: + // + // The specified main mode authentication list is being used. + // + int ERROR_IPSEC_MM_AUTH_IN_USE = 13012; + // + // MessageId: ERROR_IPSEC_DEFAULT_MM_POLICY_NOT_FOUND + // + // MessageText: + // + // The specified default main mode policy was not found. + // + int ERROR_IPSEC_DEFAULT_MM_POLICY_NOT_FOUND = 13013; + // + // MessageId: ERROR_IPSEC_DEFAULT_MM_AUTH_NOT_FOUND + // + // MessageText: + // + // The specified default main mode authentication list was not found. + // + int ERROR_IPSEC_DEFAULT_MM_AUTH_NOT_FOUND = 13014; + // + // MessageId: ERROR_IPSEC_DEFAULT_QM_POLICY_NOT_FOUND + // + // MessageText: + // + // The specified default quick mode policy was not found. + // + int ERROR_IPSEC_DEFAULT_QM_POLICY_NOT_FOUND = 13015; + // + // MessageId: ERROR_IPSEC_TUNNEL_FILTER_EXISTS + // + // MessageText: + // + // The specified tunnel mode filter exists. + // + int ERROR_IPSEC_TUNNEL_FILTER_EXISTS = 13016; + // + // MessageId: ERROR_IPSEC_TUNNEL_FILTER_NOT_FOUND + // + // MessageText: + // + // The specified tunnel mode filter was not found. + // + int ERROR_IPSEC_TUNNEL_FILTER_NOT_FOUND = 13017; + // + // MessageId: ERROR_IPSEC_MM_FILTER_PENDING_DELETION + // + // MessageText: + // + // The Main Mode filter is pending deletion. + // + int ERROR_IPSEC_MM_FILTER_PENDING_DELETION = 13018; + // + // MessageId: ERROR_IPSEC_TRANSPORT_FILTER_PENDING_DELETION + // + // MessageText: + // + // The transport filter is pending deletion. + // + int ERROR_IPSEC_TRANSPORT_FILTER_PENDING_DELETION = 13019; + // + // MessageId: ERROR_IPSEC_TUNNEL_FILTER_PENDING_DELETION + // + // MessageText: + // + // The tunnel filter is pending deletion. + // + int ERROR_IPSEC_TUNNEL_FILTER_PENDING_DELETION = 13020; + // + // MessageId: ERROR_IPSEC_MM_POLICY_PENDING_DELETION + // + // MessageText: + // + // The Main Mode policy is pending deletion. + // + int ERROR_IPSEC_MM_POLICY_PENDING_DELETION = 13021; + // + // MessageId: ERROR_IPSEC_MM_AUTH_PENDING_DELETION + // + // MessageText: + // + // The Main Mode authentication bundle is pending deletion. + // + int ERROR_IPSEC_MM_AUTH_PENDING_DELETION = 13022; + // + // MessageId: ERROR_IPSEC_QM_POLICY_PENDING_DELETION + // + // MessageText: + // + // The Quick Mode policy is pending deletion. + // + int ERROR_IPSEC_QM_POLICY_PENDING_DELETION = 13023; + // + // MessageId: WARNING_IPSEC_MM_POLICY_PRUNED + // + // MessageText: + // + // The Main Mode policy was successfully added, but some of the requested + // offers are not supported. + // + int WARNING_IPSEC_MM_POLICY_PRUNED = 13024; + // + // MessageId: WARNING_IPSEC_QM_POLICY_PRUNED + // + // MessageText: + // + // The Quick Mode policy was successfully added, but some of the requested + // offers are not supported. + // + int WARNING_IPSEC_QM_POLICY_PRUNED = 13025; + // + // MessageId: ERROR_IPSEC_IKE_NEG_STATUS_BEGIN + // + // MessageText: + // + // ERROR_IPSEC_IKE_NEG_STATUS_BEGIN + // + int ERROR_IPSEC_IKE_NEG_STATUS_BEGIN = 13800; + // + // MessageId: ERROR_IPSEC_IKE_AUTH_FAIL + // + // MessageText: + // + // IKE authentication credentials are unacceptable + // + int ERROR_IPSEC_IKE_AUTH_FAIL = 13801; + // + // MessageId: ERROR_IPSEC_IKE_ATTRIB_FAIL + // + // MessageText: + // + // IKE security attributes are unacceptable + // + int ERROR_IPSEC_IKE_ATTRIB_FAIL = 13802; + // + // MessageId: ERROR_IPSEC_IKE_NEGOTIATION_PENDING + // + // MessageText: + // + // IKE Negotiation in progress + // + int ERROR_IPSEC_IKE_NEGOTIATION_PENDING = 13803; + // + // MessageId: ERROR_IPSEC_IKE_GENERAL_PROCESSING_ERROR + // + // MessageText: + // + // General processing error + // + int ERROR_IPSEC_IKE_GENERAL_PROCESSING_ERROR = 13804; + // + // MessageId: ERROR_IPSEC_IKE_TIMED_OUT + // + // MessageText: + // + // Negotiation timed out + // + int ERROR_IPSEC_IKE_TIMED_OUT = 13805; + // + // MessageId: ERROR_IPSEC_IKE_NO_CERT + // + // MessageText: + // + // IKE failed to find valid machine certificate. Contact your Network + // Security Administrator about installing a valid certificate in the + // appropriate Certificate Store. + // + int ERROR_IPSEC_IKE_NO_CERT = 13806; + // + // MessageId: ERROR_IPSEC_IKE_SA_DELETED + // + // MessageText: + // + // IKE SA deleted by peer before establishment completed + // + int ERROR_IPSEC_IKE_SA_DELETED = 13807; + // + // MessageId: ERROR_IPSEC_IKE_SA_REAPED + // + // MessageText: + // + // IKE SA deleted before establishment completed + // + int ERROR_IPSEC_IKE_SA_REAPED = 13808; + // + // MessageId: ERROR_IPSEC_IKE_MM_ACQUIRE_DROP + // + // MessageText: + // + // Negotiation request sat in Queue too long + // + int ERROR_IPSEC_IKE_MM_ACQUIRE_DROP = 13809; + // + // MessageId: ERROR_IPSEC_IKE_QM_ACQUIRE_DROP + // + // MessageText: + // + // Negotiation request sat in Queue too long + // + int ERROR_IPSEC_IKE_QM_ACQUIRE_DROP = 13810; + // + // MessageId: ERROR_IPSEC_IKE_QUEUE_DROP_MM + // + // MessageText: + // + // Negotiation request sat in Queue too long + // + int ERROR_IPSEC_IKE_QUEUE_DROP_MM = 13811; + // + // MessageId: ERROR_IPSEC_IKE_QUEUE_DROP_NO_MM + // + // MessageText: + // + // Negotiation request sat in Queue too long + // + int ERROR_IPSEC_IKE_QUEUE_DROP_NO_MM = 13812; + // + // MessageId: ERROR_IPSEC_IKE_DROP_NO_RESPONSE + // + // MessageText: + // + // No response from peer + // + int ERROR_IPSEC_IKE_DROP_NO_RESPONSE = 13813; + // + // MessageId: ERROR_IPSEC_IKE_MM_DELAY_DROP + // + // MessageText: + // + // Negotiation took too long + // + int ERROR_IPSEC_IKE_MM_DELAY_DROP = 13814; + // + // MessageId: ERROR_IPSEC_IKE_QM_DELAY_DROP + // + // MessageText: + // + // Negotiation took too long + // + int ERROR_IPSEC_IKE_QM_DELAY_DROP = 13815; + // + // MessageId: ERROR_IPSEC_IKE_ERROR + // + // MessageText: + // + // Unknown error occurred + // + int ERROR_IPSEC_IKE_ERROR = 13816; + // + // MessageId: ERROR_IPSEC_IKE_CRL_FAILED + // + // MessageText: + // + // Certificate Revocation Check failed + // + int ERROR_IPSEC_IKE_CRL_FAILED = 13817; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_KEY_USAGE + // + // MessageText: + // + // Invalid certificate key usage + // + int ERROR_IPSEC_IKE_INVALID_KEY_USAGE = 13818; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_CERT_TYPE + // + // MessageText: + // + // Invalid certificate type + // + int ERROR_IPSEC_IKE_INVALID_CERT_TYPE = 13819; + // + // MessageId: ERROR_IPSEC_IKE_NO_PRIVATE_KEY + // + // MessageText: + // + // IKE negotiation failed because the machine certificate used does not have + // a private key. IPsec certificates require a private key. Contact your + // Network Security administrator about replacing with a certificate that + // has a private key. + // + int ERROR_IPSEC_IKE_NO_PRIVATE_KEY = 13820; + // + // MessageId: ERROR_IPSEC_IKE_DH_FAIL + // + // MessageText: + // + // Failure in Diffie-Helman computation + // + int ERROR_IPSEC_IKE_DH_FAIL = 13822; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_HEADER + // + // MessageText: + // + // Invalid header + // + int ERROR_IPSEC_IKE_INVALID_HEADER = 13824; + // + // MessageId: ERROR_IPSEC_IKE_NO_POLICY + // + // MessageText: + // + // No policy configured + // + int ERROR_IPSEC_IKE_NO_POLICY = 13825; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_SIGNATURE + // + // MessageText: + // + // Failed to verify signature + // + int ERROR_IPSEC_IKE_INVALID_SIGNATURE = 13826; + // + // MessageId: ERROR_IPSEC_IKE_KERBEROS_ERROR + // + // MessageText: + // + // Failed to authenticate using kerberos + // + int ERROR_IPSEC_IKE_KERBEROS_ERROR = 13827; + // + // MessageId: ERROR_IPSEC_IKE_NO_PUBLIC_KEY + // + // MessageText: + // + // Peer's certificate did not have a public key + // + int ERROR_IPSEC_IKE_NO_PUBLIC_KEY = 13828; + // These must stay as a unit. + // + // MessageId: ERROR_IPSEC_IKE_PROCESS_ERR + // + // MessageText: + // + // Error processing error payload + // + int ERROR_IPSEC_IKE_PROCESS_ERR = 13829; + // + // MessageId: ERROR_IPSEC_IKE_PROCESS_ERR_SA + // + // MessageText: + // + // Error processing SA payload + // + int ERROR_IPSEC_IKE_PROCESS_ERR_SA = 13830; + // + // MessageId: ERROR_IPSEC_IKE_PROCESS_ERR_PROP + // + // MessageText: + // + // Error processing Proposal payload + // + int ERROR_IPSEC_IKE_PROCESS_ERR_PROP = 13831; + // + // MessageId: ERROR_IPSEC_IKE_PROCESS_ERR_TRANS + // + // MessageText: + // + // Error processing Transform payload + // + int ERROR_IPSEC_IKE_PROCESS_ERR_TRANS = 13832; + // + // MessageId: ERROR_IPSEC_IKE_PROCESS_ERR_KE + // + // MessageText: + // + // Error processing KE payload + // + int ERROR_IPSEC_IKE_PROCESS_ERR_KE = 13833; + // + // MessageId: ERROR_IPSEC_IKE_PROCESS_ERR_ID + // + // MessageText: + // + // Error processing ID payload + // + int ERROR_IPSEC_IKE_PROCESS_ERR_ID = 13834; + // + // MessageId: ERROR_IPSEC_IKE_PROCESS_ERR_CERT + // + // MessageText: + // + // Error processing Cert payload + // + int ERROR_IPSEC_IKE_PROCESS_ERR_CERT = 13835; + // + // MessageId: ERROR_IPSEC_IKE_PROCESS_ERR_CERT_REQ + // + // MessageText: + // + // Error processing Certificate Request payload + // + int ERROR_IPSEC_IKE_PROCESS_ERR_CERT_REQ = 13836; + // + // MessageId: ERROR_IPSEC_IKE_PROCESS_ERR_HASH + // + // MessageText: + // + // Error processing Hash payload + // + int ERROR_IPSEC_IKE_PROCESS_ERR_HASH = 13837; + // + // MessageId: ERROR_IPSEC_IKE_PROCESS_ERR_SIG + // + // MessageText: + // + // Error processing Signature payload + // + int ERROR_IPSEC_IKE_PROCESS_ERR_SIG = 13838; + // + // MessageId: ERROR_IPSEC_IKE_PROCESS_ERR_NONCE + // + // MessageText: + // + // Error processing Nonce payload + // + int ERROR_IPSEC_IKE_PROCESS_ERR_NONCE = 13839; + // + // MessageId: ERROR_IPSEC_IKE_PROCESS_ERR_NOTIFY + // + // MessageText: + // + // Error processing Notify payload + // + int ERROR_IPSEC_IKE_PROCESS_ERR_NOTIFY = 13840; + // + // MessageId: ERROR_IPSEC_IKE_PROCESS_ERR_DELETE + // + // MessageText: + // + // Error processing Delete Payload + // + int ERROR_IPSEC_IKE_PROCESS_ERR_DELETE = 13841; + // + // MessageId: ERROR_IPSEC_IKE_PROCESS_ERR_VENDOR + // + // MessageText: + // + // Error processing VendorId payload + // + int ERROR_IPSEC_IKE_PROCESS_ERR_VENDOR = 13842; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_PAYLOAD + // + // MessageText: + // + // Invalid payload received + // + int ERROR_IPSEC_IKE_INVALID_PAYLOAD = 13843; + // + // MessageId: ERROR_IPSEC_IKE_LOAD_SOFT_SA + // + // MessageText: + // + // Soft SA loaded + // + int ERROR_IPSEC_IKE_LOAD_SOFT_SA = 13844; + // + // MessageId: ERROR_IPSEC_IKE_SOFT_SA_TORN_DOWN + // + // MessageText: + // + // Soft SA torn down + // + int ERROR_IPSEC_IKE_SOFT_SA_TORN_DOWN = 13845; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_COOKIE + // + // MessageText: + // + // Invalid cookie received. + // + int ERROR_IPSEC_IKE_INVALID_COOKIE = 13846; + // + // MessageId: ERROR_IPSEC_IKE_NO_PEER_CERT + // + // MessageText: + // + // Peer failed to send valid machine certificate + // + int ERROR_IPSEC_IKE_NO_PEER_CERT = 13847; + // + // MessageId: ERROR_IPSEC_IKE_PEER_CRL_FAILED + // + // MessageText: + // + // Certification Revocation check of peer's certificate failed + // + int ERROR_IPSEC_IKE_PEER_CRL_FAILED = 13848; + // + // MessageId: ERROR_IPSEC_IKE_POLICY_CHANGE + // + // MessageText: + // + // New policy invalidated SAs formed with old policy + // + int ERROR_IPSEC_IKE_POLICY_CHANGE = 13849; + // + // MessageId: ERROR_IPSEC_IKE_NO_MM_POLICY + // + // MessageText: + // + // There is no available Main Mode IKE policy. + // + int ERROR_IPSEC_IKE_NO_MM_POLICY = 13850; + // + // MessageId: ERROR_IPSEC_IKE_NOTCBPRIV + // + // MessageText: + // + // Failed to enabled TCB privilege. + // + int ERROR_IPSEC_IKE_NOTCBPRIV = 13851; + // + // MessageId: ERROR_IPSEC_IKE_SECLOADFAIL + // + // MessageText: + // + // Failed to load SECURITY.DLL. + // + int ERROR_IPSEC_IKE_SECLOADFAIL = 13852; + // + // MessageId: ERROR_IPSEC_IKE_FAILSSPINIT + // + // MessageText: + // + // Failed to obtain security function table dispatch address from SSPI. + // + int ERROR_IPSEC_IKE_FAILSSPINIT = 13853; + // + // MessageId: ERROR_IPSEC_IKE_FAILQUERYSSP + // + // MessageText: + // + // Failed to query Kerberos package to obtain max token size. + // + int ERROR_IPSEC_IKE_FAILQUERYSSP = 13854; + // + // MessageId: ERROR_IPSEC_IKE_SRVACQFAIL + // + // MessageText: + // + // Failed to obtain Kerberos server credentials for ISAKMP/ERROR_IPSEC_IKE + // service. Kerberos authentication will not function. The most likely + // reason for this is lack of domain membership. This is normal if your + // computer is a member of a workgroup. + // + int ERROR_IPSEC_IKE_SRVACQFAIL = 13855; + // + // MessageId: ERROR_IPSEC_IKE_SRVQUERYCRED + // + // MessageText: + // + // Failed to determine SSPI principal name for ISAKMP/ERROR_IPSEC_IKE + // service (QueryCredentialsAttributes). + // + int ERROR_IPSEC_IKE_SRVQUERYCRED = 13856; + // + // MessageId: ERROR_IPSEC_IKE_GETSPIFAIL + // + // MessageText: + // + // Failed to obtain new SPI for the inbound SA from Ipsec driver. The most + // common cause for this is that the driver does not have the correct + // filter. Check your policy to verify the filters. + // + int ERROR_IPSEC_IKE_GETSPIFAIL = 13857; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_FILTER + // + // MessageText: + // + // Given filter is invalid + // + int ERROR_IPSEC_IKE_INVALID_FILTER = 13858; + // + // MessageId: ERROR_IPSEC_IKE_OUT_OF_MEMORY + // + // MessageText: + // + // Memory allocation failed. + // + int ERROR_IPSEC_IKE_OUT_OF_MEMORY = 13859; + // + // MessageId: ERROR_IPSEC_IKE_ADD_UPDATE_KEY_FAILED + // + // MessageText: + // + // Failed to add Security Association to IPSec Driver. The most common cause + // for this is if the IKE negotiation took too long to complete. If the + // problem persists, reduce the load on the faulting machine. + // + int ERROR_IPSEC_IKE_ADD_UPDATE_KEY_FAILED = 13860; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_POLICY + // + // MessageText: + // + // Invalid policy + // + int ERROR_IPSEC_IKE_INVALID_POLICY = 13861; + // + // MessageId: ERROR_IPSEC_IKE_UNKNOWN_DOI + // + // MessageText: + // + // Invalid DOI + // + int ERROR_IPSEC_IKE_UNKNOWN_DOI = 13862; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_SITUATION + // + // MessageText: + // + // Invalid situation + // + int ERROR_IPSEC_IKE_INVALID_SITUATION = 13863; + // + // MessageId: ERROR_IPSEC_IKE_DH_FAILURE + // + // MessageText: + // + // Diffie-Hellman failure + // + int ERROR_IPSEC_IKE_DH_FAILURE = 13864; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_GROUP + // + // MessageText: + // + // Invalid Diffie-Hellman group + // + int ERROR_IPSEC_IKE_INVALID_GROUP = 13865; + // + // MessageId: ERROR_IPSEC_IKE_ENCRYPT + // + // MessageText: + // + // Error encrypting payload + // + int ERROR_IPSEC_IKE_ENCRYPT = 13866; + // + // MessageId: ERROR_IPSEC_IKE_DECRYPT + // + // MessageText: + // + // Error decrypting payload + // + int ERROR_IPSEC_IKE_DECRYPT = 13867; + // + // MessageId: ERROR_IPSEC_IKE_POLICY_MATCH + // + // MessageText: + // + // Policy match error + // + int ERROR_IPSEC_IKE_POLICY_MATCH = 13868; + // + // MessageId: ERROR_IPSEC_IKE_UNSUPPORTED_ID + // + // MessageText: + // + // Unsupported ID + // + int ERROR_IPSEC_IKE_UNSUPPORTED_ID = 13869; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_HASH + // + // MessageText: + // + // Hash verification failed + // + int ERROR_IPSEC_IKE_INVALID_HASH = 13870; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_HASH_ALG + // + // MessageText: + // + // Invalid hash algorithm + // + int ERROR_IPSEC_IKE_INVALID_HASH_ALG = 13871; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_HASH_SIZE + // + // MessageText: + // + // Invalid hash size + // + int ERROR_IPSEC_IKE_INVALID_HASH_SIZE = 13872; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_ENCRYPT_ALG + // + // MessageText: + // + // Invalid encryption algorithm + // + int ERROR_IPSEC_IKE_INVALID_ENCRYPT_ALG = 13873; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_AUTH_ALG + // + // MessageText: + // + // Invalid authentication algorithm + // + int ERROR_IPSEC_IKE_INVALID_AUTH_ALG = 13874; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_SIG + // + // MessageText: + // + // Invalid certificate signature + // + int ERROR_IPSEC_IKE_INVALID_SIG = 13875; + // + // MessageId: ERROR_IPSEC_IKE_LOAD_FAILED + // + // MessageText: + // + // Load failed + // + int ERROR_IPSEC_IKE_LOAD_FAILED = 13876; + // + // MessageId: ERROR_IPSEC_IKE_RPC_DELETE + // + // MessageText: + // + // Deleted via RPC call + // + int ERROR_IPSEC_IKE_RPC_DELETE = 13877; + // + // MessageId: ERROR_IPSEC_IKE_BENIGN_REINIT + // + // MessageText: + // + // Temporary state created to perform reinit. This is not a real failure. + // + int ERROR_IPSEC_IKE_BENIGN_REINIT = 13878; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_RESPONDER_LIFETIME_NOTIFY + // + // MessageText: + // + // The lifetime value received in the Responder Lifetime Notify is below the + // Windows=2000 configured minimum value. Please fix the policy on the peer + // machine. + // + int ERROR_IPSEC_IKE_INVALID_RESPONDER_LIFETIME_NOTIFY = 13879; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_CERT_KEYLEN + // + // MessageText: + // + // Key length in certificate is too small for configured security + // requirements. + // + int ERROR_IPSEC_IKE_INVALID_CERT_KEYLEN = 13881; + // + // MessageId: ERROR_IPSEC_IKE_MM_LIMIT + // + // MessageText: + // + // Max number of established MM SAs to peer exceeded. + // + int ERROR_IPSEC_IKE_MM_LIMIT = 13882; + // + // MessageId: ERROR_IPSEC_IKE_NEGOTIATION_DISABLED + // + // MessageText: + // + // IKE received a policy that disables negotiation. + // + int ERROR_IPSEC_IKE_NEGOTIATION_DISABLED = 13883; + // + // MessageId: ERROR_IPSEC_IKE_QM_LIMIT + // + // MessageText: + // + // Reached maximum quick mode limit for the main mode. New main mode will be + // started. + // + int ERROR_IPSEC_IKE_QM_LIMIT = 13884; + // + // MessageId: ERROR_IPSEC_IKE_MM_EXPIRED + // + // MessageText: + // + // Main mode SA lifetime expired or peer sent a main mode delete. + // + int ERROR_IPSEC_IKE_MM_EXPIRED = 13885; + // + // MessageId: ERROR_IPSEC_IKE_PEER_MM_ASSUMED_INVALID + // + // MessageText: + // + // Main mode SA assumed to be invalid because peer stopped responding. + // + int ERROR_IPSEC_IKE_PEER_MM_ASSUMED_INVALID = 13886; + // + // MessageId: ERROR_IPSEC_IKE_CERT_CHAIN_POLICY_MISMATCH + // + // MessageText: + // + // Certificate doesn't chain to a trusted root in IPsec policy. + // + int ERROR_IPSEC_IKE_CERT_CHAIN_POLICY_MISMATCH = 13887; + // + // MessageId: ERROR_IPSEC_IKE_UNEXPECTED_MESSAGE_ID + // + // MessageText: + // + // Received unexpected message ID. + // + int ERROR_IPSEC_IKE_UNEXPECTED_MESSAGE_ID = 13888; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_AUTH_PAYLOAD + // + // MessageText: + // + // Received invalid authentication offers. + // + int ERROR_IPSEC_IKE_INVALID_AUTH_PAYLOAD = 13889; + // + // MessageId: ERROR_IPSEC_IKE_DOS_COOKIE_SENT + // + // MessageText: + // + // Sent DOS cookie notify to intiator. + // + int ERROR_IPSEC_IKE_DOS_COOKIE_SENT = 13890; + // + // MessageId: ERROR_IPSEC_IKE_SHUTTING_DOWN + // + // MessageText: + // + // IKE service is shutting down. + // + int ERROR_IPSEC_IKE_SHUTTING_DOWN = 13891; + // + // MessageId: ERROR_IPSEC_IKE_CGA_AUTH_FAILED + // + // MessageText: + // + // Could not verify binding between CGA address and certificate. + // + int ERROR_IPSEC_IKE_CGA_AUTH_FAILED = 13892; + // + // MessageId: ERROR_IPSEC_IKE_PROCESS_ERR_NATOA + // + // MessageText: + // + // Error processing NatOA payload. + // + int ERROR_IPSEC_IKE_PROCESS_ERR_NATOA = 13893; + // + // MessageId: ERROR_IPSEC_IKE_INVALID_MM_FOR_QM + // + // MessageText: + // + // Parameters of the main mode are invalid for this quick mode. + // + int ERROR_IPSEC_IKE_INVALID_MM_FOR_QM = 13894; + // + // MessageId: ERROR_IPSEC_IKE_QM_EXPIRED + // + // MessageText: + // + // Quick mode SA was expired by IPsec driver. + // + int ERROR_IPSEC_IKE_QM_EXPIRED = 13895; + // + // MessageId: ERROR_IPSEC_IKE_TOO_MANY_FILTERS + // + // MessageText: + // + // Too many dynamically added IKEEXT filters were detected. + // + int ERROR_IPSEC_IKE_TOO_MANY_FILTERS = 13896; + // + // MessageId: ERROR_IPSEC_IKE_NEG_STATUS_END + // + // MessageText: + // + // ERROR_IPSEC_IKE_NEG_STATUS_END + // + int ERROR_IPSEC_IKE_NEG_STATUS_END = 13897; + // + // Following error codes are returned by IPsec kernel. + // + // + // MessageId: ERROR_IPSEC_BAD_SPI + // + // MessageText: + // + // The SPI in the packet does not match a valid IPsec SA. + // + int ERROR_IPSEC_BAD_SPI = 13910; + // + // MessageId: ERROR_IPSEC_SA_LIFETIME_EXPIRED + // + // MessageText: + // + // Packet was received on an IPsec SA whose lifetime has expired. + // + int ERROR_IPSEC_SA_LIFETIME_EXPIRED = 13911; + // + // MessageId: ERROR_IPSEC_WRONG_SA + // + // MessageText: + // + // Packet was received on an IPsec SA that doesn't match the packet + // characteristics. + // + int ERROR_IPSEC_WRONG_SA = 13912; + // + // MessageId: ERROR_IPSEC_REPLAY_CHECK_FAILED + // + // MessageText: + // + // Packet sequence number replay check failed. + // + int ERROR_IPSEC_REPLAY_CHECK_FAILED = 13913; + // + // MessageId: ERROR_IPSEC_INVALID_PACKET + // + // MessageText: + // + // IPsec header and/or trailer in the packet is invalid. + // + int ERROR_IPSEC_INVALID_PACKET = 13914; + // + // MessageId: ERROR_IPSEC_INTEGRITY_CHECK_FAILED + // + // MessageText: + // + // IPsec integrity check failed. + // + int ERROR_IPSEC_INTEGRITY_CHECK_FAILED = 13915; + // + // MessageId: ERROR_IPSEC_CLEAR_TEXT_DROP + // + // MessageText: + // + // IPsec dropped a clear text packet. + // + int ERROR_IPSEC_CLEAR_TEXT_DROP = 13916; + // ///////////////////////////////////////////////// + // =// + // =End of IPSec Error codes=// + // =// + // =13000 to=13999=// + // ///////////////////////////////////////////////// + // ///////////////////////////////////////////////// + // =// + // =Start of Side By Side Error Codes // + // =// + // =14000 to=14999=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_SXS_SECTION_NOT_FOUND + // + // MessageText: + // + // The requested section was not present in the activation context. + // + int ERROR_SXS_SECTION_NOT_FOUND = 14000; + // + // MessageId: ERROR_SXS_CANT_GEN_ACTCTX + // + // MessageText: + // + // The application has failed to start because its side-by-side + // configuration is incorrect. Please see the application event log for more + // detail. + // + int ERROR_SXS_CANT_GEN_ACTCTX = 14001; + // + // MessageId: ERROR_SXS_INVALID_ACTCTXDATA_FORMAT + // + // MessageText: + // + // The application binding data format is invalid. + // + int ERROR_SXS_INVALID_ACTCTXDATA_FORMAT = 14002; + // + // MessageId: ERROR_SXS_ASSEMBLY_NOT_FOUND + // + // MessageText: + // + // The referenced assembly is not installed on your system. + // + int ERROR_SXS_ASSEMBLY_NOT_FOUND = 14003; + // + // MessageId: ERROR_SXS_MANIFEST_FORMAT_ERROR + // + // MessageText: + // + // The manifest file does not begin with the required tag and format + // information. + // + int ERROR_SXS_MANIFEST_FORMAT_ERROR = 14004; + // + // MessageId: ERROR_SXS_MANIFEST_PARSE_ERROR + // + // MessageText: + // + // The manifest file contains one or more syntax errors. + // + int ERROR_SXS_MANIFEST_PARSE_ERROR = 14005; + // + // MessageId: ERROR_SXS_ACTIVATION_CONTEXT_DISABLED + // + // MessageText: + // + // The application attempted to activate a disabled activation context. + // + int ERROR_SXS_ACTIVATION_CONTEXT_DISABLED = 14006; + // + // MessageId: ERROR_SXS_KEY_NOT_FOUND + // + // MessageText: + // + // The requested lookup key was not found in any active activation context. + // + int ERROR_SXS_KEY_NOT_FOUND = 14007; + // + // MessageId: ERROR_SXS_VERSION_CONFLICT + // + // MessageText: + // + // A component version required by the application conflicts with another + // component version already active. + // + int ERROR_SXS_VERSION_CONFLICT = 14008; + // + // MessageId: ERROR_SXS_WRONG_SECTION_TYPE + // + // MessageText: + // + // The type requested activation context section does not match the query + // API used. + // + int ERROR_SXS_WRONG_SECTION_TYPE = 14009; + // + // MessageId: ERROR_SXS_THREAD_QUERIES_DISABLED + // + // MessageText: + // + // Lack of system resources has required isolated activation to be disabled + // for the current thread of execution. + // + int ERROR_SXS_THREAD_QUERIES_DISABLED = 14010; + // + // MessageId: ERROR_SXS_PROCESS_DEFAULT_ALREADY_SET + // + // MessageText: + // + // An attempt to set the process default activation context failed because + // the process default activation context was already set. + // + int ERROR_SXS_PROCESS_DEFAULT_ALREADY_SET = 14011; + // + // MessageId: ERROR_SXS_UNKNOWN_ENCODING_GROUP + // + // MessageText: + // + // The encoding group identifier specified is not recognized. + // + int ERROR_SXS_UNKNOWN_ENCODING_GROUP = 14012; + // + // MessageId: ERROR_SXS_UNKNOWN_ENCODING + // + // MessageText: + // + // The encoding requested is not recognized. + // + int ERROR_SXS_UNKNOWN_ENCODING = 14013; + // + // MessageId: ERROR_SXS_INVALID_XML_NAMESPACE_URI + // + // MessageText: + // + // The manifest contains a reference to an invalid URI. + // + int ERROR_SXS_INVALID_XML_NAMESPACE_URI = 14014; + // + // MessageId: ERROR_SXS_ROOT_MANIFEST_DEPENDENCY_NOT_INSTALLED + // + // MessageText: + // + // The application manifest contains a reference to a dependent assembly + // which is not installed + // + int ERROR_SXS_ROOT_MANIFEST_DEPENDENCY_NOT_INSTALLED = 14015; + // + // MessageId: ERROR_SXS_LEAF_MANIFEST_DEPENDENCY_NOT_INSTALLED + // + // MessageText: + // + // The manifest for an assembly used by the application has a reference to a + // dependent assembly which is not installed + // + int ERROR_SXS_LEAF_MANIFEST_DEPENDENCY_NOT_INSTALLED = 14016; + // + // MessageId: ERROR_SXS_INVALID_ASSEMBLY_IDENTITY_ATTRIBUTE + // + // MessageText: + // + // The manifest contains an attribute for the assembly identity which is not + // valid. + // + int ERROR_SXS_INVALID_ASSEMBLY_IDENTITY_ATTRIBUTE = 14017; + // + // MessageId: ERROR_SXS_MANIFEST_MISSING_REQUIRED_DEFAULT_NAMESPACE + // + // MessageText: + // + // The manifest is missing the required default namespace specification on + // the assembly element. + // + int ERROR_SXS_MANIFEST_MISSING_REQUIRED_DEFAULT_NAMESPACE = 14018; + // + // MessageId: ERROR_SXS_MANIFEST_INVALID_REQUIRED_DEFAULT_NAMESPACE + // + // MessageText: + // + // The manifest has a default namespace specified on the assembly element + // but its value is not "urn:schemas-microsoft-com:asm.v1". + // + int ERROR_SXS_MANIFEST_INVALID_REQUIRED_DEFAULT_NAMESPACE = 14019; + // + // MessageId: ERROR_SXS_PRIVATE_MANIFEST_CROSS_PATH_WITH_REPARSE_POINT + // + // MessageText: + // + // The private manifest probed has crossed reparse-point-associated path + // + int ERROR_SXS_PRIVATE_MANIFEST_CROSS_PATH_WITH_REPARSE_POINT = 14020; + // + // MessageId: ERROR_SXS_DUPLICATE_DLL_NAME + // + // MessageText: + // + // Two or more components referenced directly or indirectly by the + // application manifest have files by the same name. + // + int ERROR_SXS_DUPLICATE_DLL_NAME = 14021; + // + // MessageId: ERROR_SXS_DUPLICATE_WINDOWCLASS_NAME + // + // MessageText: + // + // Two or more components referenced directly or indirectly by the + // application manifest have window classes with the same name. + // + int ERROR_SXS_DUPLICATE_WINDOWCLASS_NAME = 14022; + // + // MessageId: ERROR_SXS_DUPLICATE_CLSID + // + // MessageText: + // + // Two or more components referenced directly or indirectly by the + // application manifest have the same COM server CLSIDs. + // + int ERROR_SXS_DUPLICATE_CLSID = 14023; + // + // MessageId: ERROR_SXS_DUPLICATE_IID + // + // MessageText: + // + // Two or more components referenced directly or indirectly by the + // application manifest have proxies for the same COM interface IIDs. + // + int ERROR_SXS_DUPLICATE_IID = 14024; + // + // MessageId: ERROR_SXS_DUPLICATE_TLBID + // + // MessageText: + // + // Two or more components referenced directly or indirectly by the + // application manifest have the same COM type library TLBIDs. + // + int ERROR_SXS_DUPLICATE_TLBID = 14025; + // + // MessageId: ERROR_SXS_DUPLICATE_PROGID + // + // MessageText: + // + // Two or more components referenced directly or indirectly by the + // application manifest have the same COM ProgIDs. + // + int ERROR_SXS_DUPLICATE_PROGID = 14026; + // + // MessageId: ERROR_SXS_DUPLICATE_ASSEMBLY_NAME + // + // MessageText: + // + // Two or more components referenced directly or indirectly by the + // application manifest are different versions of the same component which + // is not permitted. + // + int ERROR_SXS_DUPLICATE_ASSEMBLY_NAME = 14027; + // + // MessageId: ERROR_SXS_FILE_HASH_MISMATCH + // + // MessageText: + // + // A component's file does not match the verification information present in + // the component manifest. + // + int ERROR_SXS_FILE_HASH_MISMATCH = 14028; + // + // MessageId: ERROR_SXS_POLICY_PARSE_ERROR + // + // MessageText: + // + // The policy manifest contains one or more syntax errors. + // + int ERROR_SXS_POLICY_PARSE_ERROR = 14029; + // + // MessageId: ERROR_SXS_XML_E_MISSINGQUOTE + // + // MessageText: + // + // Manifest Parse Error : A string literal was expected, but no opening + // quote character was found. + // + int ERROR_SXS_XML_E_MISSINGQUOTE = 14030; + // + // MessageId: ERROR_SXS_XML_E_COMMENTSYNTAX + // + // MessageText: + // + // Manifest Parse Error : Incorrect syntax was used in a comment. + // + int ERROR_SXS_XML_E_COMMENTSYNTAX = 14031; + // + // MessageId: ERROR_SXS_XML_E_BADSTARTNAMECHAR + // + // MessageText: + // + // Manifest Parse Error : A name was started with an invalid character. + // + int ERROR_SXS_XML_E_BADSTARTNAMECHAR = 14032; + // + // MessageId: ERROR_SXS_XML_E_BADNAMECHAR + // + // MessageText: + // + // Manifest Parse Error : A name contained an invalid character. + // + int ERROR_SXS_XML_E_BADNAMECHAR = 14033; + // + // MessageId: ERROR_SXS_XML_E_BADCHARINSTRING + // + // MessageText: + // + // Manifest Parse Error : A string literal contained an invalid character. + // + int ERROR_SXS_XML_E_BADCHARINSTRING = 14034; + // + // MessageId: ERROR_SXS_XML_E_XMLDECLSYNTAX + // + // MessageText: + // + // Manifest Parse Error : Invalid syntax for an xml declaration. + // + int ERROR_SXS_XML_E_XMLDECLSYNTAX = 14035; + // + // MessageId: ERROR_SXS_XML_E_BADCHARDATA + // + // MessageText: + // + // Manifest Parse Error : An Invalid character was found in text content. + // + int ERROR_SXS_XML_E_BADCHARDATA = 14036; + // + // MessageId: ERROR_SXS_XML_E_MISSINGWHITESPACE + // + // MessageText: + // + // Manifest Parse Error : Required white space was missing. + // + int ERROR_SXS_XML_E_MISSINGWHITESPACE = 14037; + // + // MessageId: ERROR_SXS_XML_E_EXPECTINGTAGEND + // + // MessageText: + // + // Manifest Parse Error : The character '>' was expected. + // + int ERROR_SXS_XML_E_EXPECTINGTAGEND = 14038; + // + // MessageId: ERROR_SXS_XML_E_MISSINGSEMICOLON + // + // MessageText: + // + // Manifest Parse Error : A semi colon character was expected. + // + int ERROR_SXS_XML_E_MISSINGSEMICOLON = 14039; + // + // MessageId: ERROR_SXS_XML_E_UNBALANCEDPAREN + // + // MessageText: + // + // Manifest Parse Error : Unbalanced parentheses. + // + int ERROR_SXS_XML_E_UNBALANCEDPAREN = 14040; + // + // MessageId: ERROR_SXS_XML_E_INTERNALERROR + // + // MessageText: + // + // Manifest Parse Error : Internal error. + // + int ERROR_SXS_XML_E_INTERNALERROR = 14041; + // + // MessageId: ERROR_SXS_XML_E_UNEXPECTED_WHITESPACE + // + // MessageText: + // + // Manifest Parse Error : Whitespace is not allowed at this location. + // + int ERROR_SXS_XML_E_UNEXPECTED_WHITESPACE = 14042; + // + // MessageId: ERROR_SXS_XML_E_INCOMPLETE_ENCODING + // + // MessageText: + // + // Manifest Parse Error : End of file reached in invalid state for current + // encoding. + // + int ERROR_SXS_XML_E_INCOMPLETE_ENCODING = 14043; + // + // MessageId: ERROR_SXS_XML_E_MISSING_PAREN + // + // MessageText: + // + // Manifest Parse Error : Missing parenthesis. + // + int ERROR_SXS_XML_E_MISSING_PAREN = 14044; + // + // MessageId: ERROR_SXS_XML_E_EXPECTINGCLOSEQUOTE + // + // MessageText: + // + // Manifest Parse Error : A single or double closing quote character (\' or + // \") is missing. + // + int ERROR_SXS_XML_E_EXPECTINGCLOSEQUOTE = 14045; + // + // MessageId: ERROR_SXS_XML_E_MULTIPLE_COLONS + // + // MessageText: + // + // Manifest Parse Error : Multiple colons are not allowed in a name. + // + int ERROR_SXS_XML_E_MULTIPLE_COLONS = 14046; + // + // MessageId: ERROR_SXS_XML_E_INVALID_DECIMAL + // + // MessageText: + // + // Manifest Parse Error : Invalid character for decimal digit. + // + int ERROR_SXS_XML_E_INVALID_DECIMAL = 14047; + // + // MessageId: ERROR_SXS_XML_E_INVALID_HEXIDECIMAL + // + // MessageText: + // + // Manifest Parse Error : Invalid character for hexidecimal digit. + // + int ERROR_SXS_XML_E_INVALID_HEXIDECIMAL = 14048; + // + // MessageId: ERROR_SXS_XML_E_INVALID_UNICODE + // + // MessageText: + // + // Manifest Parse Error : Invalid unicode character value for this platform. + // + int ERROR_SXS_XML_E_INVALID_UNICODE = 14049; + // + // MessageId: ERROR_SXS_XML_E_WHITESPACEORQUESTIONMARK + // + // MessageText: + // + // Manifest Parse Error : Expecting whitespace or '?'. + // + int ERROR_SXS_XML_E_WHITESPACEORQUESTIONMARK = 14050; + // + // MessageId: ERROR_SXS_XML_E_UNEXPECTEDENDTAG + // + // MessageText: + // + // Manifest Parse Error : End tag was not expected at this location. + // + int ERROR_SXS_XML_E_UNEXPECTEDENDTAG = 14051; + // + // MessageId: ERROR_SXS_XML_E_UNCLOSEDTAG + // + // MessageText: + // + // Manifest Parse Error : The following tags were not closed: %1. + // + int ERROR_SXS_XML_E_UNCLOSEDTAG = 14052; + // + // MessageId: ERROR_SXS_XML_E_DUPLICATEATTRIBUTE + // + // MessageText: + // + // Manifest Parse Error : Duplicate attribute. + // + int ERROR_SXS_XML_E_DUPLICATEATTRIBUTE = 14053; + // + // MessageId: ERROR_SXS_XML_E_MULTIPLEROOTS + // + // MessageText: + // + // Manifest Parse Error : Only one top level element is allowed in an XML + // document. + // + int ERROR_SXS_XML_E_MULTIPLEROOTS = 14054; + // + // MessageId: ERROR_SXS_XML_E_INVALIDATROOTLEVEL + // + // MessageText: + // + // Manifest Parse Error : Invalid at the top level of the document. + // + int ERROR_SXS_XML_E_INVALIDATROOTLEVEL = 14055; + // + // MessageId: ERROR_SXS_XML_E_BADXMLDECL + // + // MessageText: + // + // Manifest Parse Error : Invalid xml declaration. + // + int ERROR_SXS_XML_E_BADXMLDECL = 14056; + // + // MessageId: ERROR_SXS_XML_E_MISSINGROOT + // + // MessageText: + // + // Manifest Parse Error : XML document must have a top level element. + // + int ERROR_SXS_XML_E_MISSINGROOT = 14057; + // + // MessageId: ERROR_SXS_XML_E_UNEXPECTEDEOF + // + // MessageText: + // + // Manifest Parse Error : Unexpected end of file. + // + int ERROR_SXS_XML_E_UNEXPECTEDEOF = 14058; + // + // MessageId: ERROR_SXS_XML_E_BADPEREFINSUBSET + // + // MessageText: + // + // Manifest Parse Error : Parameter entities cannot be used inside markup + // declarations in an internal subset. + // + int ERROR_SXS_XML_E_BADPEREFINSUBSET = 14059; + // + // MessageId: ERROR_SXS_XML_E_UNCLOSEDSTARTTAG + // + // MessageText: + // + // Manifest Parse Error : Element was not closed. + // + int ERROR_SXS_XML_E_UNCLOSEDSTARTTAG = 14060; + // + // MessageId: ERROR_SXS_XML_E_UNCLOSEDENDTAG + // + // MessageText: + // + // Manifest Parse Error : End element was missing the character '>'. + // + int ERROR_SXS_XML_E_UNCLOSEDENDTAG = 14061; + // + // MessageId: ERROR_SXS_XML_E_UNCLOSEDSTRING + // + // MessageText: + // + // Manifest Parse Error : A string literal was not closed. + // + int ERROR_SXS_XML_E_UNCLOSEDSTRING = 14062; + // + // MessageId: ERROR_SXS_XML_E_UNCLOSEDCOMMENT + // + // MessageText: + // + // Manifest Parse Error : A comment was not closed. + // + int ERROR_SXS_XML_E_UNCLOSEDCOMMENT = 14063; + // + // MessageId: ERROR_SXS_XML_E_UNCLOSEDDECL + // + // MessageText: + // + // Manifest Parse Error : A declaration was not closed. + // + int ERROR_SXS_XML_E_UNCLOSEDDECL = 14064; + // + // MessageId: ERROR_SXS_XML_E_UNCLOSEDCDATA + // + // MessageText: + // + // Manifest Parse Error : A CDATA section was not closed. + // + int ERROR_SXS_XML_E_UNCLOSEDCDATA = 14065; + // + // MessageId: ERROR_SXS_XML_E_RESERVEDNAMESPACE + // + // MessageText: + // + // Manifest Parse Error : The namespace prefix is not allowed to start with + // the reserved string "xml". + // + int ERROR_SXS_XML_E_RESERVEDNAMESPACE = 14066; + // + // MessageId: ERROR_SXS_XML_E_INVALIDENCODING + // + // MessageText: + // + // Manifest Parse Error : System does not support the specified encoding. + // + int ERROR_SXS_XML_E_INVALIDENCODING = 14067; + // + // MessageId: ERROR_SXS_XML_E_INVALIDSWITCH + // + // MessageText: + // + // Manifest Parse Error : Switch from current encoding to specified encoding + // not supported. + // + int ERROR_SXS_XML_E_INVALIDSWITCH = 14068; + // + // MessageId: ERROR_SXS_XML_E_BADXMLCASE + // + // MessageText: + // + // Manifest Parse Error : The name 'xml' is reserved and must be lower case. + // + int ERROR_SXS_XML_E_BADXMLCASE = 14069; + // + // MessageId: ERROR_SXS_XML_E_INVALID_STANDALONE + // + // MessageText: + // + // Manifest Parse Error : The standalone attribute must have the value 'yes' + // or 'no'. + // + int ERROR_SXS_XML_E_INVALID_STANDALONE = 14070; + // + // MessageId: ERROR_SXS_XML_E_UNEXPECTED_STANDALONE + // + // MessageText: + // + // Manifest Parse Error : The standalone attribute cannot be used in + // external entities. + // + int ERROR_SXS_XML_E_UNEXPECTED_STANDALONE = 14071; + // + // MessageId: ERROR_SXS_XML_E_INVALID_VERSION + // + // MessageText: + // + // Manifest Parse Error : Invalid version number. + // + int ERROR_SXS_XML_E_INVALID_VERSION = 14072; + // + // MessageId: ERROR_SXS_XML_E_MISSINGEQUALS + // + // MessageText: + // + // Manifest Parse Error : Missing equals sign between attribute and + // attribute value. + // + int ERROR_SXS_XML_E_MISSINGEQUALS = 14073; + // + // MessageId: ERROR_SXS_PROTECTION_RECOVERY_FAILED + // + // MessageText: + // + // Assembly Protection Error : Unable to recover the specified assembly. + // + int ERROR_SXS_PROTECTION_RECOVERY_FAILED = 14074; + // + // MessageId: ERROR_SXS_PROTECTION_PUBLIC_KEY_TOO_SHORT + // + // MessageText: + // + // Assembly Protection Error : The public key for an assembly was too short + // to be allowed. + // + int ERROR_SXS_PROTECTION_PUBLIC_KEY_TOO_SHORT = 14075; + // + // MessageId: ERROR_SXS_PROTECTION_CATALOG_NOT_VALID + // + // MessageText: + // + // Assembly Protection Error : The catalog for an assembly is not valid, or + // does not match the assembly's manifest. + // + int ERROR_SXS_PROTECTION_CATALOG_NOT_VALID = 14076; + // + // MessageId: ERROR_SXS_UNTRANSLATABLE_HRESULT + // + // MessageText: + // + // An HRESULT could not be translated to a corresponding Win32 error code. + // + int ERROR_SXS_UNTRANSLATABLE_HRESULT = 14077; + // + // MessageId: ERROR_SXS_PROTECTION_CATALOG_FILE_MISSING + // + // MessageText: + // + // Assembly Protection Error : The catalog for an assembly is missing. + // + int ERROR_SXS_PROTECTION_CATALOG_FILE_MISSING = 14078; + // + // MessageId: ERROR_SXS_MISSING_ASSEMBLY_IDENTITY_ATTRIBUTE + // + // MessageText: + // + // The supplied assembly identity is missing one or more attributes which + // must be present in this context. + // + int ERROR_SXS_MISSING_ASSEMBLY_IDENTITY_ATTRIBUTE = 14079; + // + // MessageId: ERROR_SXS_INVALID_ASSEMBLY_IDENTITY_ATTRIBUTE_NAME + // + // MessageText: + // + // The supplied assembly identity has one or more attribute names that + // contain characters not permitted in XML names. + // + int ERROR_SXS_INVALID_ASSEMBLY_IDENTITY_ATTRIBUTE_NAME = 14080; + // + // MessageId: ERROR_SXS_ASSEMBLY_MISSING + // + // MessageText: + // + // The referenced assembly could not be found. + // + int ERROR_SXS_ASSEMBLY_MISSING = 14081; + // + // MessageId: ERROR_SXS_CORRUPT_ACTIVATION_STACK + // + // MessageText: + // + // The activation context activation stack for the running thread of + // execution is corrupt. + // + int ERROR_SXS_CORRUPT_ACTIVATION_STACK = 14082; + // + // MessageId: ERROR_SXS_CORRUPTION + // + // MessageText: + // + // The application isolation metadata for this process or thread has become + // corrupt. + // + int ERROR_SXS_CORRUPTION = 14083; + // + // MessageId: ERROR_SXS_EARLY_DEACTIVATION + // + // MessageText: + // + // The activation context being deactivated is not the most recently + // activated one. + // + int ERROR_SXS_EARLY_DEACTIVATION = 14084; + // + // MessageId: ERROR_SXS_INVALID_DEACTIVATION + // + // MessageText: + // + // The activation context being deactivated is not active for the current + // thread of execution. + // + int ERROR_SXS_INVALID_DEACTIVATION = 14085; + // + // MessageId: ERROR_SXS_MULTIPLE_DEACTIVATION + // + // MessageText: + // + // The activation context being deactivated has already been deactivated. + // + int ERROR_SXS_MULTIPLE_DEACTIVATION = 14086; + // + // MessageId: ERROR_SXS_PROCESS_TERMINATION_REQUESTED + // + // MessageText: + // + // A component used by the isolation facility has requested to terminate the + // process. + // + int ERROR_SXS_PROCESS_TERMINATION_REQUESTED = 14087; + // + // MessageId: ERROR_SXS_RELEASE_ACTIVATION_CONTEXT + // + // MessageText: + // + // A kernel mode component is releasing a reference on an activation + // context. + // + int ERROR_SXS_RELEASE_ACTIVATION_CONTEXT = 14088; + // + // MessageId: ERROR_SXS_SYSTEM_DEFAULT_ACTIVATION_CONTEXT_EMPTY + // + // MessageText: + // + // The activation context of system default assembly could not be generated. + // + int ERROR_SXS_SYSTEM_DEFAULT_ACTIVATION_CONTEXT_EMPTY = 14089; + // + // MessageId: ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUE + // + // MessageText: + // + // The value of an attribute in an identity is not within the legal range. + // + int ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUE = 14090; + // + // MessageId: ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_NAME + // + // MessageText: + // + // The name of an attribute in an identity is not within the legal range. + // + int ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_NAME = 14091; + // + // MessageId: ERROR_SXS_IDENTITY_DUPLICATE_ATTRIBUTE + // + // MessageText: + // + // An identity contains two definitions for the same attribute. + // + int ERROR_SXS_IDENTITY_DUPLICATE_ATTRIBUTE = 14092; + // + // MessageId: ERROR_SXS_IDENTITY_PARSE_ERROR + // + // MessageText: + // + // The identity string is malformed. This may be due to a trailing comma, + // more than two unnamed attributes, missing attribute name or missing + // attribute value. + // + int ERROR_SXS_IDENTITY_PARSE_ERROR = 14093; + // + // MessageId: ERROR_MALFORMED_SUBSTITUTION_STRING + // + // MessageText: + // + // A string containing localized substitutable content was malformed. Either + // a dollar sign ($) was follwed by something other than a left parenthesis + // or another dollar sign or an substitution's right parenthesis was not + // found. + // + int ERROR_MALFORMED_SUBSTITUTION_STRING = 14094; + // + // MessageId: ERROR_SXS_INCORRECT_PUBLIC_KEY_TOKEN + // + // MessageText: + // + // The public key token does not correspond to the public key specified. + // + int ERROR_SXS_INCORRECT_PUBLIC_KEY_TOKEN = 14095; + // + // MessageId: ERROR_UNMAPPED_SUBSTITUTION_STRING + // + // MessageText: + // + // A substitution string had no mapping. + // + int ERROR_UNMAPPED_SUBSTITUTION_STRING = 14096; + // + // MessageId: ERROR_SXS_ASSEMBLY_NOT_LOCKED + // + // MessageText: + // + // The component must be locked before making the request. + // + int ERROR_SXS_ASSEMBLY_NOT_LOCKED = 14097; + // + // MessageId: ERROR_SXS_COMPONENT_STORE_CORRUPT + // + // MessageText: + // + // The component store has been corrupted. + // + int ERROR_SXS_COMPONENT_STORE_CORRUPT = 14098; + // + // MessageId: ERROR_ADVANCED_INSTALLER_FAILED + // + // MessageText: + // + // An advanced installer failed during setup or servicing. + // + int ERROR_ADVANCED_INSTALLER_FAILED = 14099; + // + // MessageId: ERROR_XML_ENCODING_MISMATCH + // + // MessageText: + // + // The character encoding in the XML declaration did not match the encoding + // used in the document. + // + int ERROR_XML_ENCODING_MISMATCH = 14100; + // + // MessageId: ERROR_SXS_MANIFEST_IDENTITY_SAME_BUT_CONTENTS_DIFFERENT + // + // MessageText: + // + // The identities of the manifests are identical but their contents are + // different. + // + int ERROR_SXS_MANIFEST_IDENTITY_SAME_BUT_CONTENTS_DIFFERENT = 14101; + // + // MessageId: ERROR_SXS_IDENTITIES_DIFFERENT + // + // MessageText: + // + // The component identities are different. + // + int ERROR_SXS_IDENTITIES_DIFFERENT = 14102; + // + // MessageId: ERROR_SXS_ASSEMBLY_IS_NOT_A_DEPLOYMENT + // + // MessageText: + // + // The assembly is not a deployment. + // + int ERROR_SXS_ASSEMBLY_IS_NOT_A_DEPLOYMENT = 14103; + // + // MessageId: ERROR_SXS_FILE_NOT_PART_OF_ASSEMBLY + // + // MessageText: + // + // The file is not a part of the assembly. + // + int ERROR_SXS_FILE_NOT_PART_OF_ASSEMBLY = 14104; + // + // MessageId: ERROR_SXS_MANIFEST_TOO_BIG + // + // MessageText: + // + // The size of the manifest exceeds the maximum allowed. + // + int ERROR_SXS_MANIFEST_TOO_BIG = 14105; + // + // MessageId: ERROR_SXS_SETTING_NOT_REGISTERED + // + // MessageText: + // + // The setting is not registered. + // + int ERROR_SXS_SETTING_NOT_REGISTERED = 14106; + // + // MessageId: ERROR_SXS_TRANSACTION_CLOSURE_INCOMPLETE + // + // MessageText: + // + // One or more required members of the transaction are not present. + // + int ERROR_SXS_TRANSACTION_CLOSURE_INCOMPLETE = 14107; + // + // MessageId: ERROR_SMI_PRIMITIVE_INSTALLER_FAILED + // + // MessageText: + // + // The SMI primitive installer failed during setup or servicing. + // + int ERROR_SMI_PRIMITIVE_INSTALLER_FAILED = 14108; + // + // MessageId: ERROR_GENERIC_COMMAND_FAILED + // + // MessageText: + // + // A generic command executable returned a result that indicates failure. + // + int ERROR_GENERIC_COMMAND_FAILED = 14109; + // + // MessageId: ERROR_SXS_FILE_HASH_MISSING + // + // MessageText: + // + // A component is missing file verification information in its manifest. + // + int ERROR_SXS_FILE_HASH_MISSING = 14110; + // ///////////////////////////////////////////////// + // =// + // =End of Side By Side Error Codes // + // =// + // =14000 to=14999=// + // ///////////////////////////////////////////////// + // ///////////////////////////////////////////////// + // =// + // =Start of WinEvt Error codes=// + // =// + // =15000 to=15079=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_EVT_INVALID_CHANNEL_PATH + // + // MessageText: + // + // The specified channel path is invalid. + // + int ERROR_EVT_INVALID_CHANNEL_PATH = 15000; + // + // MessageId: ERROR_EVT_INVALID_QUERY + // + // MessageText: + // + // The specified query is invalid. + // + int ERROR_EVT_INVALID_QUERY = 15001; + // + // MessageId: ERROR_EVT_PUBLISHER_METADATA_NOT_FOUND + // + // MessageText: + // + // The publisher metadata cannot be found in the resource. + // + int ERROR_EVT_PUBLISHER_METADATA_NOT_FOUND = 15002; + // + // MessageId: ERROR_EVT_EVENT_TEMPLATE_NOT_FOUND + // + // MessageText: + // + // The template for an event definition cannot be found in the resource + // (error =%1). + // + int ERROR_EVT_EVENT_TEMPLATE_NOT_FOUND = 15003; + // + // MessageId: ERROR_EVT_INVALID_PUBLISHER_NAME + // + // MessageText: + // + // The specified publisher name is invalid. + // + int ERROR_EVT_INVALID_PUBLISHER_NAME = 15004; + // + // MessageId: ERROR_EVT_INVALID_EVENT_DATA + // + // MessageText: + // + // The event data raised by the publisher is not compatible with the event + // template definition in the publisher's manifest + // + int ERROR_EVT_INVALID_EVENT_DATA = 15005; + // + // MessageId: ERROR_EVT_CHANNEL_NOT_FOUND + // + // MessageText: + // + // The specified channel could not be found. Check channel configuration. + // + int ERROR_EVT_CHANNEL_NOT_FOUND = 15007; + // + // MessageId: ERROR_EVT_MALFORMED_XML_TEXT + // + // MessageText: + // + // The specified xml text was not well-formed. See Extended Error for more + // details. + // + int ERROR_EVT_MALFORMED_XML_TEXT = 15008; + // + // MessageId: ERROR_EVT_SUBSCRIPTION_TO_DIRECT_CHANNEL + // + // MessageText: + // + // The caller is trying to subscribe to a direct channel which is not + // allowed. The events for a direct channel go directly to a logfile and + // cannot be subscribed to. + // + int ERROR_EVT_SUBSCRIPTION_TO_DIRECT_CHANNEL = 15009; + // + // MessageId: ERROR_EVT_CONFIGURATION_ERROR + // + // MessageText: + // + // Configuration error. + // + int ERROR_EVT_CONFIGURATION_ERROR = 15010; + // + // MessageId: ERROR_EVT_QUERY_RESULT_STALE + // + // MessageText: + // + // The query result is stale / invalid. This may be due to the log being + // cleared or rolling over after the query result was created. Users should + // handle this code by releasing the query result object and reissuing the + // query. + // + int ERROR_EVT_QUERY_RESULT_STALE = 15011; + // + // MessageId: ERROR_EVT_QUERY_RESULT_INVALID_POSITION + // + // MessageText: + // + // Query result is currently at an invalid position. + // + int ERROR_EVT_QUERY_RESULT_INVALID_POSITION = 15012; + // + // MessageId: ERROR_EVT_NON_VALIDATING_MSXML + // + // MessageText: + // + // Registered MSXML doesn't support validation. + // + int ERROR_EVT_NON_VALIDATING_MSXML = 15013; + // + // MessageId: ERROR_EVT_FILTER_ALREADYSCOPED + // + // MessageText: + // + // An expression can only be followed by a change of scope operation if it + // itself evaluates to a node set and is not already part of some other + // change of scope operation. + // + int ERROR_EVT_FILTER_ALREADYSCOPED = 15014; + // + // MessageId: ERROR_EVT_FILTER_NOTELTSET + // + // MessageText: + // + // Can't perform a step operation from a term that does not represent an + // element set. + // + int ERROR_EVT_FILTER_NOTELTSET = 15015; + // + // MessageId: ERROR_EVT_FILTER_INVARG + // + // MessageText: + // + // Left hand side arguments to binary operators must be either attributes, + // nodes or variables and right hand side arguments must be constants. + // + int ERROR_EVT_FILTER_INVARG = 15016; + // + // MessageId: ERROR_EVT_FILTER_INVTEST + // + // MessageText: + // + // A step operation must involve either a node test or, in the case of a + // predicate, an algebraic expression against which to test each node in the + // node set identified by the preceeding node set can be evaluated. + // + int ERROR_EVT_FILTER_INVTEST = 15017; + // + // MessageId: ERROR_EVT_FILTER_INVTYPE + // + // MessageText: + // + // This data type is currently unsupported. + // + int ERROR_EVT_FILTER_INVTYPE = 15018; + // + // MessageId: ERROR_EVT_FILTER_PARSEERR + // + // MessageText: + // + // A syntax error occurred at position %1!d! + // + int ERROR_EVT_FILTER_PARSEERR = 15019; + // + // MessageId: ERROR_EVT_FILTER_UNSUPPORTEDOP + // + // MessageText: + // + // This operator is unsupported by this implementation of the filter. + // + int ERROR_EVT_FILTER_UNSUPPORTEDOP = 15020; + // + // MessageId: ERROR_EVT_FILTER_UNEXPECTEDTOKEN + // + // MessageText: + // + // The token encountered was unexpected. + // + int ERROR_EVT_FILTER_UNEXPECTEDTOKEN = 15021; + // + // MessageId: ERROR_EVT_INVALID_OPERATION_OVER_ENABLED_DIRECT_CHANNEL + // + // MessageText: + // + // The requested operation cannot be performed over an enabled direct + // channel. The channel must first be disabled before performing the + // requested operation. + // + int ERROR_EVT_INVALID_OPERATION_OVER_ENABLED_DIRECT_CHANNEL = 15022; + // + // MessageId: ERROR_EVT_INVALID_CHANNEL_PROPERTY_VALUE + // + // MessageText: + // + // Channel property %1!s! contains invalid value. The value has invalid + // type, is outside of valid range, can't be updated or is not supported by + // this type of channel. + // + int ERROR_EVT_INVALID_CHANNEL_PROPERTY_VALUE = 15023; + // + // MessageId: ERROR_EVT_INVALID_PUBLISHER_PROPERTY_VALUE + // + // MessageText: + // + // Publisher property %1!s! contains invalid value. The value has invalid + // type, is outside of valid range, can't be updated or is not supported by + // this type of publisher. + // + int ERROR_EVT_INVALID_PUBLISHER_PROPERTY_VALUE = 15024; + // + // MessageId: ERROR_EVT_CHANNEL_CANNOT_ACTIVATE + // + // MessageText: + // + // The channel fails to activate. + // + int ERROR_EVT_CHANNEL_CANNOT_ACTIVATE = 15025; + // + // MessageId: ERROR_EVT_FILTER_TOO_COMPLEX + // + // MessageText: + // + // The xpath expression exceeded supported complexity. Please symplify it or + // split it into two or more simple expressions. + // + int ERROR_EVT_FILTER_TOO_COMPLEX = 15026; + // + // MessageId: ERROR_EVT_MESSAGE_NOT_FOUND + // + // MessageText: + // + // the message resource is present but the message is not found in the + // string/message table + // + int ERROR_EVT_MESSAGE_NOT_FOUND = 15027; + // + // MessageId: ERROR_EVT_MESSAGE_ID_NOT_FOUND + // + // MessageText: + // + // The message id for the desired message could not be found. + // + int ERROR_EVT_MESSAGE_ID_NOT_FOUND = 15028; + // + // MessageId: ERROR_EVT_UNRESOLVED_VALUE_INSERT + // + // MessageText: + // + // The substitution string for insert index (%1) could not be found. + // + int ERROR_EVT_UNRESOLVED_VALUE_INSERT = 15029; + // + // MessageId: ERROR_EVT_UNRESOLVED_PARAMETER_INSERT + // + // MessageText: + // + // The description string for parameter reference (%1) could not be found. + // + int ERROR_EVT_UNRESOLVED_PARAMETER_INSERT = 15030; + // + // MessageId: ERROR_EVT_MAX_INSERTS_REACHED + // + // MessageText: + // + // The maximum number of replacements has been reached. + // + int ERROR_EVT_MAX_INSERTS_REACHED = 15031; + // + // MessageId: ERROR_EVT_EVENT_DEFINITION_NOT_FOUND + // + // MessageText: + // + // The event definition could not be found for event id (%1). + // + int ERROR_EVT_EVENT_DEFINITION_NOT_FOUND = 15032; + // + // MessageId: ERROR_EVT_MESSAGE_LOCALE_NOT_FOUND + // + // MessageText: + // + // The locale specific resource for the desired message is not present. + // + int ERROR_EVT_MESSAGE_LOCALE_NOT_FOUND = 15033; + // + // MessageId: ERROR_EVT_VERSION_TOO_OLD + // + // MessageText: + // + // The resource is too old to be compatible. + // + int ERROR_EVT_VERSION_TOO_OLD = 15034; + // + // MessageId: ERROR_EVT_VERSION_TOO_NEW + // + // MessageText: + // + // The resource is too new to be compatible. + // + int ERROR_EVT_VERSION_TOO_NEW = 15035; + // + // MessageId: ERROR_EVT_CANNOT_OPEN_CHANNEL_OF_QUERY + // + // MessageText: + // + // The channel at index %1!d! of the query can't be opened. + // + int ERROR_EVT_CANNOT_OPEN_CHANNEL_OF_QUERY = 15036; + // + // MessageId: ERROR_EVT_PUBLISHER_DISABLED + // + // MessageText: + // + // The publisher has been disabled and its resource is not avaiable. This + // usually occurs when the publisher is in the process of being uninstalled + // or upgraded. + // + int ERROR_EVT_PUBLISHER_DISABLED = 15037; + // + // MessageId: ERROR_EVT_FILTER_OUT_OF_RANGE + // + // MessageText: + // + // Attempted to create a numeric type that is outside of its valid range. + // + int ERROR_EVT_FILTER_OUT_OF_RANGE = 15038; + // ///////////////////////////////////////////////// + // =// + // =Start of Wecsvc Error codes=// + // =// + // =15080 to=15099=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_EC_SUBSCRIPTION_CANNOT_ACTIVATE + // + // MessageText: + // + // The subscription fails to activate. + // + int ERROR_EC_SUBSCRIPTION_CANNOT_ACTIVATE = 15080; + // + // MessageId: ERROR_EC_LOG_DISABLED + // + // MessageText: + // + // The log of the subscription is in disabled state, and can not be used to + // forward events to. The log must first be enabled before the subscription + // can be activated. + // + int ERROR_EC_LOG_DISABLED = 15081; + // + // MessageId: ERROR_EC_CIRCULAR_FORWARDING + // + // MessageText: + // + // When forwarding events from local machine to itself, the query of the + // subscription can't contain target log of the subscription. + // + int ERROR_EC_CIRCULAR_FORWARDING = 15082; + // + // MessageId: ERROR_EC_CREDSTORE_FULL + // + // MessageText: + // + // The credential store that is used to save credentials is full. + // + int ERROR_EC_CREDSTORE_FULL = 15083; + // + // MessageId: ERROR_EC_CRED_NOT_FOUND + // + // MessageText: + // + // The credential used by this subscription can't be found in credential + // store. + // + int ERROR_EC_CRED_NOT_FOUND = 15084; + // + // MessageId: ERROR_EC_NO_ACTIVE_CHANNEL + // + // MessageText: + // + // No active channel is found for the query. + // + int ERROR_EC_NO_ACTIVE_CHANNEL = 15085; + // ///////////////////////////////////////////////// + // =// + // =Start of MUI Error codes=// + // =// + // =15100 to=15199=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_MUI_FILE_NOT_FOUND + // + // MessageText: + // + // The resource loader failed to find MUI file. + // + int ERROR_MUI_FILE_NOT_FOUND = 15100; + // + // MessageId: ERROR_MUI_INVALID_FILE + // + // MessageText: + // + // The resource loader failed to load MUI file because the file fail to pass + // validation. + // + int ERROR_MUI_INVALID_FILE = 15101; + // + // MessageId: ERROR_MUI_INVALID_RC_CONFIG + // + // MessageText: + // + // The RC Manifest is corrupted with garbage data or unsupported version or + // missing required item. + // + int ERROR_MUI_INVALID_RC_CONFIG = 15102; + // + // MessageId: ERROR_MUI_INVALID_LOCALE_NAME + // + // MessageText: + // + // The RC Manifest has invalid culture name. + // + int ERROR_MUI_INVALID_LOCALE_NAME = 15103; + // + // MessageId: ERROR_MUI_INVALID_ULTIMATEFALLBACK_NAME + // + // MessageText: + // + // The RC Manifest has invalid ultimatefallback name. + // + int ERROR_MUI_INVALID_ULTIMATEFALLBACK_NAME = 15104; + // + // MessageId: ERROR_MUI_FILE_NOT_LOADED + // + // MessageText: + // + // The resource loader cache doesn't have loaded MUI entry. + // + int ERROR_MUI_FILE_NOT_LOADED = 15105; + // + // MessageId: ERROR_RESOURCE_ENUM_USER_STOP + // + // MessageText: + // + // User stopped resource enumeration. + // + int ERROR_RESOURCE_ENUM_USER_STOP = 15106; + // + // MessageId: ERROR_MUI_INTLSETTINGS_UILANG_NOT_INSTALLED + // + // MessageText: + // + // UI language installation failed. + // + int ERROR_MUI_INTLSETTINGS_UILANG_NOT_INSTALLED = 15107; + // + // MessageId: ERROR_MUI_INTLSETTINGS_INVALID_LOCALE_NAME + // + // MessageText: + // + // Locale installation failed. + // + int ERROR_MUI_INTLSETTINGS_INVALID_LOCALE_NAME = 15108; + // ///////////////////////////////////////////////// + // =// + // Start of Monitor Configuration API error codes// + // =// + // =15200 to=15249=// + // ///////////////////////////////////////////////// + // + // MessageId: ERROR_MCA_INVALID_CAPABILITIES_STRING + // + // MessageText: + // + // The monitor returned a DDC/CI capabilities string that did not comply + // with the ACCESS.bus=3.0, DDC/CI=1.1 or MCCS=2 Revision=1 specification. + // + int ERROR_MCA_INVALID_CAPABILITIES_STRING = 15200; + // + // MessageId: ERROR_MCA_INVALID_VCP_VERSION + // + // MessageText: + // + // The monitor's VCP Version (0xDF) VCP code returned an invalid version + // value. + // + int ERROR_MCA_INVALID_VCP_VERSION = 15201; + // + // MessageId: ERROR_MCA_MONITOR_VIOLATES_MCCS_SPECIFICATION + // + // MessageText: + // + // The monitor does not comply with the MCCS specification it claims to + // support. + // + int ERROR_MCA_MONITOR_VIOLATES_MCCS_SPECIFICATION = 15202; + // + // MessageId: ERROR_MCA_MCCS_VERSION_MISMATCH + // + // MessageText: + // + // The MCCS version in a monitor's mccs_ver capability does not match the + // MCCS version the monitor reports when the VCP Version (0xDF) VCP code is + // used. + // + int ERROR_MCA_MCCS_VERSION_MISMATCH = 15203; + // + // MessageId: ERROR_MCA_UNSUPPORTED_MCCS_VERSION + // + // MessageText: + // + // The Monitor Configuration API only works with monitors that support the + // MCCS=1.0 specification, MCCS=2.0 specification or the MCCS=2.0 Revision=1 + // specification. + // + int ERROR_MCA_UNSUPPORTED_MCCS_VERSION = 15204; + // + // MessageId: ERROR_MCA_INTERNAL_ERROR + // + // MessageText: + // + // An internal Monitor Configuration API error occurred. + // + int ERROR_MCA_INTERNAL_ERROR = 15205; + // + // MessageId: ERROR_MCA_INVALID_TECHNOLOGY_TYPE_RETURNED + // + // MessageText: + // + // The monitor returned an invalid monitor technology type. CRT, Plasma and + // LCD (TFT) are examples of monitor technology types. This error implies + // that the monitor violated the MCCS=2.0 or MCCS=2.0 Revision=1 + // specification. + // + int ERROR_MCA_INVALID_TECHNOLOGY_TYPE_RETURNED = 15206; + // + // MessageId: ERROR_MCA_UNSUPPORTED_COLOR_TEMPERATURE + // + // MessageText: + // + // The caller of SetMonitorColorTemperature specified a color temperature + // that the current monitor did not support. This error implies that the + // monitor violated the MCCS=2.0 or MCCS=2.0 Revision=1 specification. + // + int ERROR_MCA_UNSUPPORTED_COLOR_TEMPERATURE = 15207; + // //////////////////////////////////////////////// + // =// + // End of Monitor Configuration API error codes // + // =// + // =15200 to=15249=// + // =// + // //////////////////////////////////////////////// + // //////////////////////////////////////////////// + // =// + // =Start of Syspart error codes=// + // =15250 -=15299=// + // =// + // //////////////////////////////////////////////// + // + // MessageId: ERROR_AMBIGUOUS_SYSTEM_DEVICE + // + // MessageText: + // + // The requested system device cannot be identified due to multiple + // indistinguishable devices potentially matching the identification + // criteria. + // + int ERROR_AMBIGUOUS_SYSTEM_DEVICE = 15250; + // + // MessageId: ERROR_SYSTEM_DEVICE_NOT_FOUND + // + // MessageText: + // + // The requested system device cannot be found. + // + int ERROR_SYSTEM_DEVICE_NOT_FOUND = 15299; + // ////////////////////////////////// + // =// + // COM Error Codes=// + // =// + // ////////////////////////////////// + // + // The return value of COM functions and methods is an HRESULT. + // This is not a handle to anything, but is merely a=32-bit value + // with several fields encoded in the value. The parts of an + // HRESULT are shown below. + // + // Many of the macros and functions below were orginally defined to + // operate on SCODEs. SCODEs are no longer used. The macros are + // still present for compatibility and easy porting of Win16 code. + // Newly written code should use the HRESULT macros and functions. + // + // + // HRESULTs are=32 bit values layed out as follows: + // + // =3=3=2=2=2=2=2=2=2=2=2=2=1=1=1=1=1=1=1=1=1=1 + // =1 0=9=8=7=6=5=4=3=2=1 0=9=8=7=6=5=4=3=2=1 0=9=8=7=6=5=4=3=2=1 0 + // +-+-+-+-+-+---------------------+-------------------------------+ + // |S|R|C|N|r| Facility=|=Code=| + // +-+-+-+-+-+---------------------+-------------------------------+ + // + // where + // + // S - Severity - indicates success/fail + // + // =0 - Success + // =1 - Fail (COERROR) + // + // R - reserved portion of the facility code, corresponds to NT's + // =second severity bit. + // + // C - reserved portion of the facility code, corresponds to NT's + // =C field. + // + // N - reserved portion of the facility code. Used to indicate a + // =mapped NT status value. + // + // r - reserved portion of the facility code. Reserved for internal + // =use. Used to indicate HRESULT values that are not status + // =values, but are instead message ids for display strings. + // + // Facility - is the facility code + // + // Code - is the facility's status code + // + // + // Severity values + // + int SEVERITY_SUCCESS = 0; + int SEVERITY_ERROR = 1; + // + // Define bits here so macros are guaranteed to work + int FACILITY_NT_BIT = 0x10000000; + // ---------------------- HRESULT value definitions ----------------- + // + // HRESULT definitions + // + int NOERROR = 0; + // + // Error definitions follow + // + // + // Codes 0x4000-0x40ff are reserved for OLE + // + // + // Error codes + // + // + // MessageId: E_UNEXPECTED + // + // MessageText: + // + // Catastrophic failure + // + int E_UNEXPECTED = 0x8000FFFF; + // + // MessageId: E_NOTIMPL + // + // MessageText: + // + // Not implemented + // + int E_NOTIMPL = 0x80004001; + // + // MessageId: E_OUTOFMEMORY + // + // MessageText: + // + // Ran out of memory + // + int E_OUTOFMEMORY = 0x8007000E; + // + // MessageId: E_INVALIDARG + // + // MessageText: + // + // One or more arguments are invalid + // + int E_INVALIDARG = 0x80070057; + // + // MessageId: E_NOINTERFACE + // + // MessageText: + // + // No such interface supported + // + int E_NOINTERFACE = 0x80004002; + // + // MessageId: E_POINTER + // + // MessageText: + // + // Invalid pointer + // + int E_POINTER = 0x80004003; + // + // MessageId: E_HANDLE + // + // MessageText: + // + // Invalid handle + // + int E_HANDLE = 0x80070006; + // + // MessageId: E_ABORT + // + // MessageText: + // + // Operation aborted + // + int E_ABORT = 0x80004004; + // + // MessageId: E_FAIL + // + // MessageText: + // + // Unspecified error + // + int E_FAIL = 0x80004005; + // + // MessageId: E_ACCESSDENIED + // + // MessageText: + // + // General access denied error + // + int E_ACCESSDENIED = 0x80070005; + // + // MessageId: E_PENDING + // + // MessageText: + // + // The data necessary to complete this operation is not yet available. + // + int E_PENDING = 0x8000000A; + // + // MessageId: CO_E_INIT_TLS + // + // MessageText: + // + // Thread local storage failure + // + int CO_E_INIT_TLS = 0x80004006; + // + // MessageId: CO_E_INIT_SHARED_ALLOCATOR + // + // MessageText: + // + // Get shared memory allocator failure + // + int CO_E_INIT_SHARED_ALLOCATOR = 0x80004007; + // + // MessageId: CO_E_INIT_MEMORY_ALLOCATOR + // + // MessageText: + // + // Get memory allocator failure + // + int CO_E_INIT_MEMORY_ALLOCATOR = 0x80004008; + // + // MessageId: CO_E_INIT_CLASS_CACHE + // + // MessageText: + // + // Unable to initialize class cache + // + int CO_E_INIT_CLASS_CACHE = 0x80004009; + // + // MessageId: CO_E_INIT_RPC_CHANNEL + // + // MessageText: + // + // Unable to initialize RPC services + // + int CO_E_INIT_RPC_CHANNEL = 0x8000400A; + // + // MessageId: CO_E_INIT_TLS_SET_CHANNEL_CONTROL + // + // MessageText: + // + // Cannot set thread local storage channel control + // + int CO_E_INIT_TLS_SET_CHANNEL_CONTROL = 0x8000400B; + // + // MessageId: CO_E_INIT_TLS_CHANNEL_CONTROL + // + // MessageText: + // + // Could not allocate thread local storage channel control + // + int CO_E_INIT_TLS_CHANNEL_CONTROL = 0x8000400C; + // + // MessageId: CO_E_INIT_UNACCEPTED_USER_ALLOCATOR + // + // MessageText: + // + // The user supplied memory allocator is unacceptable + // + int CO_E_INIT_UNACCEPTED_USER_ALLOCATOR = 0x8000400D; + // + // MessageId: CO_E_INIT_SCM_MUTEX_EXISTS + // + // MessageText: + // + // The OLE service mutex already exists + // + int CO_E_INIT_SCM_MUTEX_EXISTS = 0x8000400E; + // + // MessageId: CO_E_INIT_SCM_FILE_MAPPING_EXISTS + // + // MessageText: + // + // The OLE service file mapping already exists + // + int CO_E_INIT_SCM_FILE_MAPPING_EXISTS = 0x8000400F; + // + // MessageId: CO_E_INIT_SCM_MAP_VIEW_OF_FILE + // + // MessageText: + // + // Unable to map view of file for OLE service + // + int CO_E_INIT_SCM_MAP_VIEW_OF_FILE = 0x80004010; + // + // MessageId: CO_E_INIT_SCM_EXEC_FAILURE + // + // MessageText: + // + // Failure attempting to launch OLE service + // + int CO_E_INIT_SCM_EXEC_FAILURE = 0x80004011; + // + // MessageId: CO_E_INIT_ONLY_SINGLE_THREADED + // + // MessageText: + // + // There was an attempt to call CoInitialize a second time while single + // threaded + // + int CO_E_INIT_ONLY_SINGLE_THREADED = 0x80004012; + // + // MessageId: CO_E_CANT_REMOTE + // + // MessageText: + // + // A Remote activation was necessary but was not allowed + // + int CO_E_CANT_REMOTE = 0x80004013; + // + // MessageId: CO_E_BAD_SERVER_NAME + // + // MessageText: + // + // A Remote activation was necessary but the server name provided was + // invalid + // + int CO_E_BAD_SERVER_NAME = 0x80004014; + // + // MessageId: CO_E_WRONG_SERVER_IDENTITY + // + // MessageText: + // + // The class is configured to run as a security id different from the caller + // + int CO_E_WRONG_SERVER_IDENTITY = 0x80004015; + // + // MessageId: CO_E_OLE1DDE_DISABLED + // + // MessageText: + // + // Use of Ole1 services requiring DDE windows is disabled + // + int CO_E_OLE1DDE_DISABLED = 0x80004016; + // + // MessageId: CO_E_RUNAS_SYNTAX + // + // MessageText: + // + // A RunAs specification must be \ or simply + // + int CO_E_RUNAS_SYNTAX = 0x80004017; + // + // MessageId: CO_E_CREATEPROCESS_FAILURE + // + // MessageText: + // + // The server process could not be started. The pathname may be incorrect. + // + int CO_E_CREATEPROCESS_FAILURE = 0x80004018; + // + // MessageId: CO_E_RUNAS_CREATEPROCESS_FAILURE + // + // MessageText: + // + // The server process could not be started as the configured identity. The + // pathname may be incorrect or unavailable. + // + int CO_E_RUNAS_CREATEPROCESS_FAILURE = 0x80004019; + // + // MessageId: CO_E_RUNAS_LOGON_FAILURE + // + // MessageText: + // + // The server process could not be started because the configured identity + // is incorrect. Check the username and password. + // + int CO_E_RUNAS_LOGON_FAILURE = 0x8000401A; + // + // MessageId: CO_E_LAUNCH_PERMSSION_DENIED + // + // MessageText: + // + // The client is not allowed to launch this server. + // + int CO_E_LAUNCH_PERMSSION_DENIED = 0x8000401B; + // + // MessageId: CO_E_START_SERVICE_FAILURE + // + // MessageText: + // + // The service providing this server could not be started. + // + int CO_E_START_SERVICE_FAILURE = 0x8000401C; + // + // MessageId: CO_E_REMOTE_COMMUNICATION_FAILURE + // + // MessageText: + // + // This computer was unable to communicate with the computer providing the + // server. + // + int CO_E_REMOTE_COMMUNICATION_FAILURE = 0x8000401D; + // + // MessageId: CO_E_SERVER_START_TIMEOUT + // + // MessageText: + // + // The server did not respond after being launched. + // + int CO_E_SERVER_START_TIMEOUT = 0x8000401E; + // + // MessageId: CO_E_CLSREG_INCONSISTENT + // + // MessageText: + // + // The registration information for this server is inconsistent or + // incomplete. + // + int CO_E_CLSREG_INCONSISTENT = 0x8000401F; + // + // MessageId: CO_E_IIDREG_INCONSISTENT + // + // MessageText: + // + // The registration information for this interface is inconsistent or + // incomplete. + // + int CO_E_IIDREG_INCONSISTENT = 0x80004020; + // + // MessageId: CO_E_NOT_SUPPORTED + // + // MessageText: + // + // The operation attempted is not supported. + // + int CO_E_NOT_SUPPORTED = 0x80004021; + // + // MessageId: CO_E_RELOAD_DLL + // + // MessageText: + // + // A dll must be loaded. + // + int CO_E_RELOAD_DLL = 0x80004022; + // + // MessageId: CO_E_MSI_ERROR + // + // MessageText: + // + // A Microsoft Software Installer error was encountered. + // + int CO_E_MSI_ERROR = 0x80004023; + // + // MessageId: CO_E_ATTEMPT_TO_CREATE_OUTSIDE_CLIENT_CONTEXT + // + // MessageText: + // + // The specified activation could not occur in the client context as + // specified. + // + int CO_E_ATTEMPT_TO_CREATE_OUTSIDE_CLIENT_CONTEXT = 0x80004024; + // + // MessageId: CO_E_SERVER_PAUSED + // + // MessageText: + // + // Activations on the server are paused. + // + int CO_E_SERVER_PAUSED = 0x80004025; + // + // MessageId: CO_E_SERVER_NOT_PAUSED + // + // MessageText: + // + // Activations on the server are not paused. + // + int CO_E_SERVER_NOT_PAUSED = 0x80004026; + // + // MessageId: CO_E_CLASS_DISABLED + // + // MessageText: + // + // The component or application containing the component has been disabled. + // + int CO_E_CLASS_DISABLED = 0x80004027; + // + // MessageId: CO_E_CLRNOTAVAILABLE + // + // MessageText: + // + // The common language runtime is not available + // + int CO_E_CLRNOTAVAILABLE = 0x80004028; + // + // MessageId: CO_E_ASYNC_WORK_REJECTED + // + // MessageText: + // + // The thread-pool rejected the submitted asynchronous work. + // + int CO_E_ASYNC_WORK_REJECTED = 0x80004029; + // + // MessageId: CO_E_SERVER_INIT_TIMEOUT + // + // MessageText: + // + // The server started, but did not finish initializing in a timely fashion. + // + int CO_E_SERVER_INIT_TIMEOUT = 0x8000402A; + // + // MessageId: CO_E_NO_SECCTX_IN_ACTIVATE + // + // MessageText: + // + // Unable to complete the call since there is no COM+ security context + // inside IObjectControl.Activate. + // + int CO_E_NO_SECCTX_IN_ACTIVATE = 0x8000402B; + // + // MessageId: CO_E_TRACKER_CONFIG + // + // MessageText: + // + // The provided tracker configuration is invalid + // + int CO_E_TRACKER_CONFIG = 0x80004030; + // + // MessageId: CO_E_THREADPOOL_CONFIG + // + // MessageText: + // + // The provided thread pool configuration is invalid + // + int CO_E_THREADPOOL_CONFIG = 0x80004031; + // + // MessageId: CO_E_SXS_CONFIG + // + // MessageText: + // + // The provided side-by-side configuration is invalid + // + int CO_E_SXS_CONFIG = 0x80004032; + // + // MessageId: CO_E_MALFORMED_SPN + // + // MessageText: + // + // The server principal name (SPN) obtained during security negotiation is + // malformed. + // + int CO_E_MALFORMED_SPN = 0x80004033; + // + // Success codes + // + HRESULT S_OK = new HRESULT(0); + HRESULT S_FALSE = new HRESULT(1); + // ****************** + // FACILITY_ITF + // ****************** + // + // Codes 0x0-0x01ff are reserved for the OLE group of + // interfaces. + // + // + // Generic OLE errors that may be returned by many inerfaces + // + int OLE_E_FIRST = 0x80040000; + int OLE_E_LAST = 0x800400FF; + int OLE_S_FIRST = 0x00040000; + int OLE_S_LAST = 0x000400FF; + // + // Old OLE errors + // + // + // MessageId: OLE_E_OLEVERB + // + // MessageText: + // + // Invalid OLEVERB structure + // + int OLE_E_OLEVERB = 0x80040000; + // + // MessageId: OLE_E_ADVF + // + // MessageText: + // + // Invalid advise flags + // + int OLE_E_ADVF = 0x80040001; + // + // MessageId: OLE_E_ENUM_NOMORE + // + // MessageText: + // + // Can't enumerate any more, because the associated data is missing + // + int OLE_E_ENUM_NOMORE = 0x80040002; + // + // MessageId: OLE_E_ADVISENOTSUPPORTED + // + // MessageText: + // + // This implementation doesn't take advises + // + int OLE_E_ADVISENOTSUPPORTED = 0x80040003; + // + // MessageId: OLE_E_NOCONNECTION + // + // MessageText: + // + // There is no connection for this connection ID + // + int OLE_E_NOCONNECTION = 0x80040004; + // + // MessageId: OLE_E_NOTRUNNING + // + // MessageText: + // + // Need to run the object to perform this operation + // + int OLE_E_NOTRUNNING = 0x80040005; + // + // MessageId: OLE_E_NOCACHE + // + // MessageText: + // + // There is no cache to operate on + // + int OLE_E_NOCACHE = 0x80040006; + // + // MessageId: OLE_E_BLANK + // + // MessageText: + // + // Uninitialized object + // + int OLE_E_BLANK = 0x80040007; + // + // MessageId: OLE_E_CLASSDIFF + // + // MessageText: + // + // Linked object's source class has changed + // + int OLE_E_CLASSDIFF = 0x80040008; + // + // MessageId: OLE_E_CANT_GETMONIKER + // + // MessageText: + // + // Not able to get the moniker of the object + // + int OLE_E_CANT_GETMONIKER = 0x80040009; + // + // MessageId: OLE_E_CANT_BINDTOSOURCE + // + // MessageText: + // + // Not able to bind to the source + // + int OLE_E_CANT_BINDTOSOURCE = 0x8004000A; + // + // MessageId: OLE_E_STATIC + // + // MessageText: + // + // Object is static; operation not allowed + // + int OLE_E_STATIC = 0x8004000B; + // + // MessageId: OLE_E_PROMPTSAVECANCELLED + // + // MessageText: + // + // User canceled out of save dialog + // + int OLE_E_PROMPTSAVECANCELLED = 0x8004000C; + // + // MessageId: OLE_E_INVALIDRECT + // + // MessageText: + // + // Invalid rectangle + // + int OLE_E_INVALIDRECT = 0x8004000D; + // + // MessageId: OLE_E_WRONGCOMPOBJ + // + // MessageText: + // + // compobj.dll is too old for the ole2.dll initialized + // + int OLE_E_WRONGCOMPOBJ = 0x8004000E; + // + // MessageId: OLE_E_INVALIDHWND + // + // MessageText: + // + // Invalid window handle + // + int OLE_E_INVALIDHWND = 0x8004000F; + // + // MessageId: OLE_E_NOT_INPLACEACTIVE + // + // MessageText: + // + // Object is not in any of the inplace active states + // + int OLE_E_NOT_INPLACEACTIVE = 0x80040010; + // + // MessageId: OLE_E_CANTCONVERT + // + // MessageText: + // + // Not able to convert object + // + int OLE_E_CANTCONVERT = 0x80040011; + // + // MessageId: OLE_E_NOSTORAGE + // + // MessageText: + // + // Not able to perform the operation because object is not given storage yet + // + int OLE_E_NOSTORAGE = 0x80040012; + // + // MessageId: DV_E_FORMATETC + // + // MessageText: + // + // Invalid FORMATETC structure + // + int DV_E_FORMATETC = 0x80040064; + // + // MessageId: DV_E_DVTARGETDEVICE + // + // MessageText: + // + // Invalid DVTARGETDEVICE structure + // + int DV_E_DVTARGETDEVICE = 0x80040065; + // + // MessageId: DV_E_STGMEDIUM + // + // MessageText: + // + // Invalid STDGMEDIUM structure + // + int DV_E_STGMEDIUM = 0x80040066; + // + // MessageId: DV_E_STATDATA + // + // MessageText: + // + // Invalid STATDATA structure + // + int DV_E_STATDATA = 0x80040067; + // + // MessageId: DV_E_LINDEX + // + // MessageText: + // + // Invalid lindex + // + int DV_E_LINDEX = 0x80040068; + // + // MessageId: DV_E_TYMED + // + // MessageText: + // + // Invalid tymed + // + int DV_E_TYMED = 0x80040069; + // + // MessageId: DV_E_CLIPFORMAT + // + // MessageText: + // + // Invalid clipboard format + // + int DV_E_CLIPFORMAT = 0x8004006A; + // + // MessageId: DV_E_DVASPECT + // + // MessageText: + // + // Invalid aspect(s) + // + int DV_E_DVASPECT = 0x8004006B; + // + // MessageId: DV_E_DVTARGETDEVICE_SIZE + // + // MessageText: + // + // tdSize parameter of the DVTARGETDEVICE structure is invalid + // + int DV_E_DVTARGETDEVICE_SIZE = 0x8004006C; + // + // MessageId: DV_E_NOIVIEWOBJECT + // + // MessageText: + // + // Object doesn't support IViewObject interface + // + int DV_E_NOIVIEWOBJECT = 0x8004006D; + int DRAGDROP_E_FIRST = 0x80040100; + int DRAGDROP_E_LAST = 0x8004010F; + int DRAGDROP_S_FIRST = 0x00040100; + int DRAGDROP_S_LAST = 0x0004010F; + // + // MessageId: DRAGDROP_E_NOTREGISTERED + // + // MessageText: + // + // Trying to revoke a drop target that has not been registered + // + int DRAGDROP_E_NOTREGISTERED = 0x80040100; + // + // MessageId: DRAGDROP_E_ALREADYREGISTERED + // + // MessageText: + // + // This window has already been registered as a drop target + // + int DRAGDROP_E_ALREADYREGISTERED = 0x80040101; + // + // MessageId: DRAGDROP_E_INVALIDHWND + // + // MessageText: + // + // Invalid window handle + // + int DRAGDROP_E_INVALIDHWND = 0x80040102; + int CLASSFACTORY_E_FIRST = 0x80040110; + int CLASSFACTORY_E_LAST = 0x8004011F; + int CLASSFACTORY_S_FIRST = 0x00040110; + int CLASSFACTORY_S_LAST = 0x0004011F; + // + // MessageId: CLASS_E_NOAGGREGATION + // + // MessageText: + // + // Class does not support aggregation (or class object is remote) + // + int CLASS_E_NOAGGREGATION = 0x80040110; + // + // MessageId: CLASS_E_CLASSNOTAVAILABLE + // + // MessageText: + // + // ClassFactory cannot supply requested class + // + int CLASS_E_CLASSNOTAVAILABLE = 0x80040111; + // + // MessageId: CLASS_E_NOTLICENSED + // + // MessageText: + // + // Class is not licensed for use + // + int CLASS_E_NOTLICENSED = 0x80040112; + int MARSHAL_E_FIRST = 0x80040120; + int MARSHAL_E_LAST = 0x8004012F; + int MARSHAL_S_FIRST = 0x00040120; + int MARSHAL_S_LAST = 0x0004012F; + int DATA_E_FIRST = 0x80040130; + int DATA_E_LAST = 0x8004013F; + int DATA_S_FIRST = 0x00040130; + int DATA_S_LAST = 0x0004013F; + int VIEW_E_FIRST = 0x80040140; + int VIEW_E_LAST = 0x8004014F; + int VIEW_S_FIRST = 0x00040140; + int VIEW_S_LAST = 0x0004014F; + // + // MessageId: VIEW_E_DRAW + // + // MessageText: + // + // Error drawing view + // + int VIEW_E_DRAW = 0x80040140; + int REGDB_E_FIRST = 0x80040150; + int REGDB_E_LAST = 0x8004015F; + int REGDB_S_FIRST = 0x00040150; + int REGDB_S_LAST = 0x0004015F; + // + // MessageId: REGDB_E_READREGDB + // + // MessageText: + // + // Could not read key from registry + // + int REGDB_E_READREGDB = 0x80040150; + // + // MessageId: REGDB_E_WRITEREGDB + // + // MessageText: + // + // Could not write key to registry + // + int REGDB_E_WRITEREGDB = 0x80040151; + // + // MessageId: REGDB_E_KEYMISSING + // + // MessageText: + // + // Could not find the key in the registry + // + int REGDB_E_KEYMISSING = 0x80040152; + // + // MessageId: REGDB_E_INVALIDVALUE + // + // MessageText: + // + // Invalid value for registry + // + int REGDB_E_INVALIDVALUE = 0x80040153; + // + // MessageId: REGDB_E_CLASSNOTREG + // + // MessageText: + // + // Class not registered + // + int REGDB_E_CLASSNOTREG = 0x80040154; + // + // MessageId: REGDB_E_IIDNOTREG + // + // MessageText: + // + // Interface not registered + // + int REGDB_E_IIDNOTREG = 0x80040155; + // + // MessageId: REGDB_E_BADTHREADINGMODEL + // + // MessageText: + // + // Threading model entry is not valid + // + int REGDB_E_BADTHREADINGMODEL = 0x80040156; + int CAT_E_FIRST = 0x80040160; + int CAT_E_LAST = 0x80040161; + // + // MessageId: CAT_E_CATIDNOEXIST + // + // MessageText: + // + // CATID does not exist + // + int CAT_E_CATIDNOEXIST = 0x80040160; + // + // MessageId: CAT_E_NODESCRIPTION + // + // MessageText: + // + // Description not found + // + int CAT_E_NODESCRIPTION = 0x80040161; + // ////////////////////////////////// + // =// + // Class Store Error Codes // + // =// + // ////////////////////////////////// + int CS_E_FIRST = 0x80040164; + int CS_E_LAST = 0x8004016F; + // + // MessageId: CS_E_PACKAGE_NOTFOUND + // + // MessageText: + // + // No package in the software installation data in the Active Directory + // meets this criteria. + // + int CS_E_PACKAGE_NOTFOUND = 0x80040164; + // + // MessageId: CS_E_NOT_DELETABLE + // + // MessageText: + // + // Deleting this will break the referential integrity of the software + // installation data in the Active Directory. + // + int CS_E_NOT_DELETABLE = 0x80040165; + // + // MessageId: CS_E_CLASS_NOTFOUND + // + // MessageText: + // + // The CLSID was not found in the software installation data in the Active + // Directory. + // + int CS_E_CLASS_NOTFOUND = 0x80040166; + // + // MessageId: CS_E_INVALID_VERSION + // + // MessageText: + // + // The software installation data in the Active Directory is corrupt. + // + int CS_E_INVALID_VERSION = 0x80040167; + // + // MessageId: CS_E_NO_CLASSSTORE + // + // MessageText: + // + // There is no software installation data in the Active Directory. + // + int CS_E_NO_CLASSSTORE = 0x80040168; + // + // MessageId: CS_E_OBJECT_NOTFOUND + // + // MessageText: + // + // There is no software installation data object in the Active Directory. + // + int CS_E_OBJECT_NOTFOUND = 0x80040169; + // + // MessageId: CS_E_OBJECT_ALREADY_EXISTS + // + // MessageText: + // + // The software installation data object in the Active Directory already + // exists. + // + int CS_E_OBJECT_ALREADY_EXISTS = 0x8004016A; + // + // MessageId: CS_E_INVALID_PATH + // + // MessageText: + // + // The path to the software installation data in the Active Directory is not + // correct. + // + int CS_E_INVALID_PATH = 0x8004016B; + // + // MessageId: CS_E_NETWORK_ERROR + // + // MessageText: + // + // A network error interrupted the operation. + // + int CS_E_NETWORK_ERROR = 0x8004016C; + // + // MessageId: CS_E_ADMIN_LIMIT_EXCEEDED + // + // MessageText: + // + // The size of this object exceeds the maximum size set by the + // Administrator. + // + int CS_E_ADMIN_LIMIT_EXCEEDED = 0x8004016D; + // + // MessageId: CS_E_SCHEMA_MISMATCH + // + // MessageText: + // + // The schema for the software installation data in the Active Directory + // does not match the required schema. + // + int CS_E_SCHEMA_MISMATCH = 0x8004016E; + // + // MessageId: CS_E_INTERNAL_ERROR + // + // MessageText: + // + // An error occurred in the software installation data in the Active + // Directory. + // + int CS_E_INTERNAL_ERROR = 0x8004016F; + int CACHE_E_FIRST = 0x80040170; + int CACHE_E_LAST = 0x8004017F; + int CACHE_S_FIRST = 0x00040170; + int CACHE_S_LAST = 0x0004017F; + // + // MessageId: CACHE_E_NOCACHE_UPDATED + // + // MessageText: + // + // Cache not updated + // + int CACHE_E_NOCACHE_UPDATED = 0x80040170; + int OLEOBJ_E_FIRST = 0x80040180; + int OLEOBJ_E_LAST = 0x8004018F; + int OLEOBJ_S_FIRST = 0x00040180; + int OLEOBJ_S_LAST = 0x0004018F; + // + // MessageId: OLEOBJ_E_NOVERBS + // + // MessageText: + // + // No verbs for OLE object + // + int OLEOBJ_E_NOVERBS = 0x80040180; + // + // MessageId: OLEOBJ_E_INVALIDVERB + // + // MessageText: + // + // Invalid verb for OLE object + // + int OLEOBJ_E_INVALIDVERB = 0x80040181; + int CLIENTSITE_E_FIRST = 0x80040190; + int CLIENTSITE_E_LAST = 0x8004019F; + int CLIENTSITE_S_FIRST = 0x00040190; + int CLIENTSITE_S_LAST = 0x0004019F; + // + // MessageId: INPLACE_E_NOTUNDOABLE + // + // MessageText: + // + // Undo is not available + // + int INPLACE_E_NOTUNDOABLE = 0x800401A0; + // + // MessageId: INPLACE_E_NOTOOLSPACE + // + // MessageText: + // + // Space for tools is not available + // + int INPLACE_E_NOTOOLSPACE = 0x800401A1; + int INPLACE_E_FIRST = 0x800401A0; + int INPLACE_E_LAST = 0x800401AF; + int INPLACE_S_FIRST = 0x000401A0; + int INPLACE_S_LAST = 0x000401AF; + int ENUM_E_FIRST = 0x800401B0; + int ENUM_E_LAST = 0x800401BF; + int ENUM_S_FIRST = 0x000401B0; + int ENUM_S_LAST = 0x000401BF; + int CONVERT10_E_FIRST = 0x800401C0; + int CONVERT10_E_LAST = 0x800401CF; + int CONVERT10_S_FIRST = 0x000401C0; + int CONVERT10_S_LAST = 0x000401CF; + // + // MessageId: CONVERT10_E_OLESTREAM_GET + // + // MessageText: + // + // OLESTREAM Get method failed + // + int CONVERT10_E_OLESTREAM_GET = 0x800401C0; + // + // MessageId: CONVERT10_E_OLESTREAM_PUT + // + // MessageText: + // + // OLESTREAM Put method failed + // + int CONVERT10_E_OLESTREAM_PUT = 0x800401C1; + // + // MessageId: CONVERT10_E_OLESTREAM_FMT + // + // MessageText: + // + // Contents of the OLESTREAM not in correct format + // + int CONVERT10_E_OLESTREAM_FMT = 0x800401C2; + // + // MessageId: CONVERT10_E_OLESTREAM_BITMAP_TO_DIB + // + // MessageText: + // + // There was an error in a Windows GDI call while converting the bitmap to a + // DIB + // + int CONVERT10_E_OLESTREAM_BITMAP_TO_DIB = 0x800401C3; + // + // MessageId: CONVERT10_E_STG_FMT + // + // MessageText: + // + // Contents of the IStorage not in correct format + // + int CONVERT10_E_STG_FMT = 0x800401C4; + // + // MessageId: CONVERT10_E_STG_NO_STD_STREAM + // + // MessageText: + // + // Contents of IStorage is missing one of the standard streams + // + int CONVERT10_E_STG_NO_STD_STREAM = 0x800401C5; + // + // MessageId: CONVERT10_E_STG_DIB_TO_BITMAP + // + // MessageText: + // + // There was an error in a Windows GDI call while converting the DIB to a + // bitmap. + // + // + int CONVERT10_E_STG_DIB_TO_BITMAP = 0x800401C6; + int CLIPBRD_E_FIRST = 0x800401D0; + int CLIPBRD_E_LAST = 0x800401DF; + int CLIPBRD_S_FIRST = 0x000401D0; + int CLIPBRD_S_LAST = 0x000401DF; + // + // MessageId: CLIPBRD_E_CANT_OPEN + // + // MessageText: + // + // OpenClipboard Failed + // + int CLIPBRD_E_CANT_OPEN = 0x800401D0; + // + // MessageId: CLIPBRD_E_CANT_EMPTY + // + // MessageText: + // + // EmptyClipboard Failed + // + int CLIPBRD_E_CANT_EMPTY = 0x800401D1; + // + // MessageId: CLIPBRD_E_CANT_SET + // + // MessageText: + // + // SetClipboard Failed + // + int CLIPBRD_E_CANT_SET = 0x800401D2; + // + // MessageId: CLIPBRD_E_BAD_DATA + // + // MessageText: + // + // Data on clipboard is invalid + // + int CLIPBRD_E_BAD_DATA = 0x800401D3; + // + // MessageId: CLIPBRD_E_CANT_CLOSE + // + // MessageText: + // + // CloseClipboard Failed + // + int CLIPBRD_E_CANT_CLOSE = 0x800401D4; + int MK_E_FIRST = 0x800401E0; + int MK_E_LAST = 0x800401EF; + int MK_S_FIRST = 0x000401E0; + int MK_S_LAST = 0x000401EF; + // + // MessageId: MK_E_CONNECTMANUALLY + // + // MessageText: + // + // Moniker needs to be connected manually + // + int MK_E_CONNECTMANUALLY = 0x800401E0; + // + // MessageId: MK_E_EXCEEDEDDEADLINE + // + // MessageText: + // + // Operation exceeded deadline + // + int MK_E_EXCEEDEDDEADLINE = 0x800401E1; + // + // MessageId: MK_E_NEEDGENERIC + // + // MessageText: + // + // Moniker needs to be generic + // + int MK_E_NEEDGENERIC = 0x800401E2; + // + // MessageId: MK_E_UNAVAILABLE + // + // MessageText: + // + // Operation unavailable + // + int MK_E_UNAVAILABLE = 0x800401E3; + // + // MessageId: MK_E_SYNTAX + // + // MessageText: + // + // Invalid syntax + // + int MK_E_SYNTAX = 0x800401E4; + // + // MessageId: MK_E_NOOBJECT + // + // MessageText: + // + // No object for moniker + // + int MK_E_NOOBJECT = 0x800401E5; + // + // MessageId: MK_E_INVALIDEXTENSION + // + // MessageText: + // + // Bad extension for file + // + int MK_E_INVALIDEXTENSION = 0x800401E6; + // + // MessageId: MK_E_INTERMEDIATEINTERFACENOTSUPPORTED + // + // MessageText: + // + // Intermediate operation failed + // + int MK_E_INTERMEDIATEINTERFACENOTSUPPORTED = 0x800401E7; + // + // MessageId: MK_E_NOTBINDABLE + // + // MessageText: + // + // Moniker is not bindable + // + int MK_E_NOTBINDABLE = 0x800401E8; + // + // MessageId: MK_E_NOTBOUND + // + // MessageText: + // + // Moniker is not bound + // + int MK_E_NOTBOUND = 0x800401E9; + // + // MessageId: MK_E_CANTOPENFILE + // + // MessageText: + // + // Moniker cannot open file + // + int MK_E_CANTOPENFILE = 0x800401EA; + // + // MessageId: MK_E_MUSTBOTHERUSER + // + // MessageText: + // + // User input required for operation to succeed + // + int MK_E_MUSTBOTHERUSER = 0x800401EB; + // + // MessageId: MK_E_NOINVERSE + // + // MessageText: + // + // Moniker class has no inverse + // + int MK_E_NOINVERSE = 0x800401EC; + // + // MessageId: MK_E_NOSTORAGE + // + // MessageText: + // + // Moniker does not refer to storage + // + int MK_E_NOSTORAGE = 0x800401ED; + // + // MessageId: MK_E_NOPREFIX + // + // MessageText: + // + // No common prefix + // + int MK_E_NOPREFIX = 0x800401EE; + // + // MessageId: MK_E_ENUMERATION_FAILED + // + // MessageText: + // + // Moniker could not be enumerated + // + int MK_E_ENUMERATION_FAILED = 0x800401EF; + int CO_E_FIRST = 0x800401F0; + int CO_E_LAST = 0x800401FF; + int CO_S_FIRST = 0x000401F0; + int CO_S_LAST = 0x000401FF; + // + // MessageId: CO_E_NOTINITIALIZED + // + // MessageText: + // + // CoInitialize has not been called. + // + int CO_E_NOTINITIALIZED = 0x800401F0; + // + // MessageId: CO_E_ALREADYINITIALIZED + // + // MessageText: + // + // CoInitialize has already been called. + // + int CO_E_ALREADYINITIALIZED = 0x800401F1; + // + // MessageId: CO_E_CANTDETERMINECLASS + // + // MessageText: + // + // Class of object cannot be determined + // + int CO_E_CANTDETERMINECLASS = 0x800401F2; + // + // MessageId: CO_E_CLASSSTRING + // + // MessageText: + // + // Invalid class string + // + int CO_E_CLASSSTRING = 0x800401F3; + // + // MessageId: CO_E_IIDSTRING + // + // MessageText: + // + // Invalid interface string + // + int CO_E_IIDSTRING = 0x800401F4; + // + // MessageId: CO_E_APPNOTFOUND + // + // MessageText: + // + // Application not found + // + int CO_E_APPNOTFOUND = 0x800401F5; + // + // MessageId: CO_E_APPSINGLEUSE + // + // MessageText: + // + // Application cannot be run more than once + // + int CO_E_APPSINGLEUSE = 0x800401F6; + // + // MessageId: CO_E_ERRORINAPP + // + // MessageText: + // + // Some error in application program + // + int CO_E_ERRORINAPP = 0x800401F7; + // + // MessageId: CO_E_DLLNOTFOUND + // + // MessageText: + // + // DLL for class not found + // + int CO_E_DLLNOTFOUND = 0x800401F8; + // + // MessageId: CO_E_ERRORINDLL + // + // MessageText: + // + // Error in the DLL + // + int CO_E_ERRORINDLL = 0x800401F9; + // + // MessageId: CO_E_WRONGOSFORAPP + // + // MessageText: + // + // Wrong OS or OS version for application + // + int CO_E_WRONGOSFORAPP = 0x800401FA; + // + // MessageId: CO_E_OBJNOTREG + // + // MessageText: + // + // Object is not registered + // + int CO_E_OBJNOTREG = 0x800401FB; + // + // MessageId: CO_E_OBJISREG + // + // MessageText: + // + // Object is already registered + // + int CO_E_OBJISREG = 0x800401FC; + // + // MessageId: CO_E_OBJNOTCONNECTED + // + // MessageText: + // + // Object is not connected to server + // + int CO_E_OBJNOTCONNECTED = 0x800401FD; + // + // MessageId: CO_E_APPDIDNTREG + // + // MessageText: + // + // Application was launched but it didn't register a class factory + // + int CO_E_APPDIDNTREG = 0x800401FE; + // + // MessageId: CO_E_RELEASED + // + // MessageText: + // + // Object has been released + // + int CO_E_RELEASED = 0x800401FF; + int EVENT_E_FIRST = 0x80040200; + int EVENT_E_LAST = 0x8004021F; + int EVENT_S_FIRST = 0x00040200; + int EVENT_S_LAST = 0x0004021F; + // + // MessageId: EVENT_S_SOME_SUBSCRIBERS_FAILED + // + // MessageText: + // + // An event was able to invoke some but not all of the subscribers + // + int EVENT_S_SOME_SUBSCRIBERS_FAILED = 0x00040200; + // + // MessageId: EVENT_E_ALL_SUBSCRIBERS_FAILED + // + // MessageText: + // + // An event was unable to invoke any of the subscribers + // + int EVENT_E_ALL_SUBSCRIBERS_FAILED = 0x80040201; + // + // MessageId: EVENT_S_NOSUBSCRIBERS + // + // MessageText: + // + // An event was delivered but there were no subscribers + // + int EVENT_S_NOSUBSCRIBERS = 0x00040202; + // + // MessageId: EVENT_E_QUERYSYNTAX + // + // MessageText: + // + // A syntax error occurred trying to evaluate a query string + // + int EVENT_E_QUERYSYNTAX = 0x80040203; + // + // MessageId: EVENT_E_QUERYFIELD + // + // MessageText: + // + // An invalid field name was used in a query string + // + int EVENT_E_QUERYFIELD = 0x80040204; + // + // MessageId: EVENT_E_INTERNALEXCEPTION + // + // MessageText: + // + // An unexpected exception was raised + // + int EVENT_E_INTERNALEXCEPTION = 0x80040205; + // + // MessageId: EVENT_E_INTERNALERROR + // + // MessageText: + // + // An unexpected internal error was detected + // + int EVENT_E_INTERNALERROR = 0x80040206; + // + // MessageId: EVENT_E_INVALID_PER_USER_SID + // + // MessageText: + // + // The owner SID on a per-user subscription doesn't exist + // + int EVENT_E_INVALID_PER_USER_SID = 0x80040207; + // + // MessageId: EVENT_E_USER_EXCEPTION + // + // MessageText: + // + // A user-supplied component or subscriber raised an exception + // + int EVENT_E_USER_EXCEPTION = 0x80040208; + // + // MessageId: EVENT_E_TOO_MANY_METHODS + // + // MessageText: + // + // An interface has too many methods to fire events from + // + int EVENT_E_TOO_MANY_METHODS = 0x80040209; + // + // MessageId: EVENT_E_MISSING_EVENTCLASS + // + // MessageText: + // + // A subscription cannot be stored unless its event class already exists + // + int EVENT_E_MISSING_EVENTCLASS = 0x8004020A; + // + // MessageId: EVENT_E_NOT_ALL_REMOVED + // + // MessageText: + // + // Not all the objects requested could be removed + // + int EVENT_E_NOT_ALL_REMOVED = 0x8004020B; + // + // MessageId: EVENT_E_COMPLUS_NOT_INSTALLED + // + // MessageText: + // + // COM+ is required for this operation, but is not installed + // + int EVENT_E_COMPLUS_NOT_INSTALLED = 0x8004020C; + // + // MessageId: EVENT_E_CANT_MODIFY_OR_DELETE_UNCONFIGURED_OBJECT + // + // MessageText: + // + // Cannot modify or delete an object that was not added using the COM+ Admin + // SDK + // + int EVENT_E_CANT_MODIFY_OR_DELETE_UNCONFIGURED_OBJECT = 0x8004020D; + // + // MessageId: EVENT_E_CANT_MODIFY_OR_DELETE_CONFIGURED_OBJECT + // + // MessageText: + // + // Cannot modify or delete an object that was added using the COM+ Admin SDK + // + int EVENT_E_CANT_MODIFY_OR_DELETE_CONFIGURED_OBJECT = 0x8004020E; + // + // MessageId: EVENT_E_INVALID_EVENT_CLASS_PARTITION + // + // MessageText: + // + // The event class for this subscription is in an invalid partition + // + int EVENT_E_INVALID_EVENT_CLASS_PARTITION = 0x8004020F; + // + // MessageId: EVENT_E_PER_USER_SID_NOT_LOGGED_ON + // + // MessageText: + // + // The owner of the PerUser subscription is not logged on to the system + // specified + // + int EVENT_E_PER_USER_SID_NOT_LOGGED_ON = 0x80040210; + int XACT_E_FIRST = 0x8004D000; + int XACT_E_LAST = 0x8004D029; + int XACT_S_FIRST = 0x0004D000; + int XACT_S_LAST = 0x0004D010; + // + // MessageId: XACT_E_ALREADYOTHERSINGLEPHASE + // + // MessageText: + // + // Another single phase resource manager has already been enlisted in this + // transaction. + // + int XACT_E_ALREADYOTHERSINGLEPHASE = 0x8004D000; + // + // MessageId: XACT_E_CANTRETAIN + // + // MessageText: + // + // A retaining commit or abort is not supported + // + int XACT_E_CANTRETAIN = 0x8004D001; + // + // MessageId: XACT_E_COMMITFAILED + // + // MessageText: + // + // The transaction failed to commit for an unknown reason. The transaction + // was aborted. + // + int XACT_E_COMMITFAILED = 0x8004D002; + // + // MessageId: XACT_E_COMMITPREVENTED + // + // MessageText: + // + // Cannot call commit on this transaction object because the calling + // application did not initiate the transaction. + // + int XACT_E_COMMITPREVENTED = 0x8004D003; + // + // MessageId: XACT_E_HEURISTICABORT + // + // MessageText: + // + // Instead of committing, the resource heuristically aborted. + // + int XACT_E_HEURISTICABORT = 0x8004D004; + // + // MessageId: XACT_E_HEURISTICCOMMIT + // + // MessageText: + // + // Instead of aborting, the resource heuristically committed. + // + int XACT_E_HEURISTICCOMMIT = 0x8004D005; + // + // MessageId: XACT_E_HEURISTICDAMAGE + // + // MessageText: + // + // Some of the states of the resource were committed while others were + // aborted, likely because of heuristic decisions. + // + int XACT_E_HEURISTICDAMAGE = 0x8004D006; + // + // MessageId: XACT_E_HEURISTICDANGER + // + // MessageText: + // + // Some of the states of the resource may have been committed while others + // may have been aborted, likely because of heuristic decisions. + // + int XACT_E_HEURISTICDANGER = 0x8004D007; + // + // MessageId: XACT_E_ISOLATIONLEVEL + // + // MessageText: + // + // The requested isolation level is not valid or supported. + // + int XACT_E_ISOLATIONLEVEL = 0x8004D008; + // + // MessageId: XACT_E_NOASYNC + // + // MessageText: + // + // The transaction manager doesn't support an asynchronous operation for + // this method. + // + int XACT_E_NOASYNC = 0x8004D009; + // + // MessageId: XACT_E_NOENLIST + // + // MessageText: + // + // Unable to enlist in the transaction. + // + int XACT_E_NOENLIST = 0x8004D00A; + // + // MessageId: XACT_E_NOISORETAIN + // + // MessageText: + // + // The requested semantics of retention of isolation across retaining commit + // and abort boundaries cannot be supported by this transaction + // implementation, or isoF;ags was not equal to zero. + // + int XACT_E_NOISORETAIN = 0x8004D00B; + // + // MessageId: XACT_E_NORESOURCE + // + // MessageText: + // + // There is no resource presently associated with this enlistment + // + int XACT_E_NORESOURCE = 0x8004D00C; + // + // MessageId: XACT_E_NOTCURRENT + // + // MessageText: + // + // The transaction failed to commit due to the failure of optimistic + // concurrency control in at least one of the resource managers. + // + int XACT_E_NOTCURRENT = 0x8004D00D; + // + // MessageId: XACT_E_NOTRANSACTION + // + // MessageText: + // + // The transaction has already been implicitly or explicitly committed or + // aborted + // + int XACT_E_NOTRANSACTION = 0x8004D00E; + // + // MessageId: XACT_E_NOTSUPPORTED + // + // MessageText: + // + // An invalid combination of F;ags was specified + // + int XACT_E_NOTSUPPORTED = 0x8004D00F; + // + // MessageId: XACT_E_UNKNOWNRMGRID + // + // MessageText: + // + // The resource manager id is not associated with this transaction or the + // transaction manager. + // + int XACT_E_UNKNOWNRMGRID = 0x8004D010; + // + // MessageId: XACT_E_WRONGSTATE + // + // MessageText: + // + // This method was called in the wrong state + // + int XACT_E_WRONGSTATE = 0x8004D011; + // + // MessageId: XACT_E_WRONGUOW + // + // MessageText: + // + // The indicated unit of work does not match the unit of work expected by + // the resource manager. + // + int XACT_E_WRONGUOW = 0x8004D012; + // + // MessageId: XACT_E_XTIONEXISTS + // + // MessageText: + // + // An enlistment in a transaction already exists. + // + int XACT_E_XTIONEXISTS = 0x8004D013; + // + // MessageId: XACT_E_NOIMPORTOBJECT + // + // MessageText: + // + // An import object for the transaction could not be found. + // + int XACT_E_NOIMPORTOBJECT = 0x8004D014; + // + // MessageId: XACT_E_INVALIDCOOKIE + // + // MessageText: + // + // The transaction cookie is invalid. + // + int XACT_E_INVALIDCOOKIE = 0x8004D015; + // + // MessageId: XACT_E_INDOUBT + // + // MessageText: + // + // The transaction status is in doubt. A communication failure occurred, or + // a transaction manager or resource manager has failed + // + int XACT_E_INDOUBT = 0x8004D016; + // + // MessageId: XACT_E_NOTIMEOUT + // + // MessageText: + // + // A time-out was specified, but time-outs are not supported. + // + int XACT_E_NOTIMEOUT = 0x8004D017; + // + // MessageId: XACT_E_ALREADYINPROGRESS + // + // MessageText: + // + // The requested operation is already in progress for the transaction. + // + int XACT_E_ALREADYINPROGRESS = 0x8004D018; + // + // MessageId: XACT_E_ABORTED + // + // MessageText: + // + // The transaction has already been aborted. + // + int XACT_E_ABORTED = 0x8004D019; + // + // MessageId: XACT_E_LOGFULL + // + // MessageText: + // + // The Transaction Manager returned a log full error. + // + int XACT_E_LOGFULL = 0x8004D01A; + // + // MessageId: XACT_E_TMNOTAVAILABLE + // + // MessageText: + // + // The Transaction Manager is not available. + // + int XACT_E_TMNOTAVAILABLE = 0x8004D01B; + // + // MessageId: XACT_E_CONNECTION_DOWN + // + // MessageText: + // + // A connection with the transaction manager was lost. + // + int XACT_E_CONNECTION_DOWN = 0x8004D01C; + // + // MessageId: XACT_E_CONNECTION_DENIED + // + // MessageText: + // + // A request to establish a connection with the transaction manager was + // denied. + // + int XACT_E_CONNECTION_DENIED = 0x8004D01D; + // + // MessageId: XACT_E_REENLISTTIMEOUT + // + // MessageText: + // + // Resource manager reenlistment to determine transaction status timed out. + // + int XACT_E_REENLISTTIMEOUT = 0x8004D01E; + // + // MessageId: XACT_E_TIP_CONNECT_FAILED + // + // MessageText: + // + // This transaction manager failed to establish a connection with another + // TIP transaction manager. + // + int XACT_E_TIP_CONNECT_FAILED = 0x8004D01F; + // + // MessageId: XACT_E_TIP_PROTOCOL_ERROR + // + // MessageText: + // + // This transaction manager encountered a protocol error with another TIP + // transaction manager. + // + int XACT_E_TIP_PROTOCOL_ERROR = 0x8004D020; + // + // MessageId: XACT_E_TIP_PULL_FAILED + // + // MessageText: + // + // This transaction manager could not propagate a transaction from another + // TIP transaction manager. + // + int XACT_E_TIP_PULL_FAILED = 0x8004D021; + // + // MessageId: XACT_E_DEST_TMNOTAVAILABLE + // + // MessageText: + // + // The Transaction Manager on the destination machine is not available. + // + int XACT_E_DEST_TMNOTAVAILABLE = 0x8004D022; + // + // MessageId: XACT_E_TIP_DISABLED + // + // MessageText: + // + // The Transaction Manager has disabled its support for TIP. + // + int XACT_E_TIP_DISABLED = 0x8004D023; + // + // MessageId: XACT_E_NETWORK_TX_DISABLED + // + // MessageText: + // + // The transaction manager has disabled its support for remote/network + // transactions. + // + int XACT_E_NETWORK_TX_DISABLED = 0x8004D024; + // + // MessageId: XACT_E_PARTNER_NETWORK_TX_DISABLED + // + // MessageText: + // + // The partner transaction manager has disabled its support for + // remote/network transactions. + // + int XACT_E_PARTNER_NETWORK_TX_DISABLED = 0x8004D025; + // + // MessageId: XACT_E_XA_TX_DISABLED + // + // MessageText: + // + // The transaction manager has disabled its support for XA transactions. + // + int XACT_E_XA_TX_DISABLED = 0x8004D026; + // + // MessageId: XACT_E_UNABLE_TO_READ_DTC_CONFIG + // + // MessageText: + // + // MSDTC was unable to read its configuration information. + // + int XACT_E_UNABLE_TO_READ_DTC_CONFIG = 0x8004D027; + // + // MessageId: XACT_E_UNABLE_TO_LOAD_DTC_PROXY + // + // MessageText: + // + // MSDTC was unable to load the dtc proxy dll. + // + int XACT_E_UNABLE_TO_LOAD_DTC_PROXY = 0x8004D028; + // + // MessageId: XACT_E_ABORTING + // + // MessageText: + // + // The local transaction has aborted. + // + int XACT_E_ABORTING = 0x8004D029; + // + // TXF & CRM errors start=4d080. + // + // MessageId: XACT_E_CLERKNOTFOUND + // + // MessageText: + // + // XACT_E_CLERKNOTFOUND + // + int XACT_E_CLERKNOTFOUND = 0x8004D080; + // + // MessageId: XACT_E_CLERKEXISTS + // + // MessageText: + // + // XACT_E_CLERKEXISTS + // + int XACT_E_CLERKEXISTS = 0x8004D081; + // + // MessageId: XACT_E_RECOVERYINPROGRESS + // + // MessageText: + // + // XACT_E_RECOVERYINPROGRESS + // + int XACT_E_RECOVERYINPROGRESS = 0x8004D082; + // + // MessageId: XACT_E_TRANSACTIONCLOSED + // + // MessageText: + // + // XACT_E_TRANSACTIONCLOSED + // + int XACT_E_TRANSACTIONCLOSED = 0x8004D083; + // + // MessageId: XACT_E_INVALIDLSN + // + // MessageText: + // + // XACT_E_INVALIDLSN + // + int XACT_E_INVALIDLSN = 0x8004D084; + // + // MessageId: XACT_E_REPLAYREQUEST + // + // MessageText: + // + // XACT_E_REPLAYREQUEST + // + int XACT_E_REPLAYREQUEST = 0x8004D085; + // Begin XACT_DTC_CONSTANTS enumerated values defined in txdtc.h + // SymbolicName=XACT_E_CONNECTION_REQUEST_DENIED + // + // MessageId: 0x8004D100; (No symbolic name defined) + // + // MessageText: + // + // The request to connect to the specified transaction coordinator was + // denied. + // + // SymbolicName=XACT_E_TOOMANY_ENLISTMENTS + // + // MessageId: 0x8004D101; (No symbolic name defined) + // + // MessageText: + // + // The maximum number of enlistments for the specified transaction has been + // reached. + // + // SymbolicName=XACT_E_DUPLICATE_GUID + // + // MessageId: 0x8004D102; (No symbolic name defined) + // + // MessageText: + // + // A resource manager with the same identifier is already registered with + // the specified transaction coordinator. + // + // SymbolicName=XACT_E_NOTSINGLEPHASE + // + // MessageId: 0x8004D103; (No symbolic name defined) + // + // MessageText: + // + // The prepare request given was not eligible for single phase + // optimizations. + // + // SymbolicName=XACT_E_RECOVERYALREADYDONE + // + // MessageId: 0x8004D104; (No symbolic name defined) + // + // MessageText: + // + // RecoveryComplete has already been called for the given resource manager. + // + // SymbolicName=XACT_E_PROTOCOL + // + // MessageId: 0x8004D105; (No symbolic name defined) + // + // MessageText: + // + // The interface call made was incorrect for the current state of the + // protocol. + // + // SymbolicName=XACT_E_RM_FAILURE + // + // MessageId: 0x8004D106; (No symbolic name defined) + // + // MessageText: + // + // xa_open call failed for the XA resource. + // + // SymbolicName=XACT_E_RECOVERY_FAILED + // + // MessageId: 0x8004D107; (No symbolic name defined) + // + // MessageText: + // + // xa_recover call failed for the XA resource. + // + // SymbolicName=XACT_E_LU_NOT_FOUND + // + // MessageId: 0x8004D108; (No symbolic name defined) + // + // MessageText: + // + // The Logical Unit of Work specified cannot be found. + // + // SymbolicName=XACT_E_DUPLICATE_LU + // + // MessageId: 0x8004D109; (No symbolic name defined) + // + // MessageText: + // + // The specified Logical Unit of Work already exists. + // + // SymbolicName=XACT_E_LU_NOT_CONNECTED + // + // MessageId: 0x8004D10AL (No symbolic name defined) + // + // MessageText: + // + // Subordinate creation failed. The specified Logical Unit of Work was not + // connected. + // + // SymbolicName=XACT_E_DUPLICATE_TRANSID + // + // MessageId: 0x8004D10BL (No symbolic name defined) + // + // MessageText: + // + // A transaction with the given identifier already exists. + // + // SymbolicName=XACT_E_LU_BUSY + // + // MessageId: 0x8004D10CL (No symbolic name defined) + // + // MessageText: + // + // The resource is in use. + // + // SymbolicName=XACT_E_LU_NO_RECOVERY_PROCESS + // + // MessageId: 0x8004D10DL (No symbolic name defined) + // + // MessageText: + // + // The LU Recovery process is down. + // + // SymbolicName=XACT_E_LU_DOWN + // + // MessageId: 0x8004D10EL (No symbolic name defined) + // + // MessageText: + // + // The remote session was lost. + // + // SymbolicName=XACT_E_LU_RECOVERING + // + // MessageId: 0x8004D10F; (No symbolic name defined) + // + // MessageText: + // + // The resource is currently recovering. + // + // SymbolicName=XACT_E_LU_RECOVERY_MISMATCH + // + // MessageId: 0x8004D110; (No symbolic name defined) + // + // MessageText: + // + // There was a mismatch in driving recovery. + // + // SymbolicName=XACT_E_RM_UNAVAILABLE + // + // MessageId: 0x8004D111; (No symbolic name defined) + // + // MessageText: + // + // An error occurred with the XA resource. + // + // End XACT_DTC_CONSTANTS enumerated values defined in txdtc.h + // + // OleTx Success codes. + // + // + // MessageId: XACT_S_ASYNC + // + // MessageText: + // + // An asynchronous operation was specified. The operation has begun, but its + // outcome is not known yet. + // + int XACT_S_ASYNC = 0x0004D000; + // + // MessageId: XACT_S_DEFECT + // + // MessageText: + // + // XACT_S_DEFECT + // + int XACT_S_DEFECT = 0x0004D001; + // + // MessageId: XACT_S_READONLY + // + // MessageText: + // + // The method call succeeded because the transaction was read-only. + // + int XACT_S_READONLY = 0x0004D002; + // + // MessageId: XACT_S_SOMENORETAIN + // + // MessageText: + // + // The transaction was successfully aborted. However, this is a coordinated + // transaction, and some number of enlisted resources were aborted outright + // because they could not support abort-retaining semantics + // + int XACT_S_SOMENORETAIN = 0x0004D003; + // + // MessageId: XACT_S_OKINFORM + // + // MessageText: + // + // No changes were made during this call, but the sink wants another chance + // to look if any other sinks make further changes. + // + int XACT_S_OKINFORM = 0x0004D004; + // + // MessageId: XACT_S_MADECHANGESCONTENT + // + // MessageText: + // + // The sink is content and wishes the transaction to proceed. Changes were + // made to one or more resources during this call. + // + int XACT_S_MADECHANGESCONTENT = 0x0004D005; + // + // MessageId: XACT_S_MADECHANGESINFORM + // + // MessageText: + // + // The sink is for the moment and wishes the transaction to proceed, but if + // other changes are made following this return by other event sinks then + // this sink wants another chance to look + // + int XACT_S_MADECHANGESINFORM = 0x0004D006; + // + // MessageId: XACT_S_ALLNORETAIN + // + // MessageText: + // + // The transaction was successfully aborted. However, the abort was + // non-retaining. + // + int XACT_S_ALLNORETAIN = 0x0004D007; + // + // MessageId: XACT_S_ABORTING + // + // MessageText: + // + // An abort operation was already in progress. + // + int XACT_S_ABORTING = 0x0004D008; + // + // MessageId: XACT_S_SINGLEPHASE + // + // MessageText: + // + // The resource manager has performed a single-phase commit of the + // transaction. + // + int XACT_S_SINGLEPHASE = 0x0004D009; + // + // MessageId: XACT_S_LOCALLY_OK + // + // MessageText: + // + // The local transaction has not aborted. + // + int XACT_S_LOCALLY_OK = 0x0004D00A; + // + // MessageId: XACT_S_LASTRESOURCEMANAGER + // + // MessageText: + // + // The resource manager has requested to be the coordinator (last resource + // manager) for the transaction. + // + int XACT_S_LASTRESOURCEMANAGER = 0x0004D010; + int CONTEXT_E_FIRST = 0x8004E000; + int CONTEXT_E_LAST = 0x8004E02F; + int CONTEXT_S_FIRST = 0x0004E000; + int CONTEXT_S_LAST = 0x0004E02F; + // + // MessageId: CONTEXT_E_ABORTED + // + // MessageText: + // + // The root transaction wanted to commit, but transaction aborted + // + int CONTEXT_E_ABORTED = 0x8004E002; + // + // MessageId: CONTEXT_E_ABORTING + // + // MessageText: + // + // You made a method call on a COM+ component that has a transaction that + // has already aborted or in the process of aborting. + // + int CONTEXT_E_ABORTING = 0x8004E003; + // + // MessageId: CONTEXT_E_NOCONTEXT + // + // MessageText: + // + // There is no MTS object context + // + int CONTEXT_E_NOCONTEXT = 0x8004E004; + // + // MessageId: CONTEXT_E_WOULD_DEADLOCK + // + // MessageText: + // + // The component is configured to use synchronization and this method call + // would cause a deadlock to occur. + // + int CONTEXT_E_WOULD_DEADLOCK = 0x8004E005; + // + // MessageId: CONTEXT_E_SYNCH_TIMEOUT + // + // MessageText: + // + // The component is configured to use synchronization and a thread has timed + // out waiting to enter the context. + // + int CONTEXT_E_SYNCH_TIMEOUT = 0x8004E006; + // + // MessageId: CONTEXT_E_OLDREF + // + // MessageText: + // + // You made a method call on a COM+ component that has a transaction that + // has already committed or aborted. + // + int CONTEXT_E_OLDREF = 0x8004E007; + // + // MessageId: CONTEXT_E_ROLENOTFOUND + // + // MessageText: + // + // The specified role was not configured for the application + // + int CONTEXT_E_ROLENOTFOUND = 0x8004E00C; + // + // MessageId: CONTEXT_E_TMNOTAVAILABLE + // + // MessageText: + // + // COM+ was unable to talk to the Microsoft Distributed Transaction + // Coordinator + // + int CONTEXT_E_TMNOTAVAILABLE = 0x8004E00F; + // + // MessageId: CO_E_ACTIVATIONFAILED + // + // MessageText: + // + // An unexpected error occurred during COM+ Activation. + // + int CO_E_ACTIVATIONFAILED = 0x8004E021; + // + // MessageId: CO_E_ACTIVATIONFAILED_EVENTLOGGED + // + // MessageText: + // + // COM+ Activation failed. Check the event log for more information + // + int CO_E_ACTIVATIONFAILED_EVENTLOGGED = 0x8004E022; + // + // MessageId: CO_E_ACTIVATIONFAILED_CATALOGERROR + // + // MessageText: + // + // COM+ Activation failed due to a catalog or configuration error. + // + int CO_E_ACTIVATIONFAILED_CATALOGERROR = 0x8004E023; + // + // MessageId: CO_E_ACTIVATIONFAILED_TIMEOUT + // + // MessageText: + // + // COM+ activation failed because the activation could not be completed in + // the specified amount of time. + // + int CO_E_ACTIVATIONFAILED_TIMEOUT = 0x8004E024; + // + // MessageId: CO_E_INITIALIZATIONFAILED + // + // MessageText: + // + // COM+ Activation failed because an initialization function failed. Check + // the event log for more information. + // + int CO_E_INITIALIZATIONFAILED = 0x8004E025; + // + // MessageId: CONTEXT_E_NOJIT + // + // MessageText: + // + // The requested operation requires that JIT be in the current context and + // it is not + // + int CONTEXT_E_NOJIT = 0x8004E026; + // + // MessageId: CONTEXT_E_NOTRANSACTION + // + // MessageText: + // + // The requested operation requires that the current context have a + // Transaction, and it does not + // + int CONTEXT_E_NOTRANSACTION = 0x8004E027; + // + // MessageId: CO_E_THREADINGMODEL_CHANGED + // + // MessageText: + // + // The components threading model has changed after install into a COM+ + // Application. Please re-install component. + // + int CO_E_THREADINGMODEL_CHANGED = 0x8004E028; + // + // MessageId: CO_E_NOIISINTRINSICS + // + // MessageText: + // + // IIS intrinsics not available. Start your work with IIS. + // + int CO_E_NOIISINTRINSICS = 0x8004E029; + // + // MessageId: CO_E_NOCOOKIES + // + // MessageText: + // + // An attempt to write a cookie failed. + // + int CO_E_NOCOOKIES = 0x8004E02A; + // + // MessageId: CO_E_DBERROR + // + // MessageText: + // + // An attempt to use a database generated a database specific error. + // + int CO_E_DBERROR = 0x8004E02B; + // + // MessageId: CO_E_NOTPOOLED + // + // MessageText: + // + // The COM+ component you created must use object pooling to work. + // + int CO_E_NOTPOOLED = 0x8004E02C; + // + // MessageId: CO_E_NOTCONSTRUCTED + // + // MessageText: + // + // The COM+ component you created must use object construction to work + // correctly. + // + int CO_E_NOTCONSTRUCTED = 0x8004E02D; + // + // MessageId: CO_E_NOSYNCHRONIZATION + // + // MessageText: + // + // The COM+ component requires synchronization, and it is not configured for + // it. + // + int CO_E_NOSYNCHRONIZATION = 0x8004E02E; + // + // MessageId: CO_E_ISOLEVELMISMATCH + // + // MessageText: + // + // The TxIsolation Level property for the COM+ component being created is + // stronger than the TxIsolationLevel for the "root" component for the + // transaction. The creation failed. + // + int CO_E_ISOLEVELMISMATCH = 0x8004E02F; + // + // MessageId: CO_E_CALL_OUT_OF_TX_SCOPE_NOT_ALLOWED + // + // MessageText: + // + // The component attempted to make a cross-context call between invocations + // of EnterTransactionScopeand ExitTransactionScope. This is not allowed. + // Cross-context calls cannot be made while inside of a transaction scope. + // + int CO_E_CALL_OUT_OF_TX_SCOPE_NOT_ALLOWED = 0x8004E030; + // + // MessageId: CO_E_EXIT_TRANSACTION_SCOPE_NOT_CALLED + // + // MessageText: + // + // The component made a call to EnterTransactionScope, but did not make a + // corresponding call to ExitTransactionScope before returning. + // + int CO_E_EXIT_TRANSACTION_SCOPE_NOT_CALLED = 0x8004E031; + // + // Old OLE Success Codes + // + // + // MessageId: OLE_S_USEREG + // + // MessageText: + // + // Use the registry database to provide the requested information + // + int OLE_S_USEREG = 0x00040000; + // + // MessageId: OLE_S_STATIC + // + // MessageText: + // + // Success, but static + // + int OLE_S_STATIC = 0x00040001; + // + // MessageId: OLE_S_MAC_CLIPFORMAT + // + // MessageText: + // + // Macintosh clipboard format + // + int OLE_S_MAC_CLIPFORMAT = 0x00040002; + // + // MessageId: DRAGDROP_S_DROP + // + // MessageText: + // + // Successful drop took place + // + int DRAGDROP_S_DROP = 0x00040100; + // + // MessageId: DRAGDROP_S_CANCEL + // + // MessageText: + // + // Drag-drop operation canceled + // + int DRAGDROP_S_CANCEL = 0x00040101; + // + // MessageId: DRAGDROP_S_USEDEFAULTCURSORS + // + // MessageText: + // + // Use the default cursor + // + int DRAGDROP_S_USEDEFAULTCURSORS = 0x00040102; + // + // MessageId: DATA_S_SAMEFORMATETC + // + // MessageText: + // + // Data has same FORMATETC + // + int DATA_S_SAMEFORMATETC = 0x00040130; + // + // MessageId: VIEW_S_ALREADY_FROZEN + // + // MessageText: + // + // View is already frozen + // + int VIEW_S_ALREADY_FROZEN = 0x00040140; + // + // MessageId: CACHE_S_FORMATETC_NOTSUPPORTED + // + // MessageText: + // + // FORMATETC not supported + // + int CACHE_S_FORMATETC_NOTSUPPORTED = 0x00040170; + // + // MessageId: CACHE_S_SAMECACHE + // + // MessageText: + // + // Same cache + // + int CACHE_S_SAMECACHE = 0x00040171; + // + // MessageId: CACHE_S_SOMECACHES_NOTUPDATED + // + // MessageText: + // + // Some cache(s) not updated + // + int CACHE_S_SOMECACHES_NOTUPDATED = 0x00040172; + // + // MessageId: OLEOBJ_S_INVALIDVERB + // + // MessageText: + // + // Invalid verb for OLE object + // + int OLEOBJ_S_INVALIDVERB = 0x00040180; + // + // MessageId: OLEOBJ_S_CANNOT_DOVERB_NOW + // + // MessageText: + // + // Verb number is valid but verb cannot be done now + // + int OLEOBJ_S_CANNOT_DOVERB_NOW = 0x00040181; + // + // MessageId: OLEOBJ_S_INVALIDHWND + // + // MessageText: + // + // Invalid window handle passed + // + int OLEOBJ_S_INVALIDHWND = 0x00040182; + // + // MessageId: INPLACE_S_TRUNCATED + // + // MessageText: + // + // Message is too long; some of it had to be truncated before displaying + // + int INPLACE_S_TRUNCATED = 0x000401A0; + // + // MessageId: CONVERT10_S_NO_PRESENTATION + // + // MessageText: + // + // Unable to convert OLESTREAM to IStorage + // + int CONVERT10_S_NO_PRESENTATION = 0x000401C0; + // + // MessageId: MK_S_REDUCED_TO_SELF + // + // MessageText: + // + // Moniker reduced to itself + // + int MK_S_REDUCED_TO_SELF = 0x000401E2; + // + // MessageId: MK_S_ME + // + // MessageText: + // + // Common prefix is this moniker + // + int MK_S_ME = 0x000401E4; + // + // MessageId: MK_S_HIM + // + // MessageText: + // + // Common prefix is input moniker + // + int MK_S_HIM = 0x000401E5; + // + // MessageId: MK_S_US + // + // MessageText: + // + // Common prefix is both monikers + // + int MK_S_US = 0x000401E6; + // + // MessageId: MK_S_MONIKERALREADYREGISTERED + // + // MessageText: + // + // Moniker is already registered in running object table + // + int MK_S_MONIKERALREADYREGISTERED = 0x000401E7; + // + // Task Scheduler errors + // + // + // MessageId: SCHED_S_TASK_READY + // + // MessageText: + // + // The task is ready to run at its next scheduled time. + // + int SCHED_S_TASK_READY = 0x00041300; + // + // MessageId: SCHED_S_TASK_RUNNING + // + // MessageText: + // + // The task is currently running. + // + int SCHED_S_TASK_RUNNING = 0x00041301; + // + // MessageId: SCHED_S_TASK_DISABLED + // + // MessageText: + // + // The task will not run at the scheduled times because it has been + // disabled. + // + int SCHED_S_TASK_DISABLED = 0x00041302; + // + // MessageId: SCHED_S_TASK_HAS_NOT_RUN + // + // MessageText: + // + // The task has not yet run. + // + int SCHED_S_TASK_HAS_NOT_RUN = 0x00041303; + // + // MessageId: SCHED_S_TASK_NO_MORE_RUNS + // + // MessageText: + // + // There are no more runs scheduled for this task. + // + int SCHED_S_TASK_NO_MORE_RUNS = 0x00041304; + // + // MessageId: SCHED_S_TASK_NOT_SCHEDULED + // + // MessageText: + // + // One or more of the properties that are needed to run this task on a + // schedule have not been set. + // + int SCHED_S_TASK_NOT_SCHEDULED = 0x00041305; + // + // MessageId: SCHED_S_TASK_TERMINATED + // + // MessageText: + // + // The last run of the task was terminated by the user. + // + int SCHED_S_TASK_TERMINATED = 0x00041306; + // + // MessageId: SCHED_S_TASK_NO_VALID_TRIGGERS + // + // MessageText: + // + // Either the task has no triggers or the existing triggers are disabled or + // not set. + // + int SCHED_S_TASK_NO_VALID_TRIGGERS = 0x00041307; + // + // MessageId: SCHED_S_EVENT_TRIGGER + // + // MessageText: + // + // Event triggers don't have set run times. + // + int SCHED_S_EVENT_TRIGGER = 0x00041308; + // + // MessageId: SCHED_E_TRIGGER_NOT_FOUND + // + // MessageText: + // + // Trigger not found. + // + int SCHED_E_TRIGGER_NOT_FOUND = 0x80041309; + // + // MessageId: SCHED_E_TASK_NOT_READY + // + // MessageText: + // + // One or more of the properties that are needed to run this task have not + // been set. + // + int SCHED_E_TASK_NOT_READY = 0x8004130A; + // + // MessageId: SCHED_E_TASK_NOT_RUNNING + // + // MessageText: + // + // There is no running instance of the task. + // + int SCHED_E_TASK_NOT_RUNNING = 0x8004130B; + // + // MessageId: SCHED_E_SERVICE_NOT_INSTALLED + // + // MessageText: + // + // The Task Scheduler Service is not installed on this computer. + // + int SCHED_E_SERVICE_NOT_INSTALLED = 0x8004130C; + // + // MessageId: SCHED_E_CANNOT_OPEN_TASK + // + // MessageText: + // + // The task object could not be opened. + // + int SCHED_E_CANNOT_OPEN_TASK = 0x8004130D; + // + // MessageId: SCHED_E_INVALID_TASK + // + // MessageText: + // + // The object is either an invalid task object or is not a task object. + // + int SCHED_E_INVALID_TASK = 0x8004130E; + // + // MessageId: SCHED_E_ACCOUNT_INFORMATION_NOT_SET + // + // MessageText: + // + // No account information could be found in the Task Scheduler security + // database for the task indicated. + // + int SCHED_E_ACCOUNT_INFORMATION_NOT_SET = 0x8004130F; + // + // MessageId: SCHED_E_ACCOUNT_NAME_NOT_FOUND + // + // MessageText: + // + // Unable to establish existence of the account specified. + // + int SCHED_E_ACCOUNT_NAME_NOT_FOUND = 0x80041310; + // + // MessageId: SCHED_E_ACCOUNT_DBASE_CORRUPT + // + // MessageText: + // + // Corruption was detected in the Task Scheduler security database; the + // database has been reset. + // + int SCHED_E_ACCOUNT_DBASE_CORRUPT = 0x80041311; + // + // MessageId: SCHED_E_NO_SECURITY_SERVICES + // + // MessageText: + // + // Task Scheduler security services are available only on Windows NT. + // + int SCHED_E_NO_SECURITY_SERVICES = 0x80041312; + // + // MessageId: SCHED_E_UNKNOWN_OBJECT_VERSION + // + // MessageText: + // + // The task object version is either unsupported or invalid. + // + int SCHED_E_UNKNOWN_OBJECT_VERSION = 0x80041313; + // + // MessageId: SCHED_E_UNSUPPORTED_ACCOUNT_OPTION + // + // MessageText: + // + // The task has been configured with an unsupported combination of account + // settings and run time options. + // + int SCHED_E_UNSUPPORTED_ACCOUNT_OPTION = 0x80041314; + // + // MessageId: SCHED_E_SERVICE_NOT_RUNNING + // + // MessageText: + // + // The Task Scheduler Service is not running. + // + int SCHED_E_SERVICE_NOT_RUNNING = 0x80041315; + // + // MessageId: SCHED_E_UNEXPECTEDNODE + // + // MessageText: + // + // The task XML contains an unexpected node. + // + int SCHED_E_UNEXPECTEDNODE = 0x80041316; + // + // MessageId: SCHED_E_NAMESPACE + // + // MessageText: + // + // The task XML contains an element or attribute from an unexpected + // namespace. + // + int SCHED_E_NAMESPACE = 0x80041317; + // + // MessageId: SCHED_E_INVALIDVALUE + // + // MessageText: + // + // The task XML contains a value which is incorrectly formatted or out of + // range. + // + int SCHED_E_INVALIDVALUE = 0x80041318; + // + // MessageId: SCHED_E_MISSINGNODE + // + // MessageText: + // + // The task XML is missing a required element or attribute. + // + int SCHED_E_MISSINGNODE = 0x80041319; + // + // MessageId: SCHED_E_MALFORMEDXML + // + // MessageText: + // + // The task XML is malformed. + // + int SCHED_E_MALFORMEDXML = 0x8004131A; + // + // MessageId: SCHED_S_SOME_TRIGGERS_FAILED + // + // MessageText: + // + // The task is registered, but not all specified triggers will start the + // task. + // + int SCHED_S_SOME_TRIGGERS_FAILED = 0x0004131B; + // + // MessageId: SCHED_S_BATCH_LOGON_PROBLEM + // + // MessageText: + // + // The task is registered, but may fail to start. Batch logon privilege + // needs to be enabled for the task principal. + // + int SCHED_S_BATCH_LOGON_PROBLEM = 0x0004131C; + // + // MessageId: SCHED_E_TOO_MANY_NODES + // + // MessageText: + // + // The task XML contains too many nodes of the same type. + // + int SCHED_E_TOO_MANY_NODES = 0x8004131D; + // + // MessageId: SCHED_E_PAST_END_BOUNDARY + // + // MessageText: + // + // The task cannot be started after the trigger's end boundary. + // + int SCHED_E_PAST_END_BOUNDARY = 0x8004131E; + // + // MessageId: SCHED_E_ALREADY_RUNNING + // + // MessageText: + // + // An instance of this task is already running. + // + int SCHED_E_ALREADY_RUNNING = 0x8004131F; + // + // MessageId: SCHED_E_USER_NOT_LOGGED_ON + // + // MessageText: + // + // The task will not run because the user is not logged on. + // + int SCHED_E_USER_NOT_LOGGED_ON = 0x80041320; + // + // MessageId: SCHED_E_INVALID_TASK_HASH + // + // MessageText: + // + // The task image is corrupt or has been tampered with. + // + int SCHED_E_INVALID_TASK_HASH = 0x80041321; + // + // MessageId: SCHED_E_SERVICE_NOT_AVAILABLE + // + // MessageText: + // + // The Task Scheduler service is not available. + // + int SCHED_E_SERVICE_NOT_AVAILABLE = 0x80041322; + // + // MessageId: SCHED_E_SERVICE_TOO_BUSY + // + // MessageText: + // + // The Task Scheduler service is too busy to handle your request. Please try + // again later. + // + int SCHED_E_SERVICE_TOO_BUSY = 0x80041323; + // + // MessageId: SCHED_E_TASK_ATTEMPTED + // + // MessageText: + // + // The Task Scheduler service attempted to run the task, but the task did + // not run due to one of the constraints in the task definition. + // + int SCHED_E_TASK_ATTEMPTED = 0x80041324; + // + // MessageId: SCHED_S_TASK_QUEUED + // + // MessageText: + // + // The Task Scheduler service has asked the task to run. + // + int SCHED_S_TASK_QUEUED = 0x00041325; + // + // MessageId: SCHED_E_TASK_DISABLED + // + // MessageText: + // + // The task is disabled. + // + int SCHED_E_TASK_DISABLED = 0x80041326; + // + // MessageId: SCHED_E_TASK_NOT_V1_COMPAT + // + // MessageText: + // + // The task has properties that are not compatible with previous versions of + // Windows. + // + int SCHED_E_TASK_NOT_V1_COMPAT = 0x80041327; + // + // MessageId: SCHED_E_START_ON_DEMAND + // + // MessageText: + // + // The task settings do not allow the task to start on demand. + // + int SCHED_E_START_ON_DEMAND = 0x80041328; + // ****************** + // FACILITY_WINDOWS + // ****************** + // + // Codes 0x0-0x01ff are reserved for the OLE group of + // interfaces. + // + // + // MessageId: CO_E_CLASS_CREATE_FAILED + // + // MessageText: + // + // Attempt to create a class object failed + // + int CO_E_CLASS_CREATE_FAILED = 0x80080001; + // + // MessageId: CO_E_SCM_ERROR + // + // MessageText: + // + // OLE service could not bind object + // + int CO_E_SCM_ERROR = 0x80080002; + // + // MessageId: CO_E_SCM_RPC_FAILURE + // + // MessageText: + // + // RPC communication failed with OLE service + // + int CO_E_SCM_RPC_FAILURE = 0x80080003; + // + // MessageId: CO_E_BAD_PATH + // + // MessageText: + // + // Bad path to object + // + int CO_E_BAD_PATH = 0x80080004; + // + // MessageId: CO_E_SERVER_EXEC_FAILURE + // + // MessageText: + // + // Server execution failed + // + int CO_E_SERVER_EXEC_FAILURE = 0x80080005; + // + // MessageId: CO_E_OBJSRV_RPC_FAILURE + // + // MessageText: + // + // OLE service could not communicate with the object server + // + int CO_E_OBJSRV_RPC_FAILURE = 0x80080006; + // + // MessageId: MK_E_NO_NORMALIZED + // + // MessageText: + // + // Moniker path could not be normalized + // + int MK_E_NO_NORMALIZED = 0x80080007; + // + // MessageId: CO_E_SERVER_STOPPING + // + // MessageText: + // + // Object server is stopping when OLE service contacts it + // + int CO_E_SERVER_STOPPING = 0x80080008; + // + // MessageId: MEM_E_INVALID_ROOT + // + // MessageText: + // + // An invalid root block pointer was specified + // + int MEM_E_INVALID_ROOT = 0x80080009; + // + // MessageId: MEM_E_INVALID_LINK + // + // MessageText: + // + // An allocation chain contained an invalid link pointer + // + int MEM_E_INVALID_LINK = 0x80080010; + // + // MessageId: MEM_E_INVALID_SIZE + // + // MessageText: + // + // The requested allocation size was too large + // + int MEM_E_INVALID_SIZE = 0x80080011; + // + // MessageId: CO_S_NOTALLINTERFACES + // + // MessageText: + // + // Not all the requested interfaces were available + // + int CO_S_NOTALLINTERFACES = 0x00080012; + // + // MessageId: CO_S_MACHINENAMENOTFOUND + // + // MessageText: + // + // The specified machine name was not found in the cache. + // + int CO_S_MACHINENAMENOTFOUND = 0x00080013; + // + // MessageId: CO_E_MISSING_DISPLAYNAME + // + // MessageText: + // + // The activation requires a display name to be present under the CLSID key. + // + int CO_E_MISSING_DISPLAYNAME = 0x80080015; + // + // MessageId: CO_E_RUNAS_VALUE_MUST_BE_AAA + // + // MessageText: + // + // The activation requires that the RunAs value for the application is + // Activate As Activator. + // + int CO_E_RUNAS_VALUE_MUST_BE_AAA = 0x80080016; + // + // MessageId: CO_E_ELEVATION_DISABLED + // + // MessageText: + // + // The class is not configured to support Elevated activation. + // + int CO_E_ELEVATION_DISABLED = 0x80080017; + // ****************** + // FACILITY_DISPATCH + // ****************** + // + // MessageId: DISP_E_UNKNOWNINTERFACE + // + // MessageText: + // + // Unknown interface. + // + int DISP_E_UNKNOWNINTERFACE = 0x80020001; + // + // MessageId: DISP_E_MEMBERNOTFOUND + // + // MessageText: + // + // Member not found. + // + int DISP_E_MEMBERNOTFOUND = 0x80020003; + // + // MessageId: DISP_E_PARAMNOTFOUND + // + // MessageText: + // + // Parameter not found. + // + int DISP_E_PARAMNOTFOUND = 0x80020004; + // + // MessageId: DISP_E_TYPEMISMATCH + // + // MessageText: + // + // Type mismatch. + // + int DISP_E_TYPEMISMATCH = 0x80020005; + // + // MessageId: DISP_E_UNKNOWNNAME + // + // MessageText: + // + // Unknown name. + // + int DISP_E_UNKNOWNNAME = 0x80020006; + // + // MessageId: DISP_E_NONAMEDARGS + // + // MessageText: + // + // No named arguments. + // + int DISP_E_NONAMEDARGS = 0x80020007; + // + // MessageId: DISP_E_BADVARTYPE + // + // MessageText: + // + // Bad variable type. + // + int DISP_E_BADVARTYPE = 0x80020008; + // + // MessageId: DISP_E_EXCEPTION + // + // MessageText: + // + // Exception occurred. + // + int DISP_E_EXCEPTION = 0x80020009; + // + // MessageId: DISP_E_OVERF;OW + // + // MessageText: + // + // Out of present range. + // + int DISP_E_OVERFLOW = 0x8002000A; + // + // MessageId: DISP_E_BADINDEX + // + // MessageText: + // + // Invalid index. + // + int DISP_E_BADINDEX = 0x8002000B; + // + // MessageId: DISP_E_UNKNOWNLCID + // + // MessageText: + // + // Unknown language. + // + int DISP_E_UNKNOWNLCID = 0x8002000C; + // + // MessageId: DISP_E_ARRAYISLOCKED + // + // MessageText: + // + // Memory is locked. + // + int DISP_E_ARRAYISLOCKED = 0x8002000D; + // + // MessageId: DISP_E_BADPARAMCOUNT + // + // MessageText: + // + // Invalid number of parameters. + // + int DISP_E_BADPARAMCOUNT = 0x8002000E; + // + // MessageId: DISP_E_PARAMNOTOPTIONAL + // + // MessageText: + // + // Parameter not optional. + // + int DISP_E_PARAMNOTOPTIONAL = 0x8002000F; + // + // MessageId: DISP_E_BADCALLEE + // + // MessageText: + // + // Invalid callee. + // + int DISP_E_BADCALLEE = 0x80020010; + // + // MessageId: DISP_E_NOTACOLLECTION + // + // MessageText: + // + // Does not support a collection. + // + int DISP_E_NOTACOLLECTION = 0x80020011; + // + // MessageId: DISP_E_DIVBYZERO + // + // MessageText: + // + // Division by zero. + // + int DISP_E_DIVBYZERO = 0x80020012; + // + // MessageId: DISP_E_BUFFERTOOSMALL + // + // MessageText: + // + // Buffer too small + // + int DISP_E_BUFFERTOOSMALL = 0x80020013; + // + // MessageId: TYPE_E_BUFFERTOOSMALL + // + // MessageText: + // + // Buffer too small. + // + int TYPE_E_BUFFERTOOSMALL = 0x80028016; + // + // MessageId: TYPE_E_FIELDNOTFOUND + // + // MessageText: + // + // Field name not defined in the record. + // + int TYPE_E_FIELDNOTFOUND = 0x80028017; + // + // MessageId: TYPE_E_INVDATAREAD + // + // MessageText: + // + // Old format or invalid type library. + // + int TYPE_E_INVDATAREAD = 0x80028018; + // + // MessageId: TYPE_E_UNSUPFORMAT + // + // MessageText: + // + // Old format or invalid type library. + // + int TYPE_E_UNSUPFORMAT = 0x80028019; + // + // MessageId: TYPE_E_REGISTRYACCESS + // + // MessageText: + // + // Error accessing the OLE registry. + // + int TYPE_E_REGISTRYACCESS = 0x8002801C; + // + // MessageId: TYPE_E_LIBNOTREGISTERED + // + // MessageText: + // + // Library not registered. + // + int TYPE_E_LIBNOTREGISTERED = 0x8002801D; + // + // MessageId: TYPE_E_UNDEFINEDTYPE + // + // MessageText: + // + // Bound to unknown type. + // + int TYPE_E_UNDEFINEDTYPE = 0x80028027; + // + // MessageId: TYPE_E_QUALIFIEDNAMEDISALLOWED + // + // MessageText: + // + // Qualified name disallowed. + // + int TYPE_E_QUALIFIEDNAMEDISALLOWED = 0x80028028; + // + // MessageId: TYPE_E_INVALIDSTATE + // + // MessageText: + // + // Invalid forward reference, or reference to uncompiled type. + // + int TYPE_E_INVALIDSTATE = 0x80028029; + // + // MessageId: TYPE_E_WRONGTYPEKIND + // + // MessageText: + // + // Type mismatch. + // + int TYPE_E_WRONGTYPEKIND = 0x8002802A; + // + // MessageId: TYPE_E_ELEMENTNOTFOUND + // + // MessageText: + // + // Element not found. + // + int TYPE_E_ELEMENTNOTFOUND = 0x8002802B; + // + // MessageId: TYPE_E_AMBIGUOUSNAME + // + // MessageText: + // + // Ambiguous name. + // + int TYPE_E_AMBIGUOUSNAME = 0x8002802C; + // + // MessageId: TYPE_E_NAMECONF;ICT + // + // MessageText: + // + // Name already exists in the library. + // + int TYPE_E_NAMECONFLICT = 0x8002802D; + // + // MessageId: TYPE_E_UNKNOWNLCID + // + // MessageText: + // + // Unknown LCID. + // + int TYPE_E_UNKNOWNLCID = 0x8002802E; + // + // MessageId: TYPE_E_DLLFUNCTIONNOTFOUND + // + // MessageText: + // + // Function not defined in specified DLL. + // + int TYPE_E_DLLFUNCTIONNOTFOUND = 0x8002802F; + // + // MessageId: TYPE_E_BADMODULEKIND + // + // MessageText: + // + // Wrong module kind for the operation. + // + int TYPE_E_BADMODULEKIND = 0x800288BD; + // + // MessageId: TYPE_E_SIZETOOBIG + // + // MessageText: + // + // Size may not exceed=64K. + // + int TYPE_E_SIZETOOBIG = 0x800288C5; + // + // MessageId: TYPE_E_DUPLICATEID + // + // MessageText: + // + // Duplicate ID in inheritance hierarchy. + // + int TYPE_E_DUPLICATEID = 0x800288C6; + // + // MessageId: TYPE_E_INVALIDID + // + // MessageText: + // + // Incorrect inheritance depth in standard OLE hmember. + // + int TYPE_E_INVALIDID = 0x800288CF; + // + // MessageId: TYPE_E_TYPEMISMATCH + // + // MessageText: + // + // Type mismatch. + // + int TYPE_E_TYPEMISMATCH = 0x80028CA0; + // + // MessageId: TYPE_E_OUTOFBOUNDS + // + // MessageText: + // + // Invalid number of arguments. + // + int TYPE_E_OUTOFBOUNDS = 0x80028CA1; + // + // MessageId: TYPE_E_IOERROR + // + // MessageText: + // + // I/O Error. + // + int TYPE_E_IOERROR = 0x80028CA2; + // + // MessageId: TYPE_E_CANTCREATETMPFILE + // + // MessageText: + // + // Error creating unique tmp file. + // + int TYPE_E_CANTCREATETMPFILE = 0x80028CA3; + // + // MessageId: TYPE_E_CANTLOADLIBRARY + // + // MessageText: + // + // Error loading type library/DLL. + // + int TYPE_E_CANTLOADLIBRARY = 0x80029C4A; + // + // MessageId: TYPE_E_INCONSISTENTPROPFUNCS + // + // MessageText: + // + // Inconsistent property functions. + // + int TYPE_E_INCONSISTENTPROPFUNCS = 0x80029C83; + // + // MessageId: TYPE_E_CIRCULARTYPE + // + // MessageText: + // + // Circular dependency between types/modules. + // + int TYPE_E_CIRCULARTYPE = 0x80029C84; + // ****************** + // FACILITY_STORAGE + // ****************** + // + // MessageId: STG_E_INVALIDFUNCTION + // + // MessageText: + // + // Unable to perform requested operation. + // + int STG_E_INVALIDFUNCTION = 0x80030001; + // + // MessageId: STG_E_FILENOTFOUND + // + // MessageText: + // + // %1 could not be found. + // + int STG_E_FILENOTFOUND = 0x80030002; + // + // MessageId: STG_E_PATHNOTFOUND + // + // MessageText: + // + // The path %1 could not be found. + // + int STG_E_PATHNOTFOUND = 0x80030003; + // + // MessageId: STG_E_TOOMANYOPENFILES + // + // MessageText: + // + // There are insufficient resources to open another file. + // + int STG_E_TOOMANYOPENFILES = 0x80030004; + // + // MessageId: STG_E_ACCESSDENIED + // + // MessageText: + // + // Access Denied. + // + int STG_E_ACCESSDENIED = 0x80030005; + // + // MessageId: STG_E_INVALIDHANDLE + // + // MessageText: + // + // Attempted an operation on an invalid object. + // + int STG_E_INVALIDHANDLE = 0x80030006; + // + // MessageId: STG_E_INSUFFICIENTMEMORY + // + // MessageText: + // + // There is insufficient memory available to complete operation. + // + int STG_E_INSUFFICIENTMEMORY = 0x80030008; + // + // MessageId: STG_E_INVALIDPOINTER + // + // MessageText: + // + // Invalid pointer error. + // + int STG_E_INVALIDPOINTER = 0x80030009; + // + // MessageId: STG_E_NOMOREFILES + // + // MessageText: + // + // There are no more entries to return. + // + int STG_E_NOMOREFILES = 0x80030012; + // + // MessageId: STG_E_DISKISWRITEPROTECTED + // + // MessageText: + // + // Disk is write-protected. + // + int STG_E_DISKISWRITEPROTECTED = 0x80030013; + // + // MessageId: STG_E_SEEKERROR + // + // MessageText: + // + // An error occurred during a seek operation. + // + int STG_E_SEEKERROR = 0x80030019; + // + // MessageId: STG_E_WRITEFAULT + // + // MessageText: + // + // A disk error occurred during a write operation. + // + int STG_E_WRITEFAULT = 0x8003001D; + // + // MessageId: STG_E_READFAULT + // + // MessageText: + // + // A disk error occurred during a read operation. + // + int STG_E_READFAULT = 0x8003001E; + // + // MessageId: STG_E_SHAREVIOLATION + // + // MessageText: + // + // A share violation has occurred. + // + int STG_E_SHAREVIOLATION = 0x80030020; + // + // MessageId: STG_E_LOCKVIOLATION + // + // MessageText: + // + // A lock violation has occurred. + // + int STG_E_LOCKVIOLATION = 0x80030021; + // + // MessageId: STG_E_FILEALREADYEXISTS + // + // MessageText: + // + // %1 already exists. + // + int STG_E_FILEALREADYEXISTS = 0x80030050; + // + // MessageId: STG_E_INVALIDPARAMETER + // + // MessageText: + // + // Invalid parameter error. + // + int STG_E_INVALIDPARAMETER = 0x80030057; + // + // MessageId: STG_E_MEDIUMFULL + // + // MessageText: + // + // There is insufficient disk space to complete operation. + // + int STG_E_MEDIUMFULL = 0x80030070; + // + // MessageId: STG_E_PROPSETMISMATCHED + // + // MessageText: + // + // Illegal write of non-simple property to simple property set. + // + int STG_E_PROPSETMISMATCHED = 0x800300F0; + // + // MessageId: STG_E_ABNORMALAPIEXIT + // + // MessageText: + // + // An API call exited abnormally. + // + int STG_E_ABNORMALAPIEXIT = 0x800300FA; + // + // MessageId: STG_E_INVALIDHEADER + // + // MessageText: + // + // The file %1 is not a valid compound file. + // + int STG_E_INVALIDHEADER = 0x800300FB; + // + // MessageId: STG_E_INVALIDNAME + // + // MessageText: + // + // The name %1 is not valid. + // + int STG_E_INVALIDNAME = 0x800300FC; + // + // MessageId: STG_E_UNKNOWN + // + // MessageText: + // + // An unexpected error occurred. + // + int STG_E_UNKNOWN = 0x800300FD; + // + // MessageId: STG_E_UNIMPLEMENTEDFUNCTION + // + // MessageText: + // + // That function is not implemented. + // + int STG_E_UNIMPLEMENTEDFUNCTION = 0x800300FE; + // + // MessageId: STG_E_INVALIDF;AG + // + // MessageText: + // + // Invalid F;ag error. + // + int STG_E_INVALIDFLAG = 0x800300FF; + // + // MessageId: STG_E_INUSE + // + // MessageText: + // + // Attempted to use an object that is busy. + // + int STG_E_INUSE = 0x80030100; + // + // MessageId: STG_E_NOTCURRENT + // + // MessageText: + // + // The storage has been changed since the last commit. + // + int STG_E_NOTCURRENT = 0x80030101; + // + // MessageId: STG_E_REVERTED + // + // MessageText: + // + // Attempted to use an object that has ceased to exist. + // + int STG_E_REVERTED = 0x80030102; + // + // MessageId: STG_E_CANTSAVE + // + // MessageText: + // + // Can't save. + // + int STG_E_CANTSAVE = 0x80030103; + // + // MessageId: STG_E_OLDFORMAT + // + // MessageText: + // + // The compound file %1 was produced with an incompatible version of + // storage. + // + int STG_E_OLDFORMAT = 0x80030104; + // + // MessageId: STG_E_OLDDLL + // + // MessageText: + // + // The compound file %1 was produced with a newer version of storage. + // + int STG_E_OLDDLL = 0x80030105; + // + // MessageId: STG_E_SHAREREQUIRED + // + // MessageText: + // + // Share.exe or equivalent is required for operation. + // + int STG_E_SHAREREQUIRED = 0x80030106; + // + // MessageId: STG_E_NOTFILEBASEDSTORAGE + // + // MessageText: + // + // Illegal operation called on non-file based storage. + // + int STG_E_NOTFILEBASEDSTORAGE = 0x80030107; + // + // MessageId: STG_E_EXTANTMARSHALLINGS + // + // MessageText: + // + // Illegal operation called on object with extant marshallings. + // + int STG_E_EXTANTMARSHALLINGS = 0x80030108; + // + // MessageId: STG_E_DOCFILECORRUPT + // + // MessageText: + // + // The docfile has been corrupted. + // + int STG_E_DOCFILECORRUPT = 0x80030109; + // + // MessageId: STG_E_BADBASEADDRESS + // + // MessageText: + // + // OLE32.DLL has been loaded at the wrong address. + // + int STG_E_BADBASEADDRESS = 0x80030110; + // + // MessageId: STG_E_DOCFILETOOLARGE + // + // MessageText: + // + // The compound file is too large for the current implementation + // + int STG_E_DOCFILETOOLARGE = 0x80030111; + // + // MessageId: STG_E_NOTSIMPLEFORMAT + // + // MessageText: + // + // The compound file was not created with the STGM_SIMPLE F;ag + // + int STG_E_NOTSIMPLEFORMAT = 0x80030112; + // + // MessageId: STG_E_INCOMPLETE + // + // MessageText: + // + // The file download was aborted abnormally. The file is incomplete. + // + int STG_E_INCOMPLETE = 0x80030201; + // + // MessageId: STG_E_TERMINATED + // + // MessageText: + // + // The file download has been terminated. + // + int STG_E_TERMINATED = 0x80030202; + // + // MessageId: STG_S_CONVERTED + // + // MessageText: + // + // The underlying file was converted to compound file format. + // + int STG_S_CONVERTED = 0x00030200; + // + // MessageId: STG_S_BLOCK + // + // MessageText: + // + // The storage operation should block until more data is available. + // + int STG_S_BLOCK = 0x00030201; + // + // MessageId: STG_S_RETRYNOW + // + // MessageText: + // + // The storage operation should retry immediately. + // + int STG_S_RETRYNOW = 0x00030202; + // + // MessageId: STG_S_MONITORING + // + // MessageText: + // + // The notified event sink will not inF;uence the storage operation. + // + int STG_S_MONITORING = 0x00030203; + // + // MessageId: STG_S_MULTIPLEOPENS + // + // MessageText: + // + // Multiple opens prevent consolidated. (commit succeeded). + // + int STG_S_MULTIPLEOPENS = 0x00030204; + // + // MessageId: STG_S_CONSOLIDATIONFAILED + // + // MessageText: + // + // Consolidation of the storage file failed. (commit succeeded). + // + int STG_S_CONSOLIDATIONFAILED = 0x00030205; + // + // MessageId: STG_S_CANNOTCONSOLIDATE + // + // MessageText: + // + // Consolidation of the storage file is inappropriate. (commit succeeded). + // + int STG_S_CANNOTCONSOLIDATE = 0x00030206; + + /* + * ++ + * + * MessageId's 0x0305 - 0x031f (inclusive) are reserved for **STORAGE** copy + * protection errors. + * + * -- + */ + // + // MessageId: STG_E_STATUS_COPY_PROTECTION_FAILURE + // + // MessageText: + // + // Generic Copy Protection Error. + // + int STG_E_STATUS_COPY_PROTECTION_FAILURE = 0x80030305; + // + // MessageId: STG_E_CSS_AUTHENTICATION_FAILURE + // + // MessageText: + // + // Copy Protection Error - DVD CSS Authentication failed. + // + int STG_E_CSS_AUTHENTICATION_FAILURE = 0x80030306; + // + // MessageId: STG_E_CSS_KEY_NOT_PRESENT + // + // MessageText: + // + // Copy Protection Error - The given sector does not have a valid CSS key. + // + int STG_E_CSS_KEY_NOT_PRESENT = 0x80030307; + // + // MessageId: STG_E_CSS_KEY_NOT_ESTABLISHED + // + // MessageText: + // + // Copy Protection Error - DVD session key not established. + // + int STG_E_CSS_KEY_NOT_ESTABLISHED = 0x80030308; + // + // MessageId: STG_E_CSS_SCRAMBLED_SECTOR + // + // MessageText: + // + // Copy Protection Error - The read failed because the sector is encrypted. + // + int STG_E_CSS_SCRAMBLED_SECTOR = 0x80030309; + // + // MessageId: STG_E_CSS_REGION_MISMATCH + // + // MessageText: + // + // Copy Protection Error - The current DVD's region does not correspond to + // the region setting of the drive. + // + int STG_E_CSS_REGION_MISMATCH = 0x8003030A; + // + // MessageId: STG_E_RESETS_EXHAUSTED + // + // MessageText: + // + // Copy Protection Error - The drive's region setting may be permanent or + // the number of user resets has been exhausted. + // + int STG_E_RESETS_EXHAUSTED = 0x8003030B; + + /* + * ++ + * + * MessageId's 0x0305 - 0x031f (inclusive) are reserved for **STORAGE** copy + * protection errors. + * + * -- + */ + // ****************** + // FACILITY_RPC + // ****************** + // + // Codes 0x0-0x11 are propagated from=16 bit OLE. + // + // + // MessageId: RPC_E_CALL_REJECTED + // + // MessageText: + // + // Call was rejected by callee. + // + int RPC_E_CALL_REJECTED = 0x80010001; + // + // MessageId: RPC_E_CALL_CANCELED + // + // MessageText: + // + // Call was canceled by the message filter. + // + int RPC_E_CALL_CANCELED = 0x80010002; + // + // MessageId: RPC_E_CANTPOST_INSENDCALL + // + // MessageText: + // + // The caller is dispatching an intertask SendMessage call and cannot call + // out via PostMessage. + // + int RPC_E_CANTPOST_INSENDCALL = 0x80010003; + // + // MessageId: RPC_E_CANTCALLOUT_INASYNCCALL + // + // MessageText: + // + // The caller is dispatching an asynchronous call and cannot make an + // outgoing call on behalf of this call. + // + int RPC_E_CANTCALLOUT_INASYNCCALL = 0x80010004; + // + // MessageId: RPC_E_CANTCALLOUT_INEXTERNALCALL + // + // MessageText: + // + // It is illegal to call out while inside message filter. + // + int RPC_E_CANTCALLOUT_INEXTERNALCALL = 0x80010005; + // + // MessageId: RPC_E_CONNECTION_TERMINATED + // + // MessageText: + // + // The connection terminated or is in a bogus state and cannot be used any + // more. Other connections are still valid. + // + int RPC_E_CONNECTION_TERMINATED = 0x80010006; + // + // MessageId: RPC_E_SERVER_DIED + // + // MessageText: + // + // The callee (server [not server application]) is not available and + // disappeared; all connections are invalid. The call may have executed. + // + int RPC_E_SERVER_DIED = 0x80010007; + // + // MessageId: RPC_E_CLIENT_DIED + // + // MessageText: + // + // The caller (client) disappeared while the callee (server) was processing + // a call. + // + int RPC_E_CLIENT_DIED = 0x80010008; + // + // MessageId: RPC_E_INVALID_DATAPACKET + // + // MessageText: + // + // The data packet with the marshalled parameter data is incorrect. + // + int RPC_E_INVALID_DATAPACKET = 0x80010009; + // + // MessageId: RPC_E_CANTTRANSMIT_CALL + // + // MessageText: + // + // The call was not transmitted properly; the message queue was full and was + // not emptied after yielding. + // + int RPC_E_CANTTRANSMIT_CALL = 0x8001000A; + // + // MessageId: RPC_E_CLIENT_CANTMARSHAL_DATA + // + // MessageText: + // + // The client (caller) cannot marshall the parameter data - low memory, etc. + // + int RPC_E_CLIENT_CANTMARSHAL_DATA = 0x8001000B; + // + // MessageId: RPC_E_CLIENT_CANTUNMARSHAL_DATA + // + // MessageText: + // + // The client (caller) cannot unmarshall the return data - low memory, etc. + // + int RPC_E_CLIENT_CANTUNMARSHAL_DATA = 0x8001000C; + // + // MessageId: RPC_E_SERVER_CANTMARSHAL_DATA + // + // MessageText: + // + // The server (callee) cannot marshall the return data - low memory, etc. + // + int RPC_E_SERVER_CANTMARSHAL_DATA = 0x8001000D; + // + // MessageId: RPC_E_SERVER_CANTUNMARSHAL_DATA + // + // MessageText: + // + // The server (callee) cannot unmarshall the parameter data - low memory, + // etc. + // + int RPC_E_SERVER_CANTUNMARSHAL_DATA = 0x8001000E; + // + // MessageId: RPC_E_INVALID_DATA + // + // MessageText: + // + // Received data is invalid; could be server or client data. + // + int RPC_E_INVALID_DATA = 0x8001000F; + // + // MessageId: RPC_E_INVALID_PARAMETER + // + // MessageText: + // + // A particular parameter is invalid and cannot be (un)marshalled. + // + int RPC_E_INVALID_PARAMETER = 0x80010010; + // + // MessageId: RPC_E_CANTCALLOUT_AGAIN + // + // MessageText: + // + // There is no second outgoing call on same channel in DDE conversation. + // + int RPC_E_CANTCALLOUT_AGAIN = 0x80010011; + // + // MessageId: RPC_E_SERVER_DIED_DNE + // + // MessageText: + // + // The callee (server [not server application]) is not available and + // disappeared; all connections are invalid. The call did not execute. + // + int RPC_E_SERVER_DIED_DNE = 0x80010012; + // + // MessageId: RPC_E_SYS_CALL_FAILED + // + // MessageText: + // + // System call failed. + // + int RPC_E_SYS_CALL_FAILED = 0x80010100; + // + // MessageId: RPC_E_OUT_OF_RESOURCES + // + // MessageText: + // + // Could not allocate some required resource (memory, events, ...) + // + int RPC_E_OUT_OF_RESOURCES = 0x80010101; + // + // MessageId: RPC_E_ATTEMPTED_MULTITHREAD + // + // MessageText: + // + // Attempted to make calls on more than one thread in single threaded mode. + // + int RPC_E_ATTEMPTED_MULTITHREAD = 0x80010102; + // + // MessageId: RPC_E_NOT_REGISTERED + // + // MessageText: + // + // The requested interface is not registered on the server object. + // + int RPC_E_NOT_REGISTERED = 0x80010103; + // + // MessageId: RPC_E_FAULT + // + // MessageText: + // + // RPC could not call the server or could not return the results of calling + // the server. + // + int RPC_E_FAULT = 0x80010104; + // + // MessageId: RPC_E_SERVERFAULT + // + // MessageText: + // + // The server threw an exception. + // + int RPC_E_SERVERFAULT = 0x80010105; + // + // MessageId: RPC_E_CHANGED_MODE + // + // MessageText: + // + // Cannot change thread mode after it is set. + // + int RPC_E_CHANGED_MODE = 0x80010106; + // + // MessageId: RPC_E_INVALIDMETHOD + // + // MessageText: + // + // The method called does not exist on the server. + // + int RPC_E_INVALIDMETHOD = 0x80010107; + // + // MessageId: RPC_E_DISCONNECTED + // + // MessageText: + // + // The object invoked has disconnected from its clients. + // + int RPC_E_DISCONNECTED = 0x80010108; + // + // MessageId: RPC_E_RETRY + // + // MessageText: + // + // The object invoked chose not to process the call now. Try again later. + // + int RPC_E_RETRY = 0x80010109; + // + // MessageId: RPC_E_SERVERCALL_RETRYLATER + // + // MessageText: + // + // The message filter indicated that the application is busy. + // + int RPC_E_SERVERCALL_RETRYLATER = 0x8001010A; + // + // MessageId: RPC_E_SERVERCALL_REJECTED + // + // MessageText: + // + // The message filter rejected the call. + // + int RPC_E_SERVERCALL_REJECTED = 0x8001010B; + // + // MessageId: RPC_E_INVALID_CALLDATA + // + // MessageText: + // + // A call control interfaces was called with invalid data. + // + int RPC_E_INVALID_CALLDATA = 0x8001010C; + // + // MessageId: RPC_E_CANTCALLOUT_ININPUTSYNCCALL + // + // MessageText: + // + // An outgoing call cannot be made since the application is dispatching an + // input-synchronous call. + // + int RPC_E_CANTCALLOUT_ININPUTSYNCCALL = 0x8001010D; + // + // MessageId: RPC_E_WRONG_THREAD + // + // MessageText: + // + // The application called an interface that was marshalled for a different + // thread. + // + int RPC_E_WRONG_THREAD = 0x8001010E; + // + // MessageId: RPC_E_THREAD_NOT_INIT + // + // MessageText: + // + // CoInitialize has not been called on the current thread. + // + int RPC_E_THREAD_NOT_INIT = 0x8001010F; + // + // MessageId: RPC_E_VERSION_MISMATCH + // + // MessageText: + // + // The version of OLE on the client and server machines does not match. + // + int RPC_E_VERSION_MISMATCH = 0x80010110; + // + // MessageId: RPC_E_INVALID_HEADER + // + // MessageText: + // + // OLE received a packet with an invalid header. + // + int RPC_E_INVALID_HEADER = 0x80010111; + // + // MessageId: RPC_E_INVALID_EXTENSION + // + // MessageText: + // + // OLE received a packet with an invalid extension. + // + int RPC_E_INVALID_EXTENSION = 0x80010112; + // + // MessageId: RPC_E_INVALID_IPID + // + // MessageText: + // + // The requested object or interface does not exist. + // + int RPC_E_INVALID_IPID = 0x80010113; + // + // MessageId: RPC_E_INVALID_OBJECT + // + // MessageText: + // + // The requested object does not exist. + // + int RPC_E_INVALID_OBJECT = 0x80010114; + // + // MessageId: RPC_S_CALLPENDING + // + // MessageText: + // + // OLE has sent a request and is waiting for a reply. + // + int RPC_S_CALLPENDING = 0x80010115; + // + // MessageId: RPC_S_WAITONTIMER + // + // MessageText: + // + // OLE is waiting before retrying a request. + // + int RPC_S_WAITONTIMER = 0x80010116; + // + // MessageId: RPC_E_CALL_COMPLETE + // + // MessageText: + // + // Call context cannot be accessed after call completed. + // + int RPC_E_CALL_COMPLETE = 0x80010117; + // + // MessageId: RPC_E_UNSECURE_CALL + // + // MessageText: + // + // Impersonate on unsecure calls is not supported. + // + int RPC_E_UNSECURE_CALL = 0x80010118; + // + // MessageId: RPC_E_TOO_LATE + // + // MessageText: + // + // Security must be initialized before any interfaces are marshalled or + // unmarshalled. It cannot be changed once initialized. + // + int RPC_E_TOO_LATE = 0x80010119; + // + // MessageId: RPC_E_NO_GOOD_SECURITY_PACKAGES + // + // MessageText: + // + // No security packages are installed on this machine or the user is not + // logged on or there are no compatible security packages between the client + // and server. + // + int RPC_E_NO_GOOD_SECURITY_PACKAGES = 0x8001011A; + // + // MessageId: RPC_E_ACCESS_DENIED + // + // MessageText: + // + // Access is denied. + // + int RPC_E_ACCESS_DENIED = 0x8001011B; + // + // MessageId: RPC_E_REMOTE_DISABLED + // + // MessageText: + // + // Remote calls are not allowed for this process. + // + int RPC_E_REMOTE_DISABLED = 0x8001011C; + // + // MessageId: RPC_E_INVALID_OBJREF + // + // MessageText: + // + // The marshaled interface data packet (OBJREF) has an invalid or unknown + // format. + // + int RPC_E_INVALID_OBJREF = 0x8001011D; + // + // MessageId: RPC_E_NO_CONTEXT + // + // MessageText: + // + // No context is associated with this call. This happens for some custom + // marshalled calls and on the client side of the call. + // + int RPC_E_NO_CONTEXT = 0x8001011E; + // + // MessageId: RPC_E_TIMEOUT + // + // MessageText: + // + // This operation returned because the timeout period expired. + // + int RPC_E_TIMEOUT = 0x8001011F; + // + // MessageId: RPC_E_NO_SYNC + // + // MessageText: + // + // There are no synchronize objects to wait on. + // + int RPC_E_NO_SYNC = 0x80010120; + // + // MessageId: RPC_E_FULLSIC_REQUIRED + // + // MessageText: + // + // Full subject issuer chain SSL principal name expected from the server. + // + int RPC_E_FULLSIC_REQUIRED = 0x80010121; + // + // MessageId: RPC_E_INVALID_STD_NAME + // + // MessageText: + // + // Principal name is not a valid MSSTD name. + // + int RPC_E_INVALID_STD_NAME = 0x80010122; + // + // MessageId: CO_E_FAILEDTOIMPERSONATE + // + // MessageText: + // + // Unable to impersonate DCOM client + // + int CO_E_FAILEDTOIMPERSONATE = 0x80010123; + // + // MessageId: CO_E_FAILEDTOGETSECCTX + // + // MessageText: + // + // Unable to obtain server's security context + // + int CO_E_FAILEDTOGETSECCTX = 0x80010124; + // + // MessageId: CO_E_FAILEDTOOPENTHREADTOKEN + // + // MessageText: + // + // Unable to open the access token of the current thread + // + int CO_E_FAILEDTOOPENTHREADTOKEN = 0x80010125; + // + // MessageId: CO_E_FAILEDTOGETTOKENINFO + // + // MessageText: + // + // Unable to obtain user info from an access token + // + int CO_E_FAILEDTOGETTOKENINFO = 0x80010126; + // + // MessageId: CO_E_TRUSTEEDOESNTMATCHCLIENT + // + // MessageText: + // + // The client who called IAccessControl::IsAccessPermitted was not the + // trustee provided to the method + // + int CO_E_TRUSTEEDOESNTMATCHCLIENT = 0x80010127; + // + // MessageId: CO_E_FAILEDTOQUERYCLIENTBLANKET + // + // MessageText: + // + // Unable to obtain the client's security blanket + // + int CO_E_FAILEDTOQUERYCLIENTBLANKET = 0x80010128; + // + // MessageId: CO_E_FAILEDTOSETDACL + // + // MessageText: + // + // Unable to set a discretionary ACL into a security descriptor + // + int CO_E_FAILEDTOSETDACL = 0x80010129; + // + // MessageId: CO_E_ACCESSCHECKFAILED + // + // MessageText: + // + // The system function, AccessCheck, returned false + // + int CO_E_ACCESSCHECKFAILED = 0x8001012A; + // + // MessageId: CO_E_NETACCESSAPIFAILED + // + // MessageText: + // + // Either NetAccessDel or NetAccessAdd returned an error code. + // + int CO_E_NETACCESSAPIFAILED = 0x8001012B; + // + // MessageId: CO_E_WRONGTRUSTEENAMESYNTAX + // + // MessageText: + // + // One of the trustee strings provided by the user did not conform to the + // \ syntax and it was not the "*" string + // + int CO_E_WRONGTRUSTEENAMESYNTAX = 0x8001012C; + // + // MessageId: CO_E_INVALIDSID + // + // MessageText: + // + // One of the security identifiers provided by the user was invalid + // + int CO_E_INVALIDSID = 0x8001012D; + // + // MessageId: CO_E_CONVERSIONFAILED + // + // MessageText: + // + // Unable to convert a wide character trustee string to a multibyte trustee + // string + // + int CO_E_CONVERSIONFAILED = 0x8001012E; + // + // MessageId: CO_E_NOMATCHINGSIDFOUND + // + // MessageText: + // + // Unable to find a security identifier that corresponds to a trustee string + // provided by the user + // + int CO_E_NOMATCHINGSIDFOUND = 0x8001012F; + // + // MessageId: CO_E_LOOKUPACCSIDFAILED + // + // MessageText: + // + // The system function, LookupAccountSID, failed + // + int CO_E_LOOKUPACCSIDFAILED = 0x80010130; + // + // MessageId: CO_E_NOMATCHINGNAMEFOUND + // + // MessageText: + // + // Unable to find a trustee name that corresponds to a security identifier + // provided by the user + // + int CO_E_NOMATCHINGNAMEFOUND = 0x80010131; + // + // MessageId: CO_E_LOOKUPACCNAMEFAILED + // + // MessageText: + // + // The system function, LookupAccountName, failed + // + int CO_E_LOOKUPACCNAMEFAILED = 0x80010132; + // + // MessageId: CO_E_SETSERLHNDLFAILED + // + // MessageText: + // + // Unable to set or reset a serialization handle + // + int CO_E_SETSERLHNDLFAILED = 0x80010133; + // + // MessageId: CO_E_FAILEDTOGETWINDIR + // + // MessageText: + // + // Unable to obtain the Windows directory + // + int CO_E_FAILEDTOGETWINDIR = 0x80010134; + // + // MessageId: CO_E_PATHTOOLONG + // + // MessageText: + // + // Path too long + // + int CO_E_PATHTOOLONG = 0x80010135; + // + // MessageId: CO_E_FAILEDTOGENUUID + // + // MessageText: + // + // Unable to generate a uuid. + // + int CO_E_FAILEDTOGENUUID = 0x80010136; + // + // MessageId: CO_E_FAILEDTOCREATEFILE + // + // MessageText: + // + // Unable to create file + // + int CO_E_FAILEDTOCREATEFILE = 0x80010137; + // + // MessageId: CO_E_FAILEDTOCLOSEHANDLE + // + // MessageText: + // + // Unable to close a serialization handle or a file handle. + // + int CO_E_FAILEDTOCLOSEHANDLE = 0x80010138; + // + // MessageId: CO_E_EXCEEDSYSACLLIMIT + // + // MessageText: + // + // The number of ACEs in an ACL exceeds the system limit. + // + int CO_E_EXCEEDSYSACLLIMIT = 0x80010139; + // + // MessageId: CO_E_ACESINWRONGORDER + // + // MessageText: + // + // Not all the DENY_ACCESS ACEs are arranged in front of the GRANT_ACCESS + // ACEs in the stream. + // + int CO_E_ACESINWRONGORDER = 0x8001013A; + // + // MessageId: CO_E_INCOMPATIBLESTREAMVERSION + // + // MessageText: + // + // The version of ACL format in the stream is not supported by this + // implementation of IAccessControl + // + int CO_E_INCOMPATIBLESTREAMVERSION = 0x8001013B; + // + // MessageId: CO_E_FAILEDTOOPENPROCESSTOKEN + // + // MessageText: + // + // Unable to open the access token of the server process + // + int CO_E_FAILEDTOOPENPROCESSTOKEN = 0x8001013C; + // + // MessageId: CO_E_DECODEFAILED + // + // MessageText: + // + // Unable to decode the ACL in the stream provided by the user + // + int CO_E_DECODEFAILED = 0x8001013D; + // + // MessageId: CO_E_ACNOTINITIALIZED + // + // MessageText: + // + // The COM IAccessControl object is not initialized + // + int CO_E_ACNOTINITIALIZED = 0x8001013F; + // + // MessageId: CO_E_CANCEL_DISABLED + // + // MessageText: + // + // Call Cancellation is disabled + // + int CO_E_CANCEL_DISABLED = 0x80010140; + // + // MessageId: RPC_E_UNEXPECTED + // + // MessageText: + // + // An internal error occurred. + // + int RPC_E_UNEXPECTED = 0x8001FFFF; + // //////////////////////////////////// + // =// + // Additional Security Status Codes // + // =// + // Facility=Security=// + // =// + // //////////////////////////////////// + // + // MessageId: ERROR_AUDITING_DISABLED + // + // MessageText: + // + // The specified event is currently not being audited. + // + int ERROR_AUDITING_DISABLED = 0xC0090001; + // + // MessageId: ERROR_ALL_SIDS_FILTERED + // + // MessageText: + // + // The SID filtering operation removed all SIDs. + // + int ERROR_ALL_SIDS_FILTERED = 0xC0090002; + // + // MessageId: ERROR_BIZRULES_NOT_ENABLED + // + // MessageText: + // + // Business rule scripts are disabled for the calling application. + // + int ERROR_BIZRULES_NOT_ENABLED = 0xC0090003; + // /////////////////////////////////////////// + // =// + // end of Additional Security Status Codes // + // =// + // /////////////////////////////////////////// + // /////////////// + // + // FACILITY_SSPI + // + // /////////////// + // + // MessageId: NTE_BAD_UID + // + // MessageText: + // + // Bad UID. + // + int NTE_BAD_UID = 0x80090001; + // + // MessageId: NTE_BAD_HASH + // + // MessageText: + // + // Bad Hash. + // + int NTE_BAD_HASH = 0x80090002; + // + // MessageId: NTE_BAD_KEY + // + // MessageText: + // + // Bad Key. + // + int NTE_BAD_KEY = 0x80090003; + // + // MessageId: NTE_BAD_LEN + // + // MessageText: + // + // Bad Length. + // + int NTE_BAD_LEN = 0x80090004; + // + // MessageId: NTE_BAD_DATA + // + // MessageText: + // + // Bad Data. + // + int NTE_BAD_DATA = 0x80090005; + // + // MessageId: NTE_BAD_SIGNATURE + // + // MessageText: + // + // Invalid Signature. + // + int NTE_BAD_SIGNATURE = 0x80090006; + // + // MessageId: NTE_BAD_VER + // + // MessageText: + // + // Bad Version of provider. + // + int NTE_BAD_VER = 0x80090007; + // + // MessageId: NTE_BAD_ALGID + // + // MessageText: + // + // Invalid algorithm specified. + // + int NTE_BAD_ALGID = 0x80090008; + // + // MessageId: NTE_BAD_F;AGS + // + // MessageText: + // + // Invalid F;ags specified. + // + int NTE_BAD_FLAGS = 0x80090009; + // + // MessageId: NTE_BAD_TYPE + // + // MessageText: + // + // Invalid type specified. + // + int NTE_BAD_TYPE = 0x8009000A; + // + // MessageId: NTE_BAD_KEY_STATE + // + // MessageText: + // + // Key not valid for use in specified state. + // + int NTE_BAD_KEY_STATE = 0x8009000B; + // + // MessageId: NTE_BAD_HASH_STATE + // + // MessageText: + // + // Hash not valid for use in specified state. + // + int NTE_BAD_HASH_STATE = 0x8009000C; + // + // MessageId: NTE_NO_KEY + // + // MessageText: + // + // Key does not exist. + // + int NTE_NO_KEY = 0x8009000D; + // + // MessageId: NTE_NO_MEMORY + // + // MessageText: + // + // Insufficient memory available for the operation. + // + int NTE_NO_MEMORY = 0x8009000E; + // + // MessageId: NTE_EXISTS + // + // MessageText: + // + // Object already exists. + // + int NTE_EXISTS = 0x8009000F; + // + // MessageId: NTE_PERM + // + // MessageText: + // + // Access denied. + // + int NTE_PERM = 0x80090010; + // + // MessageId: NTE_NOT_FOUND + // + // MessageText: + // + // Object was not found. + // + int NTE_NOT_FOUND = 0x80090011; + // + // MessageId: NTE_DOUBLE_ENCRYPT + // + // MessageText: + // + // Data already encrypted. + // + int NTE_DOUBLE_ENCRYPT = 0x80090012; + // + // MessageId: NTE_BAD_PROVIDER + // + // MessageText: + // + // Invalid provider specified. + // + int NTE_BAD_PROVIDER = 0x80090013; + // + // MessageId: NTE_BAD_PROV_TYPE + // + // MessageText: + // + // Invalid provider type specified. + // + int NTE_BAD_PROV_TYPE = 0x80090014; + // + // MessageId: NTE_BAD_PUBLIC_KEY + // + // MessageText: + // + // Provider's public key is invalid. + // + int NTE_BAD_PUBLIC_KEY = 0x80090015; + // + // MessageId: NTE_BAD_KEYSET + // + // MessageText: + // + // Keyset does not exist + // + int NTE_BAD_KEYSET = 0x80090016; + // + // MessageId: NTE_PROV_TYPE_NOT_DEF + // + // MessageText: + // + // Provider type not defined. + // + int NTE_PROV_TYPE_NOT_DEF = 0x80090017; + // + // MessageId: NTE_PROV_TYPE_ENTRY_BAD + // + // MessageText: + // + // Provider type as registered is invalid. + // + int NTE_PROV_TYPE_ENTRY_BAD = 0x80090018; + // + // MessageId: NTE_KEYSET_NOT_DEF + // + // MessageText: + // + // The keyset is not defined. + // + int NTE_KEYSET_NOT_DEF = 0x80090019; + // + // MessageId: NTE_KEYSET_ENTRY_BAD + // + // MessageText: + // + // Keyset as registered is invalid. + // + int NTE_KEYSET_ENTRY_BAD = 0x8009001A; + // + // MessageId: NTE_PROV_TYPE_NO_MATCH + // + // MessageText: + // + // Provider type does not match registered value. + // + int NTE_PROV_TYPE_NO_MATCH = 0x8009001B; + // + // MessageId: NTE_SIGNATURE_FILE_BAD + // + // MessageText: + // + // The digital signature file is corrupt. + // + int NTE_SIGNATURE_FILE_BAD = 0x8009001C; + // + // MessageId: NTE_PROVIDER_DLL_FAIL + // + // MessageText: + // + // Provider DLL failed to initialize correctly. + // + int NTE_PROVIDER_DLL_FAIL = 0x8009001D; + // + // MessageId: NTE_PROV_DLL_NOT_FOUND + // + // MessageText: + // + // Provider DLL could not be found. + // + int NTE_PROV_DLL_NOT_FOUND = 0x8009001E; + // + // MessageId: NTE_BAD_KEYSET_PARAM + // + // MessageText: + // + // The Keyset parameter is invalid. + // + int NTE_BAD_KEYSET_PARAM = 0x8009001F; + // + // MessageId: NTE_FAIL + // + // MessageText: + // + // An internal error occurred. + // + int NTE_FAIL = 0x80090020; + // + // MessageId: NTE_SYS_ERR + // + // MessageText: + // + // A base error occurred. + // + int NTE_SYS_ERR = 0x80090021; + // + // MessageId: NTE_SILENT_CONTEXT + // + // MessageText: + // + // Provider could not perform the action since the context was acquired as + // silent. + // + int NTE_SILENT_CONTEXT = 0x80090022; + // + // MessageId: NTE_TOKEN_KEYSET_STORAGE_FULL + // + // MessageText: + // + // The security token does not have storage space available for an + // additional container. + // + int NTE_TOKEN_KEYSET_STORAGE_FULL = 0x80090023; + // + // MessageId: NTE_TEMPORARY_PROFILE + // + // MessageText: + // + // The profile for the user is a temporary profile. + // + int NTE_TEMPORARY_PROFILE = 0x80090024; + // + // MessageId: NTE_FIXEDPARAMETER + // + // MessageText: + // + // The key parameters could not be set because the CSP uses fixed + // parameters. + // + int NTE_FIXEDPARAMETER = 0x80090025; + // + // MessageId: NTE_INVALID_HANDLE + // + // MessageText: + // + // The supplied handle is invalid. + // + int NTE_INVALID_HANDLE = 0x80090026; + // + // MessageId: NTE_INVALID_PARAMETER + // + // MessageText: + // + // The parameter is incorrect. + // + int NTE_INVALID_PARAMETER = 0x80090027; + // + // MessageId: NTE_BUFFER_TOO_SMALL + // + // MessageText: + // + // The buffer supplied to a function was too small. + // + int NTE_BUFFER_TOO_SMALL = 0x80090028; + // + // MessageId: NTE_NOT_SUPPORTED + // + // MessageText: + // + // The requested operation is not supported. + // + int NTE_NOT_SUPPORTED = 0x80090029; + // + // MessageId: NTE_NO_MORE_ITEMS + // + // MessageText: + // + // No more data is available. + // + int NTE_NO_MORE_ITEMS = 0x8009002A; + // + // MessageId: NTE_BUFFERS_OVERLAP + // + // MessageText: + // + // The supplied buffers overlap incorrectly. + // + int NTE_BUFFERS_OVERLAP = 0x8009002B; + // + // MessageId: NTE_DECRYPTION_FAILURE + // + // MessageText: + // + // The specified data could not be decrypted. + // + int NTE_DECRYPTION_FAILURE = 0x8009002C; + // + // MessageId: NTE_INTERNAL_ERROR + // + // MessageText: + // + // An internal consistency check failed. + // + int NTE_INTERNAL_ERROR = 0x8009002D; + // + // MessageId: NTE_UI_REQUIRED + // + // MessageText: + // + // This operation requires input from the user. + // + int NTE_UI_REQUIRED = 0x8009002E; + // + // MessageId: NTE_HMAC_NOT_SUPPORTED + // + // MessageText: + // + // The cryptographic provider does not support HMAC. + // + int NTE_HMAC_NOT_SUPPORTED = 0x8009002F; + // + // MessageId: SEC_E_INSUFFICIENT_MEMORY + // + // MessageText: + // + // Not enough memory is available to complete this request + // + int SEC_E_INSUFFICIENT_MEMORY = 0x80090300; + // + // MessageId: SEC_E_INVALID_HANDLE + // + // MessageText: + // + // The handle specified is invalid + // + int SEC_E_INVALID_HANDLE = 0x80090301; + // + // MessageId: SEC_E_UNSUPPORTED_FUNCTION + // + // MessageText: + // + // The function requested is not supported + // + int SEC_E_UNSUPPORTED_FUNCTION = 0x80090302; + // + // MessageId: SEC_E_TARGET_UNKNOWN + // + // MessageText: + // + // The specified target is unknown or unreachable + // + int SEC_E_TARGET_UNKNOWN = 0x80090303; + // + // MessageId: SEC_E_INTERNAL_ERROR + // + // MessageText: + // + // The Local Security Authority cannot be contacted + // + int SEC_E_INTERNAL_ERROR = 0x80090304; + // + // MessageId: SEC_E_SECPKG_NOT_FOUND + // + // MessageText: + // + // The requested security package does not exist + // + int SEC_E_SECPKG_NOT_FOUND = 0x80090305; + // + // MessageId: SEC_E_NOT_OWNER + // + // MessageText: + // + // The caller is not the owner of the desired credentials + // + int SEC_E_NOT_OWNER = 0x80090306; + // + // MessageId: SEC_E_CANNOT_INSTALL + // + // MessageText: + // + // The security package failed to initialize, and cannot be installed + // + int SEC_E_CANNOT_INSTALL = 0x80090307; + // + // MessageId: SEC_E_INVALID_TOKEN + // + // MessageText: + // + // The token supplied to the function is invalid + // + int SEC_E_INVALID_TOKEN = 0x80090308; + // + // MessageId: SEC_E_CANNOT_PACK + // + // MessageText: + // + // The security package is not able to marshall the logon buffer, so the + // logon attempt has failed + // + int SEC_E_CANNOT_PACK = 0x80090309; + // + // MessageId: SEC_E_QOP_NOT_SUPPORTED + // + // MessageText: + // + // The per-message Quality of Protection is not supported by the security + // package + // + int SEC_E_QOP_NOT_SUPPORTED = 0x8009030A; + // + // MessageId: SEC_E_NO_IMPERSONATION + // + // MessageText: + // + // The security context does not allow impersonation of the client + // + int SEC_E_NO_IMPERSONATION = 0x8009030B; + // + // MessageId: SEC_E_LOGON_DENIED + // + // MessageText: + // + // The logon attempt failed + // + int SEC_E_LOGON_DENIED = 0x8009030C; + // + // MessageId: SEC_E_UNKNOWN_CREDENTIALS + // + // MessageText: + // + // The credentials supplied to the package were not recognized + // + int SEC_E_UNKNOWN_CREDENTIALS = 0x8009030D; + // + // MessageId: SEC_E_NO_CREDENTIALS + // + // MessageText: + // + // No credentials are available in the security package + // + int SEC_E_NO_CREDENTIALS = 0x8009030E; + // + // MessageId: SEC_E_MESSAGE_ALTERED + // + // MessageText: + // + // The message or signature supplied for verification has been altered + // + int SEC_E_MESSAGE_ALTERED = 0x8009030F; + // + // MessageId: SEC_E_OUT_OF_SEQUENCE + // + // MessageText: + // + // The message supplied for verification is out of sequence + // + int SEC_E_OUT_OF_SEQUENCE = 0x80090310; + // + // MessageId: SEC_E_NO_AUTHENTICATING_AUTHORITY + // + // MessageText: + // + // No authority could be contacted for authentication. + // + int SEC_E_NO_AUTHENTICATING_AUTHORITY = 0x80090311; + // + // MessageId: SEC_I_CONTINUE_NEEDED + // + // MessageText: + // + // The function completed successfully, but must be called again to complete + // the context + // + int SEC_I_CONTINUE_NEEDED = 0x00090312; + // + // MessageId: SEC_I_COMPLETE_NEEDED + // + // MessageText: + // + // The function completed successfully, but CompleteToken must be called + // + int SEC_I_COMPLETE_NEEDED = 0x00090313; + // + // MessageId: SEC_I_COMPLETE_AND_CONTINUE + // + // MessageText: + // + // The function completed successfully, but both CompleteToken and this + // function must be called to complete the context + // + int SEC_I_COMPLETE_AND_CONTINUE = 0x00090314; + // + // MessageId: SEC_I_LOCAL_LOGON + // + // MessageText: + // + // The logon was completed, but no network authority was available. The + // logon was made using locally known information + // + int SEC_I_LOCAL_LOGON = 0x00090315; + // + // MessageId: SEC_E_BAD_PKGID + // + // MessageText: + // + // The requested security package does not exist + // + int SEC_E_BAD_PKGID = 0x80090316; + // + // MessageId: SEC_E_CONTEXT_EXPIRED + // + // MessageText: + // + // The context has expired and can no longer be used. + // + int SEC_E_CONTEXT_EXPIRED = 0x80090317; + // + // MessageId: SEC_I_CONTEXT_EXPIRED + // + // MessageText: + // + // The context has expired and can no longer be used. + // + int SEC_I_CONTEXT_EXPIRED = 0x00090317; + // + // MessageId: SEC_E_INCOMPLETE_MESSAGE + // + // MessageText: + // + // The supplied message is incomplete. The signature was not verified. + // + int SEC_E_INCOMPLETE_MESSAGE = 0x80090318; + // + // MessageId: SEC_E_INCOMPLETE_CREDENTIALS + // + // MessageText: + // + // The credentials supplied were not complete, and could not be verified. + // The context could not be initialized. + // + int SEC_E_INCOMPLETE_CREDENTIALS = 0x80090320; + // + // MessageId: SEC_E_BUFFER_TOO_SMALL + // + // MessageText: + // + // The buffers supplied to a function was too small. + // + int SEC_E_BUFFER_TOO_SMALL = 0x80090321; + // + // MessageId: SEC_I_INCOMPLETE_CREDENTIALS + // + // MessageText: + // + // The credentials supplied were not complete, and could not be verified. + // Additional information can be returned from the context. + // + int SEC_I_INCOMPLETE_CREDENTIALS = 0x00090320; + // + // MessageId: SEC_I_RENEGOTIATE + // + // MessageText: + // + // The context data must be renegotiated with the peer. + // + int SEC_I_RENEGOTIATE = 0x00090321; + // + // MessageId: SEC_E_WRONG_PRINCIPAL + // + // MessageText: + // + // The target principal name is incorrect. + // + int SEC_E_WRONG_PRINCIPAL = 0x80090322; + // + // MessageId: SEC_I_NO_LSA_CONTEXT + // + // MessageText: + // + // There is no LSA mode context associated with this context. + // + int SEC_I_NO_LSA_CONTEXT = 0x00090323; + // + // MessageId: SEC_E_TIME_SKEW + // + // MessageText: + // + // The clocks on the client and server machines are skewed. + // + int SEC_E_TIME_SKEW = 0x80090324; + // + // MessageId: SEC_E_UNTRUSTED_ROOT + // + // MessageText: + // + // The certificate chain was issued by an authority that is not trusted. + // + int SEC_E_UNTRUSTED_ROOT = 0x80090325; + // + // MessageId: SEC_E_ILLEGAL_MESSAGE + // + // MessageText: + // + // The message received was unexpected or badly formatted. + // + int SEC_E_ILLEGAL_MESSAGE = 0x80090326; + // + // MessageId: SEC_E_CERT_UNKNOWN + // + // MessageText: + // + // An unknown error occurred while processing the certificate. + // + int SEC_E_CERT_UNKNOWN = 0x80090327; + // + // MessageId: SEC_E_CERT_EXPIRED + // + // MessageText: + // + // The received certificate has expired. + // + int SEC_E_CERT_EXPIRED = 0x80090328; + // + // MessageId: SEC_E_ENCRYPT_FAILURE + // + // MessageText: + // + // The specified data could not be encrypted. + // + int SEC_E_ENCRYPT_FAILURE = 0x80090329; + // + // MessageId: SEC_E_DECRYPT_FAILURE + // + // MessageText: + // + // The specified data could not be decrypted. + // + // + int SEC_E_DECRYPT_FAILURE = 0x80090330; + // + // MessageId: SEC_E_ALGORITHM_MISMATCH + // + // MessageText: + // + // The client and server cannot communicate, because they do not possess a + // common algorithm. + // + int SEC_E_ALGORITHM_MISMATCH = 0x80090331; + // + // MessageId: SEC_E_SECURITY_QOS_FAILED + // + // MessageText: + // + // The security context could not be established due to a failure in the + // requested quality of service (e.g. mutual authentication or delegation). + // + int SEC_E_SECURITY_QOS_FAILED = 0x80090332; + // + // MessageId: SEC_E_UNFINISHED_CONTEXT_DELETED + // + // MessageText: + // + // A security context was deleted before the context was completed. This is + // considered a logon failure. + // + int SEC_E_UNFINISHED_CONTEXT_DELETED = 0x80090333; + // + // MessageId: SEC_E_NO_TGT_REPLY + // + // MessageText: + // + // The client is trying to negotiate a context and the server requires + // user-to-user but didn't send a TGT reply. + // + int SEC_E_NO_TGT_REPLY = 0x80090334; + // + // MessageId: SEC_E_NO_IP_ADDRESSES + // + // MessageText: + // + // Unable to accomplish the requested task because the local machine does + // not have any IP addresses. + // + int SEC_E_NO_IP_ADDRESSES = 0x80090335; + // + // MessageId: SEC_E_WRONG_CREDENTIAL_HANDLE + // + // MessageText: + // + // The supplied credential handle does not match the credential associated + // with the security context. + // + int SEC_E_WRONG_CREDENTIAL_HANDLE = 0x80090336; + // + // MessageId: SEC_E_CRYPTO_SYSTEM_INVALID + // + // MessageText: + // + // The crypto system or checksum function is invalid because a required + // function is unavailable. + // + int SEC_E_CRYPTO_SYSTEM_INVALID = 0x80090337; + // + // MessageId: SEC_E_MAX_REFERRALS_EXCEEDED + // + // MessageText: + // + // The number of maximum ticket referrals has been exceeded. + // + int SEC_E_MAX_REFERRALS_EXCEEDED = 0x80090338; + // + // MessageId: SEC_E_MUST_BE_KDC + // + // MessageText: + // + // The local machine must be a Kerberos KDC (domain controller) and it is + // not. + // + int SEC_E_MUST_BE_KDC = 0x80090339; + // + // MessageId: SEC_E_STRONG_CRYPTO_NOT_SUPPORTED + // + // MessageText: + // + // The other end of the security negotiation is requires strong crypto but + // it is not supported on the local machine. + // + int SEC_E_STRONG_CRYPTO_NOT_SUPPORTED = 0x8009033A; + // + // MessageId: SEC_E_TOO_MANY_PRINCIPALS + // + // MessageText: + // + // The KDC reply contained more than one principal name. + // + int SEC_E_TOO_MANY_PRINCIPALS = 0x8009033B; + // + // MessageId: SEC_E_NO_PA_DATA + // + // MessageText: + // + // Expected to find PA data for a hint of what etype to use, but it was not + // found. + // + int SEC_E_NO_PA_DATA = 0x8009033C; + // + // MessageId: SEC_E_PKINIT_NAME_MISMATCH + // + // MessageText: + // + // The client certificate does not contain a valid UPN, or does not match + // the client name + // in the logon request. Please contact your administrator. + // + int SEC_E_PKINIT_NAME_MISMATCH = 0x8009033D; + // + // MessageId: SEC_E_SMARTCARD_LOGON_REQUIRED + // + // MessageText: + // + // Smartcard logon is required and was not used. + // + int SEC_E_SMARTCARD_LOGON_REQUIRED = 0x8009033E; + // + // MessageId: SEC_E_SHUTDOWN_IN_PROGRESS + // + // MessageText: + // + // A system shutdown is in progress. + // + int SEC_E_SHUTDOWN_IN_PROGRESS = 0x8009033F; + // + // MessageId: SEC_E_KDC_INVALID_REQUEST + // + // MessageText: + // + // An invalid request was sent to the KDC. + // + int SEC_E_KDC_INVALID_REQUEST = 0x80090340; + // + // MessageId: SEC_E_KDC_UNABLE_TO_REFER + // + // MessageText: + // + // The KDC was unable to generate a referral for the service requested. + // + int SEC_E_KDC_UNABLE_TO_REFER = 0x80090341; + // + // MessageId: SEC_E_KDC_UNKNOWN_ETYPE + // + // MessageText: + // + // The encryption type requested is not supported by the KDC. + // + int SEC_E_KDC_UNKNOWN_ETYPE = 0x80090342; + // + // MessageId: SEC_E_UNSUPPORTED_PREAUTH + // + // MessageText: + // + // An unsupported preauthentication mechanism was presented to the kerberos + // package. + // + int SEC_E_UNSUPPORTED_PREAUTH = 0x80090343; + // + // MessageId: SEC_E_DELEGATION_REQUIRED + // + // MessageText: + // + // The requested operation cannot be completed. The computer must be trusted + // for delegation and the current user account must be configured to allow + // delegation. + // + int SEC_E_DELEGATION_REQUIRED = 0x80090345; + // + // MessageId: SEC_E_BAD_BINDINGS + // + // MessageText: + // + // Client's supplied SSPI channel bindings were incorrect. + // + int SEC_E_BAD_BINDINGS = 0x80090346; + // + // MessageId: SEC_E_MULTIPLE_ACCOUNTS + // + // MessageText: + // + // The received certificate was mapped to multiple accounts. + // + int SEC_E_MULTIPLE_ACCOUNTS = 0x80090347; + // + // MessageId: SEC_E_NO_KERB_KEY + // + // MessageText: + // + // SEC_E_NO_KERB_KEY + // + int SEC_E_NO_KERB_KEY = 0x80090348; + // + // MessageId: SEC_E_CERT_WRONG_USAGE + // + // MessageText: + // + // The certificate is not valid for the requested usage. + // + int SEC_E_CERT_WRONG_USAGE = 0x80090349; + // + // MessageId: SEC_E_DOWNGRADE_DETECTED + // + // MessageText: + // + // The system detected a possible attempt to compromise security. Please + // ensure that you can contact the server that authenticated you. + // + int SEC_E_DOWNGRADE_DETECTED = 0x80090350; + // + // MessageId: SEC_E_SMARTCARD_CERT_REVOKED + // + // MessageText: + // + // The smartcard certificate used for authentication has been revoked. + // Please contact your system administrator. There may be additional + // information in the event log. + // + int SEC_E_SMARTCARD_CERT_REVOKED = 0x80090351; + // + // MessageId: SEC_E_ISSUING_CA_UNTRUSTED + // + // MessageText: + // + // An untrusted certificate authority was detected While processing the + // smartcard certificate used for authentication. Please contact your system + // administrator. + // + int SEC_E_ISSUING_CA_UNTRUSTED = 0x80090352; + // + // MessageId: SEC_E_REVOCATION_OFF;INE_C + // + // MessageText: + // + // The revocation status of the smartcard certificate used for + // authentication could not be determined. Please contact your system + // administrator. + // + int SEC_E_REVOCATION_OFFLINE_C = 0x80090353; + // + // MessageId: SEC_E_PKINIT_CLIENT_FAILURE + // + // MessageText: + // + // The smartcard certificate used for authentication was not trusted. Please + // contact your system administrator. + // + int SEC_E_PKINIT_CLIENT_FAILURE = 0x80090354; + // + // MessageId: SEC_E_SMARTCARD_CERT_EXPIRED + // + // MessageText: + // + // The smartcard certificate used for authentication has expired. Please + // contact your system administrator. + // + int SEC_E_SMARTCARD_CERT_EXPIRED = 0x80090355; + // + // MessageId: SEC_E_NO_S4U_PROT_SUPPORT + // + // MessageText: + // + // The Kerberos subsystem encountered an error. A service for user protocol + // request was made against a domain controller which does not support + // service for user. + // + int SEC_E_NO_S4U_PROT_SUPPORT = 0x80090356; + // + // MessageId: SEC_E_CROSSREALM_DELEGATION_FAILURE + // + // MessageText: + // + // An attempt was made by this server to make a Kerberos constrained + // delegation request for a target outside of the server's realm. This is + // not supported, and indicates a misconfiguration on this server's allowed + // to delegate to list. Please contact your administrator. + // + int SEC_E_CROSSREALM_DELEGATION_FAILURE = 0x80090357; + // + // MessageId: SEC_E_REVOCATION_OFF;INE_KDC + // + // MessageText: + // + // The revocation status of the domain controller certificate used for + // smartcard authentication could not be determined. There is additional + // information in the system event log. Please contact your system + // administrator. + // + int SEC_E_REVOCATION_OFFLINE_KDC = 0x80090358; + // + // MessageId: SEC_E_ISSUING_CA_UNTRUSTED_KDC + // + // MessageText: + // + // An untrusted certificate authority was detected while processing the + // domain controller certificate used for authentication. There is + // additional information in the system event log. Please contact your + // system administrator. + // + int SEC_E_ISSUING_CA_UNTRUSTED_KDC = 0x80090359; + // + // MessageId: SEC_E_KDC_CERT_EXPIRED + // + // MessageText: + // + // The domain controller certificate used for smartcard logon has expired. + // Please contact your system administrator with the contents of your system + // event log. + // + int SEC_E_KDC_CERT_EXPIRED = 0x8009035A; + // + // MessageId: SEC_E_KDC_CERT_REVOKED + // + // MessageText: + // + // The domain controller certificate used for smartcard logon has been + // revoked. Please contact your system administrator with the contents of + // your system event log. + // + int SEC_E_KDC_CERT_REVOKED = 0x8009035B; + // + // MessageId: SEC_I_SIGNATURE_NEEDED + // + // MessageText: + // + // A signature operation must be performed before the user can authenticate. + // + int SEC_I_SIGNATURE_NEEDED = 0x0009035C; + // + // MessageId: SEC_E_INVALID_PARAMETER + // + // MessageText: + // + // One or more of the parameters passed to the function was invalid. + // + int SEC_E_INVALID_PARAMETER = 0x8009035D; + // + // MessageId: SEC_E_DELEGATION_POLICY + // + // MessageText: + // + // Client policy does not allow credential delegation to target server. + // + int SEC_E_DELEGATION_POLICY = 0x8009035E; + // + // MessageId: SEC_E_POLICY_NLTM_ONLY + // + // MessageText: + // + // Client policy does not allow credential delegation to target server with + // NLTM only authentication. + // + int SEC_E_POLICY_NLTM_ONLY = 0x8009035F; + // + // MessageId: SEC_I_NO_RENEGOTIATION + // + // MessageText: + // + // The recipient rejected the renegotiation request. + // + int SEC_I_NO_RENEGOTIATION = 0x00090360; + // + // Provided for backwards compatibility + // + int SEC_E_NO_SPM = SEC_E_INTERNAL_ERROR; + int SEC_E_NOT_SUPPORTED = SEC_E_UNSUPPORTED_FUNCTION; + // + // MessageId: CRYPT_E_MSG_ERROR + // + // MessageText: + // + // An error occurred while performing an operation on a cryptographic + // message. + // + int CRYPT_E_MSG_ERROR = 0x80091001; + // + // MessageId: CRYPT_E_UNKNOWN_ALGO + // + // MessageText: + // + // Unknown cryptographic algorithm. + // + int CRYPT_E_UNKNOWN_ALGO = 0x80091002; + // + // MessageId: CRYPT_E_OID_FORMAT + // + // MessageText: + // + // The object identifier is poorly formatted. + // + int CRYPT_E_OID_FORMAT = 0x80091003; + // + // MessageId: CRYPT_E_INVALID_MSG_TYPE + // + // MessageText: + // + // Invalid cryptographic message type. + // + int CRYPT_E_INVALID_MSG_TYPE = 0x80091004; + // + // MessageId: CRYPT_E_UNEXPECTED_ENCODING + // + // MessageText: + // + // Unexpected cryptographic message encoding. + // + int CRYPT_E_UNEXPECTED_ENCODING = 0x80091005; + // + // MessageId: CRYPT_E_AUTH_ATTR_MISSING + // + // MessageText: + // + // The cryptographic message does not contain an expected authenticated + // attribute. + // + int CRYPT_E_AUTH_ATTR_MISSING = 0x80091006; + // + // MessageId: CRYPT_E_HASH_VALUE + // + // MessageText: + // + // The hash value is not correct. + // + int CRYPT_E_HASH_VALUE = 0x80091007; + // + // MessageId: CRYPT_E_INVALID_INDEX + // + // MessageText: + // + // The index value is not valid. + // + int CRYPT_E_INVALID_INDEX = 0x80091008; + // + // MessageId: CRYPT_E_ALREADY_DECRYPTED + // + // MessageText: + // + // The content of the cryptographic message has already been decrypted. + // + int CRYPT_E_ALREADY_DECRYPTED = 0x80091009; + // + // MessageId: CRYPT_E_NOT_DECRYPTED + // + // MessageText: + // + // The content of the cryptographic message has not been decrypted yet. + // + int CRYPT_E_NOT_DECRYPTED = 0x8009100A; + // + // MessageId: CRYPT_E_RECIPIENT_NOT_FOUND + // + // MessageText: + // + // The enveloped-data message does not contain the specified recipient. + // + int CRYPT_E_RECIPIENT_NOT_FOUND = 0x8009100B; + // + // MessageId: CRYPT_E_CONTROL_TYPE + // + // MessageText: + // + // Invalid control type. + // + int CRYPT_E_CONTROL_TYPE = 0x8009100C; + // + // MessageId: CRYPT_E_ISSUER_SERIALNUMBER + // + // MessageText: + // + // Invalid issuer and/or serial number. + // + int CRYPT_E_ISSUER_SERIALNUMBER = 0x8009100D; + // + // MessageId: CRYPT_E_SIGNER_NOT_FOUND + // + // MessageText: + // + // Cannot find the original signer. + // + int CRYPT_E_SIGNER_NOT_FOUND = 0x8009100E; + // + // MessageId: CRYPT_E_ATTRIBUTES_MISSING + // + // MessageText: + // + // The cryptographic message does not contain all of the requested + // attributes. + // + int CRYPT_E_ATTRIBUTES_MISSING = 0x8009100F; + // + // MessageId: CRYPT_E_STREAM_MSG_NOT_READY + // + // MessageText: + // + // The streamed cryptographic message is not ready to return data. + // + int CRYPT_E_STREAM_MSG_NOT_READY = 0x80091010; + // + // MessageId: CRYPT_E_STREAM_INSUFFICIENT_DATA + // + // MessageText: + // + // The streamed cryptographic message requires more data to complete the + // decode operation. + // + int CRYPT_E_STREAM_INSUFFICIENT_DATA = 0x80091011; + // + // MessageId: CRYPT_I_NEW_PROTECTION_REQUIRED + // + // MessageText: + // + // The protected data needs to be re-protected. + // + int CRYPT_I_NEW_PROTECTION_REQUIRED = 0x00091012; + // + // MessageId: CRYPT_E_BAD_LEN + // + // MessageText: + // + // The length specified for the output data was insufficient. + // + int CRYPT_E_BAD_LEN = 0x80092001; + // + // MessageId: CRYPT_E_BAD_ENCODE + // + // MessageText: + // + // An error occurred during encode or decode operation. + // + int CRYPT_E_BAD_ENCODE = 0x80092002; + // + // MessageId: CRYPT_E_FILE_ERROR + // + // MessageText: + // + // An error occurred while reading or writing to a file. + // + int CRYPT_E_FILE_ERROR = 0x80092003; + // + // MessageId: CRYPT_E_NOT_FOUND + // + // MessageText: + // + // Cannot find object or property. + // + int CRYPT_E_NOT_FOUND = 0x80092004; + // + // MessageId: CRYPT_E_EXISTS + // + // MessageText: + // + // The object or property already exists. + // + int CRYPT_E_EXISTS = 0x80092005; + // + // MessageId: CRYPT_E_NO_PROVIDER + // + // MessageText: + // + // No provider was specified for the store or object. + // + int CRYPT_E_NO_PROVIDER = 0x80092006; + // + // MessageId: CRYPT_E_SELF_SIGNED + // + // MessageText: + // + // The specified certificate is self signed. + // + int CRYPT_E_SELF_SIGNED = 0x80092007; + // + // MessageId: CRYPT_E_DELETED_PREV + // + // MessageText: + // + // The previous certificate or CRL context was deleted. + // + int CRYPT_E_DELETED_PREV = 0x80092008; + // + // MessageId: CRYPT_E_NO_MATCH + // + // MessageText: + // + // Cannot find the requested object. + // + int CRYPT_E_NO_MATCH = 0x80092009; + // + // MessageId: CRYPT_E_UNEXPECTED_MSG_TYPE + // + // MessageText: + // + // The certificate does not have a property that references a private key. + // + int CRYPT_E_UNEXPECTED_MSG_TYPE = 0x8009200A; + // + // MessageId: CRYPT_E_NO_KEY_PROPERTY + // + // MessageText: + // + // Cannot find the certificate and private key for decryption. + // + int CRYPT_E_NO_KEY_PROPERTY = 0x8009200B; + // + // MessageId: CRYPT_E_NO_DECRYPT_CERT + // + // MessageText: + // + // Cannot find the certificate and private key to use for decryption. + // + int CRYPT_E_NO_DECRYPT_CERT = 0x8009200C; + // + // MessageId: CRYPT_E_BAD_MSG + // + // MessageText: + // + // Not a cryptographic message or the cryptographic message is not formatted + // correctly. + // + int CRYPT_E_BAD_MSG = 0x8009200D; + // + // MessageId: CRYPT_E_NO_SIGNER + // + // MessageText: + // + // The signed cryptographic message does not have a signer for the specified + // signer index. + // + int CRYPT_E_NO_SIGNER = 0x8009200E; + // + // MessageId: CRYPT_E_PENDING_CLOSE + // + // MessageText: + // + // Final closure is pending until additional frees or closes. + // + int CRYPT_E_PENDING_CLOSE = 0x8009200F; + // + // MessageId: CRYPT_E_REVOKED + // + // MessageText: + // + // The certificate is revoked. + // + int CRYPT_E_REVOKED = 0x80092010; + // + // MessageId: CRYPT_E_NO_REVOCATION_DLL + // + // MessageText: + // + // No Dll or exported function was found to verify revocation. + // + int CRYPT_E_NO_REVOCATION_DLL = 0x80092011; + // + // MessageId: CRYPT_E_NO_REVOCATION_CHECK + // + // MessageText: + // + // The revocation function was unable to check revocation for the + // certificate. + // + int CRYPT_E_NO_REVOCATION_CHECK = 0x80092012; + // + // MessageId: CRYPT_E_REVOCATION_OFF;INE + // + // MessageText: + // + // The revocation function was unable to check revocation because the + // revocation server was ofF;ine. + // + int CRYPT_E_REVOCATION_OFFLINE = 0x80092013; + // + // MessageId: CRYPT_E_NOT_IN_REVOCATION_DATABASE + // + // MessageText: + // + // The certificate is not in the revocation server's database. + // + int CRYPT_E_NOT_IN_REVOCATION_DATABASE = 0x80092014; + // + // MessageId: CRYPT_E_INVALID_NUMERIC_STRING + // + // MessageText: + // + // The string contains a non-numeric character. + // + int CRYPT_E_INVALID_NUMERIC_STRING = 0x80092020; + // + // MessageId: CRYPT_E_INVALID_PRINTABLE_STRING + // + // MessageText: + // + // The string contains a non-printable character. + // + int CRYPT_E_INVALID_PRINTABLE_STRING = 0x80092021; + // + // MessageId: CRYPT_E_INVALID_IA5_STRING + // + // MessageText: + // + // The string contains a character not in the=7 bit ASCII character set. + // + int CRYPT_E_INVALID_IA5_STRING = 0x80092022; + // + // MessageId: CRYPT_E_INVALID_X500_STRING + // + // MessageText: + // + // The string contains an invalid X500 name attribute key, oid, value or + // delimiter. + // + int CRYPT_E_INVALID_X500_STRING = 0x80092023; + // + // MessageId: CRYPT_E_NOT_CHAR_STRING + // + // MessageText: + // + // The dwValueType for the CERT_NAME_VALUE is not one of the character + // strings. Most likely it is either a CERT_RDN_ENCODED_BLOB or + // CERT_TDN_OCTED_STRING. + // + int CRYPT_E_NOT_CHAR_STRING = 0x80092024; + // + // MessageId: CRYPT_E_FILERESIZED + // + // MessageText: + // + // The Put operation cannot continue. The file needs to be resized. However, + // there is already a signature present. A complete signing operation must + // be done. + // + int CRYPT_E_FILERESIZED = 0x80092025; + // + // MessageId: CRYPT_E_SECURITY_SETTINGS + // + // MessageText: + // + // The cryptographic operation failed due to a local security option + // setting. + // + int CRYPT_E_SECURITY_SETTINGS = 0x80092026; + // + // MessageId: CRYPT_E_NO_VERIFY_USAGE_DLL + // + // MessageText: + // + // No DLL or exported function was found to verify subject usage. + // + int CRYPT_E_NO_VERIFY_USAGE_DLL = 0x80092027; + // + // MessageId: CRYPT_E_NO_VERIFY_USAGE_CHECK + // + // MessageText: + // + // The called function was unable to do a usage check on the subject. + // + int CRYPT_E_NO_VERIFY_USAGE_CHECK = 0x80092028; + // + // MessageId: CRYPT_E_VERIFY_USAGE_OFF;INE + // + // MessageText: + // + // Since the server was ofF;ine, the called function was unable to complete + // the usage check. + // + int CRYPT_E_VERIFY_USAGE_OFFLINE = 0x80092029; + // + // MessageId: CRYPT_E_NOT_IN_CTL + // + // MessageText: + // + // The subject was not found in a Certificate Trust List (CT;. + // + int CRYPT_E_NOT_IN_CTL = 0x8009202A; + // + // MessageId: CRYPT_E_NO_TRUSTED_SIGNER + // + // MessageText: + // + // None of the signers of the cryptographic message or certificate trust + // list is trusted. + // + int CRYPT_E_NO_TRUSTED_SIGNER = 0x8009202B; + // + // MessageId: CRYPT_E_MISSING_PUBKEY_PARA + // + // MessageText: + // + // The public key's algorithm parameters are missing. + // + int CRYPT_E_MISSING_PUBKEY_PARA = 0x8009202C; + // + // MessageId: CRYPT_E_OSS_ERROR + // + // MessageText: + // + // OSS Certificate encode/decode error code base + // + // See asn1code.h for a definition of the OSS runtime errors. The OSS + // error values are offset by CRYPT_E_OSS_ERROR. + // + int CRYPT_E_OSS_ERROR = 0x80093000; + // + // MessageId: OSS_MORE_BUF + // + // MessageText: + // + // OSS ASN.1 Error: Output Buffer is too small. + // + int OSS_MORE_BUF = 0x80093001; + // + // MessageId: OSS_NEGATIVE_UINTEGER + // + // MessageText: + // + // OSS ASN.1 Error: Signed integer is encoded as a unsigned integer. + // + int OSS_NEGATIVE_UINTEGER = 0x80093002; + // + // MessageId: OSS_PDU_RANGE + // + // MessageText: + // + // OSS ASN.1 Error: Unknown ASN.1 data type. + // + int OSS_PDU_RANGE = 0x80093003; + // + // MessageId: OSS_MORE_INPUT + // + // MessageText: + // + // OSS ASN.1 Error: Output buffer is too small, the decoded data has been + // truncated. + // + int OSS_MORE_INPUT = 0x80093004; + // + // MessageId: OSS_DATA_ERROR + // + // MessageText: + // + // OSS ASN.1 Error: Invalid data. + // + int OSS_DATA_ERROR = 0x80093005; + // + // MessageId: OSS_BAD_ARG + // + // MessageText: + // + // OSS ASN.1 Error: Invalid argument. + // + int OSS_BAD_ARG = 0x80093006; + // + // MessageId: OSS_BAD_VERSION + // + // MessageText: + // + // OSS ASN.1 Error: Encode/Decode version mismatch. + // + int OSS_BAD_VERSION = 0x80093007; + // + // MessageId: OSS_OUT_MEMORY + // + // MessageText: + // + // OSS ASN.1 Error: Out of memory. + // + int OSS_OUT_MEMORY = 0x80093008; + // + // MessageId: OSS_PDU_MISMATCH + // + // MessageText: + // + // OSS ASN.1 Error: Encode/Decode Error. + // + int OSS_PDU_MISMATCH = 0x80093009; + // + // MessageId: OSS_LIMITED + // + // MessageText: + // + // OSS ASN.1 Error: Internal Error. + // + int OSS_LIMITED = 0x8009300A; + // + // MessageId: OSS_BAD_PTR + // + // MessageText: + // + // OSS ASN.1 Error: Invalid data. + // + int OSS_BAD_PTR = 0x8009300B; + // + // MessageId: OSS_BAD_TIME + // + // MessageText: + // + // OSS ASN.1 Error: Invalid data. + // + int OSS_BAD_TIME = 0x8009300C; + // + // MessageId: OSS_INDEFINITE_NOT_SUPPORTED + // + // MessageText: + // + // OSS ASN.1 Error: Unsupported BER indefinite-length encoding. + // + int OSS_INDEFINITE_NOT_SUPPORTED = 0x8009300D; + // + // MessageId: OSS_MEM_ERROR + // + // MessageText: + // + // OSS ASN.1 Error: Access violation. + // + int OSS_MEM_ERROR = 0x8009300E; + // + // MessageId: OSS_BAD_TABLE + // + // MessageText: + // + // OSS ASN.1 Error: Invalid data. + // + int OSS_BAD_TABLE = 0x8009300F; + // + // MessageId: OSS_TOO_LONG + // + // MessageText: + // + // OSS ASN.1 Error: Invalid data. + // + int OSS_TOO_LONG = 0x80093010; + // + // MessageId: OSS_CONSTRAINT_VIOLATED + // + // MessageText: + // + // OSS ASN.1 Error: Invalid data. + // + int OSS_CONSTRAINT_VIOLATED = 0x80093011; + // + // MessageId: OSS_FATAL_ERROR + // + // MessageText: + // + // OSS ASN.1 Error: Internal Error. + // + int OSS_FATAL_ERROR = 0x80093012; + // + // MessageId: OSS_ACCESS_SERIALIZATION_ERROR + // + // MessageText: + // + // OSS ASN.1 Error: Multi-threading conF;ict. + // + int OSS_ACCESS_SERIALIZATION_ERROR = 0x80093013; + // + // MessageId: OSS_NULL_TBL + // + // MessageText: + // + // OSS ASN.1 Error: Invalid data. + // + int OSS_NULL_TBL = 0x80093014; + // + // MessageId: OSS_NULL_FCN + // + // MessageText: + // + // OSS ASN.1 Error: Invalid data. + // + int OSS_NULL_FCN = 0x80093015; + // + // MessageId: OSS_BAD_ENCRULES + // + // MessageText: + // + // OSS ASN.1 Error: Invalid data. + // + int OSS_BAD_ENCRULES = 0x80093016; + // + // MessageId: OSS_UNAVAIL_ENCRULES + // + // MessageText: + // + // OSS ASN.1 Error: Encode/Decode function not implemented. + // + int OSS_UNAVAIL_ENCRULES = 0x80093017; + // + // MessageId: OSS_CANT_OPEN_TRACE_WINDOW + // + // MessageText: + // + // OSS ASN.1 Error: Trace file error. + // + int OSS_CANT_OPEN_TRACE_WINDOW = 0x80093018; + // + // MessageId: OSS_UNIMPLEMENTED + // + // MessageText: + // + // OSS ASN.1 Error: Function not implemented. + // + int OSS_UNIMPLEMENTED = 0x80093019; + // + // MessageId: OSS_OID_DLL_NOT_LINKED + // + // MessageText: + // + // OSS ASN.1 Error: Program link error. + // + int OSS_OID_DLL_NOT_LINKED = 0x8009301A; + // + // MessageId: OSS_CANT_OPEN_TRACE_FILE + // + // MessageText: + // + // OSS ASN.1 Error: Trace file error. + // + int OSS_CANT_OPEN_TRACE_FILE = 0x8009301B; + // + // MessageId: OSS_TRACE_FILE_ALREADY_OPEN + // + // MessageText: + // + // OSS ASN.1 Error: Trace file error. + // + int OSS_TRACE_FILE_ALREADY_OPEN = 0x8009301C; + // + // MessageId: OSS_TABLE_MISMATCH + // + // MessageText: + // + // OSS ASN.1 Error: Invalid data. + // + int OSS_TABLE_MISMATCH = 0x8009301D; + // + // MessageId: OSS_TYPE_NOT_SUPPORTED + // + // MessageText: + // + // OSS ASN.1 Error: Invalid data. + // + int OSS_TYPE_NOT_SUPPORTED = 0x8009301E; + // + // MessageId: OSS_REAL_DLL_NOT_LINKED + // + // MessageText: + // + // OSS ASN.1 Error: Program link error. + // + int OSS_REAL_DLL_NOT_LINKED = 0x8009301F; + // + // MessageId: OSS_REAL_CODE_NOT_LINKED + // + // MessageText: + // + // OSS ASN.1 Error: Program link error. + // + int OSS_REAL_CODE_NOT_LINKED = 0x80093020; + // + // MessageId: OSS_OUT_OF_RANGE + // + // MessageText: + // + // OSS ASN.1 Error: Program link error. + // + int OSS_OUT_OF_RANGE = 0x80093021; + // + // MessageId: OSS_COPIER_DLL_NOT_LINKED + // + // MessageText: + // + // OSS ASN.1 Error: Program link error. + // + int OSS_COPIER_DLL_NOT_LINKED = 0x80093022; + // + // MessageId: OSS_CONSTRAINT_DLL_NOT_LINKED + // + // MessageText: + // + // OSS ASN.1 Error: Program link error. + // + int OSS_CONSTRAINT_DLL_NOT_LINKED = 0x80093023; + // + // MessageId: OSS_COMPARATOR_DLL_NOT_LINKED + // + // MessageText: + // + // OSS ASN.1 Error: Program link error. + // + int OSS_COMPARATOR_DLL_NOT_LINKED = 0x80093024; + // + // MessageId: OSS_COMPARATOR_CODE_NOT_LINKED + // + // MessageText: + // + // OSS ASN.1 Error: Program link error. + // + int OSS_COMPARATOR_CODE_NOT_LINKED = 0x80093025; + // + // MessageId: OSS_MEM_MGR_DLL_NOT_LINKED + // + // MessageText: + // + // OSS ASN.1 Error: Program link error. + // + int OSS_MEM_MGR_DLL_NOT_LINKED = 0x80093026; + // + // MessageId: OSS_PDV_DLL_NOT_LINKED + // + // MessageText: + // + // OSS ASN.1 Error: Program link error. + // + int OSS_PDV_DLL_NOT_LINKED = 0x80093027; + // + // MessageId: OSS_PDV_CODE_NOT_LINKED + // + // MessageText: + // + // OSS ASN.1 Error: Program link error. + // + int OSS_PDV_CODE_NOT_LINKED = 0x80093028; + // + // MessageId: OSS_API_DLL_NOT_LINKED + // + // MessageText: + // + // OSS ASN.1 Error: Program link error. + // + int OSS_API_DLL_NOT_LINKED = 0x80093029; + // + // MessageId: OSS_BERDER_DLL_NOT_LINKED + // + // MessageText: + // + // OSS ASN.1 Error: Program link error. + // + int OSS_BERDER_DLL_NOT_LINKED = 0x8009302A; + // + // MessageId: OSS_PER_DLL_NOT_LINKED + // + // MessageText: + // + // OSS ASN.1 Error: Program link error. + // + int OSS_PER_DLL_NOT_LINKED = 0x8009302B; + // + // MessageId: OSS_OPEN_TYPE_ERROR + // + // MessageText: + // + // OSS ASN.1 Error: Program link error. + // + int OSS_OPEN_TYPE_ERROR = 0x8009302C; + // + // MessageId: OSS_MUTEX_NOT_CREATED + // + // MessageText: + // + // OSS ASN.1 Error: System resource error. + // + int OSS_MUTEX_NOT_CREATED = 0x8009302D; + // + // MessageId: OSS_CANT_CLOSE_TRACE_FILE + // + // MessageText: + // + // OSS ASN.1 Error: Trace file error. + // + int OSS_CANT_CLOSE_TRACE_FILE = 0x8009302E; + // + // MessageId: CRYPT_E_ASN1_ERROR + // + // MessageText: + // + // ASN1 Certificate encode/decode error code base. + // + // The ASN1 error values are offset by CRYPT_E_ASN1_ERROR. + // + int CRYPT_E_ASN1_ERROR = 0x80093100; + // + // MessageId: CRYPT_E_ASN1_INTERNAL + // + // MessageText: + // + // ASN1 internal encode or decode error. + // + int CRYPT_E_ASN1_INTERNAL = 0x80093101; + // + // MessageId: CRYPT_E_ASN1_EOD + // + // MessageText: + // + // ASN1 unexpected end of data. + // + int CRYPT_E_ASN1_EOD = 0x80093102; + // + // MessageId: CRYPT_E_ASN1_CORRUPT + // + // MessageText: + // + // ASN1 corrupted data. + // + int CRYPT_E_ASN1_CORRUPT = 0x80093103; + // + // MessageId: CRYPT_E_ASN1_LARGE + // + // MessageText: + // + // ASN1 value too large. + // + int CRYPT_E_ASN1_LARGE = 0x80093104; + // + // MessageId: CRYPT_E_ASN1_CONSTRAINT + // + // MessageText: + // + // ASN1 constraint violated. + // + int CRYPT_E_ASN1_CONSTRAINT = 0x80093105; + // + // MessageId: CRYPT_E_ASN1_MEMORY + // + // MessageText: + // + // ASN1 out of memory. + // + int CRYPT_E_ASN1_MEMORY = 0x80093106; + // + // MessageId: CRYPT_E_ASN1_OVERF;OW + // + // MessageText: + // + // ASN1 buffer overF;ow. + // + int CRYPT_E_ASN1_OVERFLOW = 0x80093107; + // + // MessageId: CRYPT_E_ASN1_BADPDU + // + // MessageText: + // + // ASN1 function not supported for this PDU. + // + int CRYPT_E_ASN1_BADPDU = 0x80093108; + // + // MessageId: CRYPT_E_ASN1_BADARGS + // + // MessageText: + // + // ASN1 bad arguments to function call. + // + int CRYPT_E_ASN1_BADARGS = 0x80093109; + // + // MessageId: CRYPT_E_ASN1_BADREAL + // + // MessageText: + // + // ASN1 bad real value. + // + int CRYPT_E_ASN1_BADREAL = 0x8009310A; + // + // MessageId: CRYPT_E_ASN1_BADTAG + // + // MessageText: + // + // ASN1 bad tag value met. + // + int CRYPT_E_ASN1_BADTAG = 0x8009310B; + // + // MessageId: CRYPT_E_ASN1_CHOICE + // + // MessageText: + // + // ASN1 bad choice value. + // + int CRYPT_E_ASN1_CHOICE = 0x8009310C; + // + // MessageId: CRYPT_E_ASN1_RULE + // + // MessageText: + // + // ASN1 bad encoding rule. + // + int CRYPT_E_ASN1_RULE = 0x8009310D; + // + // MessageId: CRYPT_E_ASN1_UTF8 + // + // MessageText: + // + // ASN1 bad unicode (UTF8). + // + int CRYPT_E_ASN1_UTF8 = 0x8009310E; + // + // MessageId: CRYPT_E_ASN1_PDU_TYPE + // + // MessageText: + // + // ASN1 bad PDU type. + // + int CRYPT_E_ASN1_PDU_TYPE = 0x80093133; + // + // MessageId: CRYPT_E_ASN1_NYI + // + // MessageText: + // + // ASN1 not yet implemented. + // + int CRYPT_E_ASN1_NYI = 0x80093134; + // + // MessageId: CRYPT_E_ASN1_EXTENDED + // + // MessageText: + // + // ASN1 skipped unknown extension(s). + // + int CRYPT_E_ASN1_EXTENDED = 0x80093201; + // + // MessageId: CRYPT_E_ASN1_NOEOD + // + // MessageText: + // + // ASN1 end of data expected + // + int CRYPT_E_ASN1_NOEOD = 0x80093202; + // + // MessageId: CERTSRV_E_BAD_REQUESTSUBJECT + // + // MessageText: + // + // The request subject name is invalid or too long. + // + int CERTSRV_E_BAD_REQUESTSUBJECT = 0x80094001; + // + // MessageId: CERTSRV_E_NO_REQUEST + // + // MessageText: + // + // The request does not exist. + // + int CERTSRV_E_NO_REQUEST = 0x80094002; + // + // MessageId: CERTSRV_E_BAD_REQUESTSTATUS + // + // MessageText: + // + // The request's current status does not allow this operation. + // + int CERTSRV_E_BAD_REQUESTSTATUS = 0x80094003; + // + // MessageId: CERTSRV_E_PROPERTY_EMPTY + // + // MessageText: + // + // The requested property value is empty. + // + int CERTSRV_E_PROPERTY_EMPTY = 0x80094004; + // + // MessageId: CERTSRV_E_INVALID_CA_CERTIFICATE + // + // MessageText: + // + // The certification authority's certificate contains invalid data. + // + int CERTSRV_E_INVALID_CA_CERTIFICATE = 0x80094005; + // + // MessageId: CERTSRV_E_SERVER_SUSPENDED + // + // MessageText: + // + // Certificate service has been suspended for a database restore operation. + // + int CERTSRV_E_SERVER_SUSPENDED = 0x80094006; + // + // MessageId: CERTSRV_E_ENCODING_LENGTH + // + // MessageText: + // + // The certificate contains an encoded length that is potentially + // incompatible with older enrollment software. + // + int CERTSRV_E_ENCODING_LENGTH = 0x80094007; + // + // MessageId: CERTSRV_E_ROLECONF;ICT + // + // MessageText: + // + // The operation is denied. The user has multiple roles assigned and the + // certification authority is configured to enforce role separation. + // + int CERTSRV_E_ROLECONFLICT = 0x80094008; + // + // MessageId: CERTSRV_E_RESTRICTEDOFFICER + // + // MessageText: + // + // The operation is denied. It can only be performed by a certificate + // manager that is allowed to manage certificates for the current requester. + // + int CERTSRV_E_RESTRICTEDOFFICER = 0x80094009; + // + // MessageId: CERTSRV_E_KEY_ARCHIVAL_NOT_CONFIGURED + // + // MessageText: + // + // Cannot archive private key. The certification authority is not configured + // for key archival. + // + int CERTSRV_E_KEY_ARCHIVAL_NOT_CONFIGURED = 0x8009400A; + // + // MessageId: CERTSRV_E_NO_VALID_KRA + // + // MessageText: + // + // Cannot archive private key. The certification authority could not verify + // one or more key recovery certificates. + // + int CERTSRV_E_NO_VALID_KRA = 0x8009400B; + // + // MessageId: CERTSRV_E_BAD_REQUEST_KEY_ARCHIVAL + // + // MessageText: + // + // The request is incorrectly formatted. The encrypted private key must be + // in an unauthenticated attribute in an outermost signature. + // + int CERTSRV_E_BAD_REQUEST_KEY_ARCHIVAL = 0x8009400C; + // + // MessageId: CERTSRV_E_NO_CAADMIN_DEFINED + // + // MessageText: + // + // At least one security principal must have the permission to manage this + // CA. + // + int CERTSRV_E_NO_CAADMIN_DEFINED = 0x8009400D; + // + // MessageId: CERTSRV_E_BAD_RENEWAL_CERT_ATTRIBUTE + // + // MessageText: + // + // The request contains an invalid renewal certificate attribute. + // + int CERTSRV_E_BAD_RENEWAL_CERT_ATTRIBUTE = 0x8009400E; + // + // MessageId: CERTSRV_E_NO_DB_SESSIONS + // + // MessageText: + // + // An attempt was made to open a Certification Authority database session, + // but there are already too many active sessions. The server may need to be + // configured to allow additional sessions. + // + int CERTSRV_E_NO_DB_SESSIONS = 0x8009400F; + // + // MessageId: CERTSRV_E_ALIGNMENT_FAULT + // + // MessageText: + // + // A memory reference caused a data alignment fault. + // + int CERTSRV_E_ALIGNMENT_FAULT = 0x80094010; + // + // MessageId: CERTSRV_E_ENROLL_DENIED + // + // MessageText: + // + // The permissions on this certification authority do not allow the current + // user to enroll for certificates. + // + int CERTSRV_E_ENROLL_DENIED = 0x80094011; + // + // MessageId: CERTSRV_E_TEMPLATE_DENIED + // + // MessageText: + // + // The permissions on the certificate template do not allow the current user + // to enroll for this type of certificate. + // + int CERTSRV_E_TEMPLATE_DENIED = 0x80094012; + // + // MessageId: CERTSRV_E_DOWNLEVEL_DC_SSL_OR_UPGRADE + // + // MessageText: + // + // The contacted domain controller cannot support signed LDAP traffic. + // Update the domain controller or configure Certificate Services to use SSL + // for Active Directory access. + // + int CERTSRV_E_DOWNLEVEL_DC_SSL_OR_UPGRADE = 0x80094013; + // + // MessageId: CERTSRV_E_UNSUPPORTED_CERT_TYPE + // + // MessageText: + // + // The requested certificate template is not supported by this CA. + // + int CERTSRV_E_UNSUPPORTED_CERT_TYPE = 0x80094800; + // + // MessageId: CERTSRV_E_NO_CERT_TYPE + // + // MessageText: + // + // The request contains no certificate template information. + // + int CERTSRV_E_NO_CERT_TYPE = 0x80094801; + // + // MessageId: CERTSRV_E_TEMPLATE_CONF;ICT + // + // MessageText: + // + // The request contains conF;icting template information. + // + int CERTSRV_E_TEMPLATE_CONFLICT = 0x80094802; + // + // MessageId: CERTSRV_E_SUBJECT_ALT_NAME_REQUIRED + // + // MessageText: + // + // The request is missing a required Subject Alternate name extension. + // + int CERTSRV_E_SUBJECT_ALT_NAME_REQUIRED = 0x80094803; + // + // MessageId: CERTSRV_E_ARCHIVED_KEY_REQUIRED + // + // MessageText: + // + // The request is missing a required private key for archival by the server. + // + int CERTSRV_E_ARCHIVED_KEY_REQUIRED = 0x80094804; + // + // MessageId: CERTSRV_E_SMIME_REQUIRED + // + // MessageText: + // + // The request is missing a required SMIME capabilities extension. + // + int CERTSRV_E_SMIME_REQUIRED = 0x80094805; + // + // MessageId: CERTSRV_E_BAD_RENEWAL_SUBJECT + // + // MessageText: + // + // The request was made on behalf of a subject other than the caller. The + // certificate template must be configured to require at least one signature + // to authorize the request. + // + int CERTSRV_E_BAD_RENEWAL_SUBJECT = 0x80094806; + // + // MessageId: CERTSRV_E_BAD_TEMPLATE_VERSION + // + // MessageText: + // + // The request template version is newer than the supported template + // version. + // + int CERTSRV_E_BAD_TEMPLATE_VERSION = 0x80094807; + // + // MessageId: CERTSRV_E_TEMPLATE_POLICY_REQUIRED + // + // MessageText: + // + // The template is missing a required signature policy attribute. + // + int CERTSRV_E_TEMPLATE_POLICY_REQUIRED = 0x80094808; + // + // MessageId: CERTSRV_E_SIGNATURE_POLICY_REQUIRED + // + // MessageText: + // + // The request is missing required signature policy information. + // + int CERTSRV_E_SIGNATURE_POLICY_REQUIRED = 0x80094809; + // + // MessageId: CERTSRV_E_SIGNATURE_COUNT + // + // MessageText: + // + // The request is missing one or more required signatures. + // + int CERTSRV_E_SIGNATURE_COUNT = 0x8009480A; + // + // MessageId: CERTSRV_E_SIGNATURE_REJECTED + // + // MessageText: + // + // One or more signatures did not include the required application or + // issuance policies. The request is missing one or more required valid + // signatures. + // + int CERTSRV_E_SIGNATURE_REJECTED = 0x8009480B; + // + // MessageId: CERTSRV_E_ISSUANCE_POLICY_REQUIRED + // + // MessageText: + // + // The request is missing one or more required signature issuance policies. + // + int CERTSRV_E_ISSUANCE_POLICY_REQUIRED = 0x8009480C; + // + // MessageId: CERTSRV_E_SUBJECT_UPN_REQUIRED + // + // MessageText: + // + // The UPN is unavailable and cannot be added to the Subject Alternate name. + // + int CERTSRV_E_SUBJECT_UPN_REQUIRED = 0x8009480D; + // + // MessageId: CERTSRV_E_SUBJECT_DIRECTORY_GUID_REQUIRED + // + // MessageText: + // + // The Active Directory GUID is unavailable and cannot be added to the + // Subject Alternate name. + // + int CERTSRV_E_SUBJECT_DIRECTORY_GUID_REQUIRED = 0x8009480E; + // + // MessageId: CERTSRV_E_SUBJECT_DNS_REQUIRED + // + // MessageText: + // + // The DNS name is unavailable and cannot be added to the Subject Alternate + // name. + // + int CERTSRV_E_SUBJECT_DNS_REQUIRED = 0x8009480F; + // + // MessageId: CERTSRV_E_ARCHIVED_KEY_UNEXPECTED + // + // MessageText: + // + // The request includes a private key for archival by the server, but key + // archival is not enabled for the specified certificate template. + // + int CERTSRV_E_ARCHIVED_KEY_UNEXPECTED = 0x80094810; + // + // MessageId: CERTSRV_E_KEY_LENGTH + // + // MessageText: + // + // The public key does not meet the minimum size required by the specified + // certificate template. + // + int CERTSRV_E_KEY_LENGTH = 0x80094811; + // + // MessageId: CERTSRV_E_SUBJECT_EMAIL_REQUIRED + // + // MessageText: + // + // The EMail name is unavailable and cannot be added to the Subject or + // Subject Alternate name. + // + int CERTSRV_E_SUBJECT_EMAIL_REQUIRED = 0x80094812; + // + // MessageId: CERTSRV_E_UNKNOWN_CERT_TYPE + // + // MessageText: + // + // One or more certificate templates to be enabled on this certification + // authority could not be found. + // + int CERTSRV_E_UNKNOWN_CERT_TYPE = 0x80094813; + // + // MessageId: CERTSRV_E_CERT_TYPE_OVERLAP + // + // MessageText: + // + // The certificate template renewal period is longer than the certificate + // validity period. The template should be reconfigured or the CA + // certificate renewed. + // + int CERTSRV_E_CERT_TYPE_OVERLAP = 0x80094814; + // + // MessageId: CERTSRV_E_TOO_MANY_SIGNATURES + // + // MessageText: + // + // The certificate template requires too many RA signatures. Only one RA + // signature is allowed. + // + int CERTSRV_E_TOO_MANY_SIGNATURES = 0x80094815; + // + // The range 0x5000-0x51ff is reserved for XENROLL errors. + // + // + // MessageId: XENROLL_E_KEY_NOT_EXPORTABLE + // + // MessageText: + // + // The key is not exportable. + // + int XENROLL_E_KEY_NOT_EXPORTABLE = 0x80095000; + // + // MessageId: XENROLL_E_CANNOT_ADD_ROOT_CERT + // + // MessageText: + // + // You cannot add the root CA certificate into your local store. + // + int XENROLL_E_CANNOT_ADD_ROOT_CERT = 0x80095001; + // + // MessageId: XENROLL_E_RESPONSE_KA_HASH_NOT_FOUND + // + // MessageText: + // + // The key archival hash attribute was not found in the response. + // + int XENROLL_E_RESPONSE_KA_HASH_NOT_FOUND = 0x80095002; + // + // MessageId: XENROLL_E_RESPONSE_UNEXPECTED_KA_HASH + // + // MessageText: + // + // An unexpected key archival hash attribute was found in the response. + // + int XENROLL_E_RESPONSE_UNEXPECTED_KA_HASH = 0x80095003; + // + // MessageId: XENROLL_E_RESPONSE_KA_HASH_MISMATCH + // + // MessageText: + // + // There is a key archival hash mismatch between the request and the + // response. + // + int XENROLL_E_RESPONSE_KA_HASH_MISMATCH = 0x80095004; + // + // MessageId: XENROLL_E_KEYSPEC_SMIME_MISMATCH + // + // MessageText: + // + // Signing certificate cannot include SMIME extension. + // + int XENROLL_E_KEYSPEC_SMIME_MISMATCH = 0x80095005; + // + // MessageId: TRUST_E_SYSTEM_ERROR + // + // MessageText: + // + // A system-level error occurred while verifying trust. + // + int TRUST_E_SYSTEM_ERROR = 0x80096001; + // + // MessageId: TRUST_E_NO_SIGNER_CERT + // + // MessageText: + // + // The certificate for the signer of the message is invalid or not found. + // + int TRUST_E_NO_SIGNER_CERT = 0x80096002; + // + // MessageId: TRUST_E_COUNTER_SIGNER + // + // MessageText: + // + // One of the counter signatures was invalid. + // + int TRUST_E_COUNTER_SIGNER = 0x80096003; + // + // MessageId: TRUST_E_CERT_SIGNATURE + // + // MessageText: + // + // The signature of the certificate cannot be verified. + // + int TRUST_E_CERT_SIGNATURE = 0x80096004; + // + // MessageId: TRUST_E_TIME_STAMP + // + // MessageText: + // + // The timestamp signature and/or certificate could not be verified or is + // malformed. + // + int TRUST_E_TIME_STAMP = 0x80096005; + // + // MessageId: TRUST_E_BAD_DIGEST + // + // MessageText: + // + // The digital signature of the object did not verify. + // + int TRUST_E_BAD_DIGEST = 0x80096010; + // + // MessageId: TRUST_E_BASIC_CONSTRAINTS + // + // MessageText: + // + // A certificate's basic constraint extension has not been observed. + // + int TRUST_E_BASIC_CONSTRAINTS = 0x80096019; + // + // MessageId: TRUST_E_FINANCIAL_CRITERIA + // + // MessageText: + // + // The certificate does not meet or contain the Authenticode(tm) financial + // extensions. + // + int TRUST_E_FINANCIAL_CRITERIA = 0x8009601E; + // + // Error codes for mssipotf.dll + // Most of the error codes can only occur when an error occurs + // during font file signing + // + // + // + // MessageId: MSSIPOTF_E_OUTOFMEMRANGE + // + // MessageText: + // + // Tried to reference a part of the file outside the proper range. + // + int MSSIPOTF_E_OUTOFMEMRANGE = 0x80097001; + // + // MessageId: MSSIPOTF_E_CANTGETOBJECT + // + // MessageText: + // + // Could not retrieve an object from the file. + // + int MSSIPOTF_E_CANTGETOBJECT = 0x80097002; + // + // MessageId: MSSIPOTF_E_NOHEADTABLE + // + // MessageText: + // + // Could not find the head table in the file. + // + int MSSIPOTF_E_NOHEADTABLE = 0x80097003; + // + // MessageId: MSSIPOTF_E_BAD_MAGICNUMBER + // + // MessageText: + // + // The magic number in the head table is incorrect. + // + int MSSIPOTF_E_BAD_MAGICNUMBER = 0x80097004; + // + // MessageId: MSSIPOTF_E_BAD_OFFSET_TABLE + // + // MessageText: + // + // The offset table has incorrect values. + // + int MSSIPOTF_E_BAD_OFFSET_TABLE = 0x80097005; + // + // MessageId: MSSIPOTF_E_TABLE_TAGORDER + // + // MessageText: + // + // Duplicate table tags or tags out of alphabetical order. + // + int MSSIPOTF_E_TABLE_TAGORDER = 0x80097006; + // + // MessageId: MSSIPOTF_E_TABLE_LONGWORD + // + // MessageText: + // + // A table does not start on a long word boundary. + // + int MSSIPOTF_E_TABLE_LONGWORD = 0x80097007; + // + // MessageId: MSSIPOTF_E_BAD_FIRST_TABLE_PLACEMENT + // + // MessageText: + // + // First table does not appear after header information. + // + int MSSIPOTF_E_BAD_FIRST_TABLE_PLACEMENT = 0x80097008; + // + // MessageId: MSSIPOTF_E_TABLES_OVERLAP + // + // MessageText: + // + // Two or more tables overlap. + // + int MSSIPOTF_E_TABLES_OVERLAP = 0x80097009; + // + // MessageId: MSSIPOTF_E_TABLE_PADBYTES + // + // MessageText: + // + // Too many pad bytes between tables or pad bytes are not 0. + // + int MSSIPOTF_E_TABLE_PADBYTES = 0x8009700A; + // + // MessageId: MSSIPOTF_E_FILETOOSMALL + // + // MessageText: + // + // File is too small to contain the last table. + // + int MSSIPOTF_E_FILETOOSMALL = 0x8009700B; + // + // MessageId: MSSIPOTF_E_TABLE_CHECKSUM + // + // MessageText: + // + // A table checksum is incorrect. + // + int MSSIPOTF_E_TABLE_CHECKSUM = 0x8009700C; + // + // MessageId: MSSIPOTF_E_FILE_CHECKSUM + // + // MessageText: + // + // The file checksum is incorrect. + // + int MSSIPOTF_E_FILE_CHECKSUM = 0x8009700D; + // + // MessageId: MSSIPOTF_E_FAILED_POLICY + // + // MessageText: + // + // The signature does not have the correct attributes for the policy. + // + int MSSIPOTF_E_FAILED_POLICY = 0x80097010; + // + // MessageId: MSSIPOTF_E_FAILED_HINTS_CHECK + // + // MessageText: + // + // The file did not pass the hints check. + // + int MSSIPOTF_E_FAILED_HINTS_CHECK = 0x80097011; + // + // MessageId: MSSIPOTF_E_NOT_OPENTYPE + // + // MessageText: + // + // The file is not an OpenType file. + // + int MSSIPOTF_E_NOT_OPENTYPE = 0x80097012; + // + // MessageId: MSSIPOTF_E_FILE + // + // MessageText: + // + // Failed on a file operation (open, map, read, write). + // + int MSSIPOTF_E_FILE = 0x80097013; + // + // MessageId: MSSIPOTF_E_CRYPT + // + // MessageText: + // + // A call to a CryptoAPI function failed. + // + int MSSIPOTF_E_CRYPT = 0x80097014; + // + // MessageId: MSSIPOTF_E_BADVERSION + // + // MessageText: + // + // There is a bad version number in the file. + // + int MSSIPOTF_E_BADVERSION = 0x80097015; + // + // MessageId: MSSIPOTF_E_DSIG_STRUCTURE + // + // MessageText: + // + // The structure of the DSIG table is incorrect. + // + int MSSIPOTF_E_DSIG_STRUCTURE = 0x80097016; + // + // MessageId: MSSIPOTF_E_PCONST_CHECK + // + // MessageText: + // + // A check failed in a partially constant table. + // + int MSSIPOTF_E_PCONST_CHECK = 0x80097017; + // + // MessageId: MSSIPOTF_E_STRUCTURE + // + // MessageText: + // + // Some kind of structural error. + // + int MSSIPOTF_E_STRUCTURE = 0x80097018; + // + // MessageId: ERROR_CRED_REQUIRES_CONFIRMATION + // + // MessageText: + // + // The requested credential requires confirmation. + // + int ERROR_CRED_REQUIRES_CONFIRMATION = 0x80097019; + int NTE_OP_OK = 0; + // + // Note that additional FACILITY_SSPI errors are in issperr.h + // + // ****************** + // FACILITY_CERT + // ****************** + // + // MessageId: TRUST_E_PROVIDER_UNKNOWN + // + // MessageText: + // + // Unknown trust provider. + // + int TRUST_E_PROVIDER_UNKNOWN = 0x800B0001; + // + // MessageId: TRUST_E_ACTION_UNKNOWN + // + // MessageText: + // + // The trust verification action specified is not supported by the specified + // trust provider. + // + int TRUST_E_ACTION_UNKNOWN = 0x800B0002; + // + // MessageId: TRUST_E_SUBJECT_FORM_UNKNOWN + // + // MessageText: + // + // The form specified for the subject is not one supported or known by the + // specified trust provider. + // + int TRUST_E_SUBJECT_FORM_UNKNOWN = 0x800B0003; + // + // MessageId: TRUST_E_SUBJECT_NOT_TRUSTED + // + // MessageText: + // + // The subject is not trusted for the specified action. + // + int TRUST_E_SUBJECT_NOT_TRUSTED = 0x800B0004; + // + // MessageId: DIGSIG_E_ENCODE + // + // MessageText: + // + // Error due to problem in ASN.1 encoding process. + // + int DIGSIG_E_ENCODE = 0x800B0005; + // + // MessageId: DIGSIG_E_DECODE + // + // MessageText: + // + // Error due to problem in ASN.1 decoding process. + // + int DIGSIG_E_DECODE = 0x800B0006; + // + // MessageId: DIGSIG_E_EXTENSIBILITY + // + // MessageText: + // + // Reading / writing Extensions where Attributes are appropriate, and visa + // versa. + // + int DIGSIG_E_EXTENSIBILITY = 0x800B0007; + // + // MessageId: DIGSIG_E_CRYPTO + // + // MessageText: + // + // Unspecified cryptographic failure. + // + int DIGSIG_E_CRYPTO = 0x800B0008; + // + // MessageId: PERSIST_E_SIZEDEFINITE + // + // MessageText: + // + // The size of the data could not be determined. + // + int PERSIST_E_SIZEDEFINITE = 0x800B0009; + // + // MessageId: PERSIST_E_SIZEINDEFINITE + // + // MessageText: + // + // The size of the indefinite-sized data could not be determined. + // + int PERSIST_E_SIZEINDEFINITE = 0x800B000A; + // + // MessageId: PERSIST_E_NOTSELFSIZING + // + // MessageText: + // + // This object does not read and write self-sizing data. + // + int PERSIST_E_NOTSELFSIZING = 0x800B000B; + // + // MessageId: TRUST_E_NOSIGNATURE + // + // MessageText: + // + // No signature was present in the subject. + // + int TRUST_E_NOSIGNATURE = 0x800B0100; + // + // MessageId: CERT_E_EXPIRED + // + // MessageText: + // + // A required certificate is not within its validity period when verifying + // against the current system clock or the timestamp in the signed file. + // + int CERT_E_EXPIRED = 0x800B0101; + // + // MessageId: CERT_E_VALIDITYPERIODNESTING + // + // MessageText: + // + // The validity periods of the certification chain do not nest correctly. + // + int CERT_E_VALIDITYPERIODNESTING = 0x800B0102; + // + // MessageId: CERT_E_ROLE + // + // MessageText: + // + // A certificate that can only be used as an end-entity is being used as a + // CA or visa versa. + // + int CERT_E_ROLE = 0x800B0103; + // + // MessageId: CERT_E_PATHLENCONST + // + // MessageText: + // + // A path length constraint in the certification chain has been violated. + // + int CERT_E_PATHLENCONST = 0x800B0104; + // + // MessageId: CERT_E_CRITICAL + // + // MessageText: + // + // A certificate contains an unknown extension that is marked 'critical'. + // + int CERT_E_CRITICAL = 0x800B0105; + // + // MessageId: CERT_E_PURPOSE + // + // MessageText: + // + // A certificate being used for a purpose other than the ones specified by + // its CA. + // + int CERT_E_PURPOSE = 0x800B0106; + // + // MessageId: CERT_E_ISSUERCHAINING + // + // MessageText: + // + // A parent of a given certificate in fact did not issue that child + // certificate. + // + int CERT_E_ISSUERCHAINING = 0x800B0107; + // + // MessageId: CERT_E_MALFORMED + // + // MessageText: + // + // A certificate is missing or has an empty value for an important field, + // such as a subject or issuer name. + // + int CERT_E_MALFORMED = 0x800B0108; + // + // MessageId: CERT_E_UNTRUSTEDROOT + // + // MessageText: + // + // A certificate chain processed, but terminated in a root certificate which + // is not trusted by the trust provider. + // + int CERT_E_UNTRUSTEDROOT = 0x800B0109; + // + // MessageId: CERT_E_CHAINING + // + // MessageText: + // + // A certificate chain could not be built to a trusted root authority. + // + int CERT_E_CHAINING = 0x800B010A; + // + // MessageId: TRUST_E_FAIL + // + // MessageText: + // + // Generic trust failure. + // + int TRUST_E_FAIL = 0x800B010B; + // + // MessageId: CERT_E_REVOKED + // + // MessageText: + // + // A certificate was explicitly revoked by its issuer. + // + int CERT_E_REVOKED = 0x800B010C; + // + // MessageId: CERT_E_UNTRUSTEDTESTROOT + // + // MessageText: + // + // The certification path terminates with the test root which is not trusted + // with the current policy settings. + // + int CERT_E_UNTRUSTEDTESTROOT = 0x800B010D; + // + // MessageId: CERT_E_REVOCATION_FAILURE + // + // MessageText: + // + // The revocation process could not continue - the certificate(s) could not + // be checked. + // + int CERT_E_REVOCATION_FAILURE = 0x800B010E; + // + // MessageId: CERT_E_CN_NO_MATCH + // + // MessageText: + // + // The certificate's CN name does not match the passed value. + // + int CERT_E_CN_NO_MATCH = 0x800B010F; + // + // MessageId: CERT_E_WRONG_USAGE + // + // MessageText: + // + // The certificate is not valid for the requested usage. + // + int CERT_E_WRONG_USAGE = 0x800B0110; + // + // MessageId: TRUST_E_EXPLICIT_DISTRUST + // + // MessageText: + // + // The certificate was explicitly marked as untrusted by the user. + // + int TRUST_E_EXPLICIT_DISTRUST = 0x800B0111; + // + // MessageId: CERT_E_UNTRUSTEDCA + // + // MessageText: + // + // A certification chain processed correctly, but one of the CA certificates + // is not trusted by the policy provider. + // + int CERT_E_UNTRUSTEDCA = 0x800B0112; + // + // MessageId: CERT_E_INVALID_POLICY + // + // MessageText: + // + // The certificate has invalid policy. + // + int CERT_E_INVALID_POLICY = 0x800B0113; + // + // MessageId: CERT_E_INVALID_NAME + // + // MessageText: + // + // The certificate has an invalid name. The name is not included in the + // permitted list or is explicitly excluded. + // + int CERT_E_INVALID_NAME = 0x800B0114; + // ***************** + // FACILITY_SETUPAPI + // ***************** + // + // Since these error codes aren't in the standard Win32 range (i.e., 0-64K), + // define a + // macro to map either Win32 or SetupAPI error codes into an HRESULT. + // + // MessageId: SPAPI_E_EXPECTED_SECTION_NAME + // + // MessageText: + // + // A non-empty line was encountered in the INF before the start of a + // section. + // + int SPAPI_E_EXPECTED_SECTION_NAME = 0x800F0000; + // + // MessageId: SPAPI_E_BAD_SECTION_NAME_LINE + // + // MessageText: + // + // A section name marker in the INF is not complete, or does not exist on a + // line by itself. + // + int SPAPI_E_BAD_SECTION_NAME_LINE = 0x800F0001; + // + // MessageId: SPAPI_E_SECTION_NAME_TOO_LONG + // + // MessageText: + // + // An INF section was encountered whose name exceeds the maximum section + // name length. + // + int SPAPI_E_SECTION_NAME_TOO_LONG = 0x800F0002; + // + // MessageId: SPAPI_E_GENERAL_SYNTAX + // + // MessageText: + // + // The syntax of the INF is invalid. + // + int SPAPI_E_GENERAL_SYNTAX = 0x800F0003; + // + // MessageId: SPAPI_E_WRONG_INF_STYLE + // + // MessageText: + // + // The style of the INF is different than what was requested. + // + int SPAPI_E_WRONG_INF_STYLE = 0x800F0100; + // + // MessageId: SPAPI_E_SECTION_NOT_FOUND + // + // MessageText: + // + // The required section was not found in the INF. + // + int SPAPI_E_SECTION_NOT_FOUND = 0x800F0101; + // + // MessageId: SPAPI_E_LINE_NOT_FOUND + // + // MessageText: + // + // The required line was not found in the INF. + // + int SPAPI_E_LINE_NOT_FOUND = 0x800F0102; + // + // MessageId: SPAPI_E_NO_BACKUP + // + // MessageText: + // + // The files affected by the installation of this file queue have not been + // backed up for uninstall. + // + int SPAPI_E_NO_BACKUP = 0x800F0103; + // + // MessageId: SPAPI_E_NO_ASSOCIATED_CLASS + // + // MessageText: + // + // The INF or the device information set or element does not have an + // associated install class. + // + int SPAPI_E_NO_ASSOCIATED_CLASS = 0x800F0200; + // + // MessageId: SPAPI_E_CLASS_MISMATCH + // + // MessageText: + // + // The INF or the device information set or element does not match the + // specified install class. + // + int SPAPI_E_CLASS_MISMATCH = 0x800F0201; + // + // MessageId: SPAPI_E_DUPLICATE_FOUND + // + // MessageText: + // + // An existing device was found that is a duplicate of the device being + // manually installed. + // + int SPAPI_E_DUPLICATE_FOUND = 0x800F0202; + // + // MessageId: SPAPI_E_NO_DRIVER_SELECTED + // + // MessageText: + // + // There is no driver selected for the device information set or element. + // + int SPAPI_E_NO_DRIVER_SELECTED = 0x800F0203; + // + // MessageId: SPAPI_E_KEY_DOES_NOT_EXIST + // + // MessageText: + // + // The requested device registry key does not exist. + // + int SPAPI_E_KEY_DOES_NOT_EXIST = 0x800F0204; + // + // MessageId: SPAPI_E_INVALID_DEVINST_NAME + // + // MessageText: + // + // The device instance name is invalid. + // + int SPAPI_E_INVALID_DEVINST_NAME = 0x800F0205; + // + // MessageId: SPAPI_E_INVALID_CLASS + // + // MessageText: + // + // The install class is not present or is invalid. + // + int SPAPI_E_INVALID_CLASS = 0x800F0206; + // + // MessageId: SPAPI_E_DEVINST_ALREADY_EXISTS + // + // MessageText: + // + // The device instance cannot be created because it already exists. + // + int SPAPI_E_DEVINST_ALREADY_EXISTS = 0x800F0207; + // + // MessageId: SPAPI_E_DEVINFO_NOT_REGISTERED + // + // MessageText: + // + // The operation cannot be performed on a device information element that + // has not been registered. + // + int SPAPI_E_DEVINFO_NOT_REGISTERED = 0x800F0208; + // + // MessageId: SPAPI_E_INVALID_REG_PROPERTY + // + // MessageText: + // + // The device property code is invalid. + // + int SPAPI_E_INVALID_REG_PROPERTY = 0x800F0209; + // + // MessageId: SPAPI_E_NO_INF + // + // MessageText: + // + // The INF from which a driver list is to be built does not exist. + // + int SPAPI_E_NO_INF = 0x800F020A; + // + // MessageId: SPAPI_E_NO_SUCH_DEVINST + // + // MessageText: + // + // The device instance does not exist in the hardware tree. + // + int SPAPI_E_NO_SUCH_DEVINST = 0x800F020B; + // + // MessageId: SPAPI_E_CANT_LOAD_CLASS_ICON + // + // MessageText: + // + // The icon representing this install class cannot be loaded. + // + int SPAPI_E_CANT_LOAD_CLASS_ICON = 0x800F020C; + // + // MessageId: SPAPI_E_INVALID_CLASS_INSTALLER + // + // MessageText: + // + // The class installer registry entry is invalid. + // + int SPAPI_E_INVALID_CLASS_INSTALLER = 0x800F020D; + // + // MessageId: SPAPI_E_DI_DO_DEFAULT + // + // MessageText: + // + // The class installer has indicated that the default action should be + // performed for this installation request. + // + int SPAPI_E_DI_DO_DEFAULT = 0x800F020E; + // + // MessageId: SPAPI_E_DI_NOFILECOPY + // + // MessageText: + // + // The operation does not require any files to be copied. + // + int SPAPI_E_DI_NOFILECOPY = 0x800F020F; + // + // MessageId: SPAPI_E_INVALID_HWPROFILE + // + // MessageText: + // + // The specified hardware profile does not exist. + // + int SPAPI_E_INVALID_HWPROFILE = 0x800F0210; + // + // MessageId: SPAPI_E_NO_DEVICE_SELECTED + // + // MessageText: + // + // There is no device information element currently selected for this device + // information set. + // + int SPAPI_E_NO_DEVICE_SELECTED = 0x800F0211; + // + // MessageId: SPAPI_E_DEVINFO_LIST_LOCKED + // + // MessageText: + // + // The operation cannot be performed because the device information set is + // locked. + // + int SPAPI_E_DEVINFO_LIST_LOCKED = 0x800F0212; + // + // MessageId: SPAPI_E_DEVINFO_DATA_LOCKED + // + // MessageText: + // + // The operation cannot be performed because the device information element + // is locked. + // + int SPAPI_E_DEVINFO_DATA_LOCKED = 0x800F0213; + // + // MessageId: SPAPI_E_DI_BAD_PATH + // + // MessageText: + // + // The specified path does not contain any applicable device INFs. + // + int SPAPI_E_DI_BAD_PATH = 0x800F0214; + // + // MessageId: SPAPI_E_NO_CLASSINSTALL_PARAMS + // + // MessageText: + // + // No class installer parameters have been set for the device information + // set or element. + // + int SPAPI_E_NO_CLASSINSTALL_PARAMS = 0x800F0215; + // + // MessageId: SPAPI_E_FILEQUEUE_LOCKED + // + // MessageText: + // + // The operation cannot be performed because the file queue is locked. + // + int SPAPI_E_FILEQUEUE_LOCKED = 0x800F0216; + // + // MessageId: SPAPI_E_BAD_SERVICE_INSTALLSECT + // + // MessageText: + // + // A service installation section in this INF is invalid. + // + int SPAPI_E_BAD_SERVICE_INSTALLSECT = 0x800F0217; + // + // MessageId: SPAPI_E_NO_CLASS_DRIVER_LIST + // + // MessageText: + // + // There is no class driver list for the device information element. + // + int SPAPI_E_NO_CLASS_DRIVER_LIST = 0x800F0218; + // + // MessageId: SPAPI_E_NO_ASSOCIATED_SERVICE + // + // MessageText: + // + // The installation failed because a function driver was not specified for + // this device instance. + // + int SPAPI_E_NO_ASSOCIATED_SERVICE = 0x800F0219; + // + // MessageId: SPAPI_E_NO_DEFAULT_DEVICE_INTERFACE + // + // MessageText: + // + // There is presently no default device interface designated for this + // interface class. + // + int SPAPI_E_NO_DEFAULT_DEVICE_INTERFACE = 0x800F021A; + // + // MessageId: SPAPI_E_DEVICE_INTERFACE_ACTIVE + // + // MessageText: + // + // The operation cannot be performed because the device interface is + // currently active. + // + int SPAPI_E_DEVICE_INTERFACE_ACTIVE = 0x800F021B; + // + // MessageId: SPAPI_E_DEVICE_INTERFACE_REMOVED + // + // MessageText: + // + // The operation cannot be performed because the device interface has been + // removed from the system. + // + int SPAPI_E_DEVICE_INTERFACE_REMOVED = 0x800F021C; + // + // MessageId: SPAPI_E_BAD_INTERFACE_INSTALLSECT + // + // MessageText: + // + // An interface installation section in this INF is invalid. + // + int SPAPI_E_BAD_INTERFACE_INSTALLSECT = 0x800F021D; + // + // MessageId: SPAPI_E_NO_SUCH_INTERFACE_CLASS + // + // MessageText: + // + // This interface class does not exist in the system. + // + int SPAPI_E_NO_SUCH_INTERFACE_CLASS = 0x800F021E; + // + // MessageId: SPAPI_E_INVALID_REFERENCE_STRING + // + // MessageText: + // + // The reference string supplied for this interface device is invalid. + // + int SPAPI_E_INVALID_REFERENCE_STRING = 0x800F021F; + // + // MessageId: SPAPI_E_INVALID_MACHINENAME + // + // MessageText: + // + // The specified machine name does not conform to UNC naming conventions. + // + int SPAPI_E_INVALID_MACHINENAME = 0x800F0220; + // + // MessageId: SPAPI_E_REMOTE_COMM_FAILURE + // + // MessageText: + // + // A general remote communication error occurred. + // + int SPAPI_E_REMOTE_COMM_FAILURE = 0x800F0221; + // + // MessageId: SPAPI_E_MACHINE_UNAVAILABLE + // + // MessageText: + // + // The machine selected for remote communication is not available at this + // time. + // + int SPAPI_E_MACHINE_UNAVAILABLE = 0x800F0222; + // + // MessageId: SPAPI_E_NO_CONFIGMGR_SERVICES + // + // MessageText: + // + // The Plug and Play service is not available on the remote machine. + // + int SPAPI_E_NO_CONFIGMGR_SERVICES = 0x800F0223; + // + // MessageId: SPAPI_E_INVALID_PROPPAGE_PROVIDER + // + // MessageText: + // + // The property page provider registry entry is invalid. + // + int SPAPI_E_INVALID_PROPPAGE_PROVIDER = 0x800F0224; + // + // MessageId: SPAPI_E_NO_SUCH_DEVICE_INTERFACE + // + // MessageText: + // + // The requested device interface is not present in the system. + // + int SPAPI_E_NO_SUCH_DEVICE_INTERFACE = 0x800F0225; + // + // MessageId: SPAPI_E_DI_POSTPROCESSING_REQUIRED + // + // MessageText: + // + // The device's co-installer has additional work to perform after + // installation is complete. + // + int SPAPI_E_DI_POSTPROCESSING_REQUIRED = 0x800F0226; + // + // MessageId: SPAPI_E_INVALID_COINSTALLER + // + // MessageText: + // + // The device's co-installer is invalid. + // + int SPAPI_E_INVALID_COINSTALLER = 0x800F0227; + // + // MessageId: SPAPI_E_NO_COMPAT_DRIVERS + // + // MessageText: + // + // There are no compatible drivers for this device. + // + int SPAPI_E_NO_COMPAT_DRIVERS = 0x800F0228; + // + // MessageId: SPAPI_E_NO_DEVICE_ICON + // + // MessageText: + // + // There is no icon that represents this device or device type. + // + int SPAPI_E_NO_DEVICE_ICON = 0x800F0229; + // + // MessageId: SPAPI_E_INVALID_INF_LOGCONFIG + // + // MessageText: + // + // A logical configuration specified in this INF is invalid. + // + int SPAPI_E_INVALID_INF_LOGCONFIG = 0x800F022A; + // + // MessageId: SPAPI_E_DI_DONT_INSTALL + // + // MessageText: + // + // The class installer has denied the request to install or upgrade this + // device. + // + int SPAPI_E_DI_DONT_INSTALL = 0x800F022B; + // + // MessageId: SPAPI_E_INVALID_FILTER_DRIVER + // + // MessageText: + // + // One of the filter drivers installed for this device is invalid. + // + int SPAPI_E_INVALID_FILTER_DRIVER = 0x800F022C; + // + // MessageId: SPAPI_E_NON_WINDOWS_NT_DRIVER + // + // MessageText: + // + // The driver selected for this device does not support Windows Vista. + // + int SPAPI_E_NON_WINDOWS_NT_DRIVER = 0x800F022D; + // + // MessageId: SPAPI_E_NON_WINDOWS_DRIVER + // + // MessageText: + // + // The driver selected for this device does not support Windows. + // + int SPAPI_E_NON_WINDOWS_DRIVER = 0x800F022E; + // + // MessageId: SPAPI_E_NO_CATALOG_FOR_OEM_INF + // + // MessageText: + // + // The third-party INF does not contain digital signature information. + // + int SPAPI_E_NO_CATALOG_FOR_OEM_INF = 0x800F022F; + // + // MessageId: SPAPI_E_DEVINSTALL_QUEUE_NONNATIVE + // + // MessageText: + // + // An invalid attempt was made to use a device installation file queue for + // verification of digital signatures relative to other platforms. + // + int SPAPI_E_DEVINSTALL_QUEUE_NONNATIVE = 0x800F0230; + // + // MessageId: SPAPI_E_NOT_DISABLEABLE + // + // MessageText: + // + // The device cannot be disabled. + // + int SPAPI_E_NOT_DISABLEABLE = 0x800F0231; + // + // MessageId: SPAPI_E_CANT_REMOVE_DEVINST + // + // MessageText: + // + // The device could not be dynamically removed. + // + int SPAPI_E_CANT_REMOVE_DEVINST = 0x800F0232; + // + // MessageId: SPAPI_E_INVALID_TARGET + // + // MessageText: + // + // Cannot copy to specified target. + // + int SPAPI_E_INVALID_TARGET = 0x800F0233; + // + // MessageId: SPAPI_E_DRIVER_NONNATIVE + // + // MessageText: + // + // Driver is not intended for this platform. + // + int SPAPI_E_DRIVER_NONNATIVE = 0x800F0234; + // + // MessageId: SPAPI_E_IN_WOW64 + // + // MessageText: + // + // Operation not allowed in WOW64. + // + int SPAPI_E_IN_WOW64 = 0x800F0235; + // + // MessageId: SPAPI_E_SET_SYSTEM_RESTORE_POINT + // + // MessageText: + // + // The operation involving unsigned file copying was rolled back, so that a + // system restore point could be set. + // + int SPAPI_E_SET_SYSTEM_RESTORE_POINT = 0x800F0236; + // + // MessageId: SPAPI_E_INCORRECTLY_COPIED_INF + // + // MessageText: + // + // An INF was copied into the Windows INF directory in an improper manner. + // + int SPAPI_E_INCORRECTLY_COPIED_INF = 0x800F0237; + // + // MessageId: SPAPI_E_SCE_DISABLED + // + // MessageText: + // + // The Security Configuration Editor (SCE) APIs have been disabled on this + // Embedded product. + // + int SPAPI_E_SCE_DISABLED = 0x800F0238; + // + // MessageId: SPAPI_E_UNKNOWN_EXCEPTION + // + // MessageText: + // + // An unknown exception was encountered. + // + int SPAPI_E_UNKNOWN_EXCEPTION = 0x800F0239; + // + // MessageId: SPAPI_E_PNP_REGISTRY_ERROR + // + // MessageText: + // + // A problem was encountered when accessing the Plug and Play registry + // database. + // + int SPAPI_E_PNP_REGISTRY_ERROR = 0x800F023A; + // + // MessageId: SPAPI_E_REMOTE_REQUEST_UNSUPPORTED + // + // MessageText: + // + // The requested operation is not supported for a remote machine. + // + int SPAPI_E_REMOTE_REQUEST_UNSUPPORTED = 0x800F023B; + // + // MessageId: SPAPI_E_NOT_AN_INSTALLED_OEM_INF + // + // MessageText: + // + // The specified file is not an installed OEM INF. + // + int SPAPI_E_NOT_AN_INSTALLED_OEM_INF = 0x800F023C; + // + // MessageId: SPAPI_E_INF_IN_USE_BY_DEVICES + // + // MessageText: + // + // One or more devices are presently installed using the specified INF. + // + int SPAPI_E_INF_IN_USE_BY_DEVICES = 0x800F023D; + // + // MessageId: SPAPI_E_DI_FUNCTION_OBSOLETE + // + // MessageText: + // + // The requested device install operation is obsolete. + // + int SPAPI_E_DI_FUNCTION_OBSOLETE = 0x800F023E; + // + // MessageId: SPAPI_E_NO_AUTHENTICODE_CATALOG + // + // MessageText: + // + // A file could not be verified because it does not have an associated + // catalog signed via Authenticode(tm). + // + int SPAPI_E_NO_AUTHENTICODE_CATALOG = 0x800F023F; + // + // MessageId: SPAPI_E_AUTHENTICODE_DISALLOWED + // + // MessageText: + // + // Authenticode(tm) signature verification is not supported for the + // specified INF. + // + int SPAPI_E_AUTHENTICODE_DISALLOWED = 0x800F0240; + // + // MessageId: SPAPI_E_AUTHENTICODE_TRUSTED_PUBLISHER + // + // MessageText: + // + // The INF was signed with an Authenticode(tm) catalog from a trusted + // publisher. + // + int SPAPI_E_AUTHENTICODE_TRUSTED_PUBLISHER = 0x800F0241; + // + // MessageId: SPAPI_E_AUTHENTICODE_TRUST_NOT_ESTABLISHED + // + // MessageText: + // + // The publisher of an Authenticode(tm) signed catalog has not yet been + // established as trusted. + // + int SPAPI_E_AUTHENTICODE_TRUST_NOT_ESTABLISHED = 0x800F0242; + // + // MessageId: SPAPI_E_AUTHENTICODE_PUBLISHER_NOT_TRUSTED + // + // MessageText: + // + // The publisher of an Authenticode(tm) signed catalog was not established + // as trusted. + // + int SPAPI_E_AUTHENTICODE_PUBLISHER_NOT_TRUSTED = 0x800F0243; + // + // MessageId: SPAPI_E_SIGNATURE_OSATTRIBUTE_MISMATCH + // + // MessageText: + // + // The software was tested for compliance with Windows Logo requirements on + // a different version of Windows, and may not be compatible with this + // version. + // + int SPAPI_E_SIGNATURE_OSATTRIBUTE_MISMATCH = 0x800F0244; + // + // MessageId: SPAPI_E_ONLY_VALIDATE_VIA_AUTHENTICODE + // + // MessageText: + // + // The file may only be validated by a catalog signed via Authenticode(tm). + // + int SPAPI_E_ONLY_VALIDATE_VIA_AUTHENTICODE = 0x800F0245; + // + // MessageId: SPAPI_E_DEVICE_INSTALLER_NOT_READY + // + // MessageText: + // + // One of the installers for this device cannot perform the installation at + // this time. + // + int SPAPI_E_DEVICE_INSTALLER_NOT_READY = 0x800F0246; + // + // MessageId: SPAPI_E_DRIVER_STORE_ADD_FAILED + // + // MessageText: + // + // A problem was encountered while attempting to add the driver to the + // store. + // + int SPAPI_E_DRIVER_STORE_ADD_FAILED = 0x800F0247; + // + // MessageId: SPAPI_E_DEVICE_INSTALL_BLOCKED + // + // MessageText: + // + // The installation of this device is forbidden by system policy. Contact + // your system administrator. + // + int SPAPI_E_DEVICE_INSTALL_BLOCKED = 0x800F0248; + // + // MessageId: SPAPI_E_DRIVER_INSTALL_BLOCKED + // + // MessageText: + // + // The installation of this driver is forbidden by system policy. Contact + // your system administrator. + // + int SPAPI_E_DRIVER_INSTALL_BLOCKED = 0x800F0249; + // + // MessageId: SPAPI_E_WRONG_INF_TYPE + // + // MessageText: + // + // The specified INF is the wrong type for this operation. + // + int SPAPI_E_WRONG_INF_TYPE = 0x800F024A; + // + // MessageId: SPAPI_E_FILE_HASH_NOT_IN_CATALOG + // + // MessageText: + // + // The hash for the file is not present in the specified catalog file. The + // file is likely corrupt or the victim of tampering. + // + int SPAPI_E_FILE_HASH_NOT_IN_CATALOG = 0x800F024B; + // + // MessageId: SPAPI_E_DRIVER_STORE_DELETE_FAILED + // + // MessageText: + // + // A problem was encountered while attempting to delete the driver from the + // store. + // + int SPAPI_E_DRIVER_STORE_DELETE_FAILED = 0x800F024C; + // + // MessageId: SPAPI_E_UNRECOVERABLE_STACK_OVERF;OW + // + // MessageText: + // + // An unrecoverable stack overF;ow was encountered. + // + int SPAPI_E_UNRECOVERABLE_STACK_OVERFLOW = 0x800F0300; + // + // MessageId: SPAPI_E_ERROR_NOT_INSTALLED + // + // MessageText: + // + // No installed components were detected. + // + int SPAPI_E_ERROR_NOT_INSTALLED = 0x800F1000; + // ***************** + // FACILITY_SCARD + // ***************** + // + // == + // Facility SCARD Error Messages + // == + // + int SCARD_S_SUCCESS = NO_ERROR; + // + // MessageId: SCARD_F_INTERNAL_ERROR + // + // MessageText: + // + // An internal consistency check failed. + // + int SCARD_F_INTERNAL_ERROR = 0x80100001; + // + // MessageId: SCARD_E_CANCELLED + // + // MessageText: + // + // The action was cancelled by an SCardCancel request. + // + int SCARD_E_CANCELLED = 0x80100002; + // + // MessageId: SCARD_E_INVALID_HANDLE + // + // MessageText: + // + // The supplied handle was invalid. + // + int SCARD_E_INVALID_HANDLE = 0x80100003; + // + // MessageId: SCARD_E_INVALID_PARAMETER + // + // MessageText: + // + // One or more of the supplied parameters could not be properly interpreted. + // + int SCARD_E_INVALID_PARAMETER = 0x80100004; + // + // MessageId: SCARD_E_INVALID_TARGET + // + // MessageText: + // + // Registry startup information is missing or invalid. + // + int SCARD_E_INVALID_TARGET = 0x80100005; + // + // MessageId: SCARD_E_NO_MEMORY + // + // MessageText: + // + // Not enough memory available to complete this command. + // + int SCARD_E_NO_MEMORY = 0x80100006; + // + // MessageId: SCARD_F_WAITED_TOO_LONG + // + // MessageText: + // + // An internal consistency timer has expired. + // + int SCARD_F_WAITED_TOO_LONG = 0x80100007; + // + // MessageId: SCARD_E_INSUFFICIENT_BUFFER + // + // MessageText: + // + // The data buffer to receive returned data is too small for the returned + // data. + // + int SCARD_E_INSUFFICIENT_BUFFER = 0x80100008; + // + // MessageId: SCARD_E_UNKNOWN_READER + // + // MessageText: + // + // The specified reader name is not recognized. + // + int SCARD_E_UNKNOWN_READER = 0x80100009; + // + // MessageId: SCARD_E_TIMEOUT + // + // MessageText: + // + // The user-specified timeout value has expired. + // + int SCARD_E_TIMEOUT = 0x8010000A; + // + // MessageId: SCARD_E_SHARING_VIOLATION + // + // MessageText: + // + // The smart card cannot be accessed because of other connections + // outstanding. + // + int SCARD_E_SHARING_VIOLATION = 0x8010000B; + // + // MessageId: SCARD_E_NO_SMARTCARD + // + // MessageText: + // + // The operation requires a Smart Card, but no Smart Card is currently in + // the device. + // + int SCARD_E_NO_SMARTCARD = 0x8010000C; + // + // MessageId: SCARD_E_UNKNOWN_CARD + // + // MessageText: + // + // The specified smart card name is not recognized. + // + int SCARD_E_UNKNOWN_CARD = 0x8010000D; + // + // MessageId: SCARD_E_CANT_DISPOSE + // + // MessageText: + // + // The system could not dispose of the media in the requested manner. + // + int SCARD_E_CANT_DISPOSE = 0x8010000E; + // + // MessageId: SCARD_E_PROTO_MISMATCH + // + // MessageText: + // + // The requested protocols are incompatible with the protocol currently in + // use with the smart card. + // + int SCARD_E_PROTO_MISMATCH = 0x8010000F; + // + // MessageId: SCARD_E_NOT_READY + // + // MessageText: + // + // The reader or smart card is not ready to accept commands. + // + int SCARD_E_NOT_READY = 0x80100010; + // + // MessageId: SCARD_E_INVALID_VALUE + // + // MessageText: + // + // One or more of the supplied parameters values could not be properly + // interpreted. + // + int SCARD_E_INVALID_VALUE = 0x80100011; + // + // MessageId: SCARD_E_SYSTEM_CANCELLED + // + // MessageText: + // + // The action was cancelled by the system, presumably to log off or shut + // down. + // + int SCARD_E_SYSTEM_CANCELLED = 0x80100012; + // + // MessageId: SCARD_F_COMM_ERROR + // + // MessageText: + // + // An internal communications error has been detected. + // + int SCARD_F_COMM_ERROR = 0x80100013; + // + // MessageId: SCARD_F_UNKNOWN_ERROR + // + // MessageText: + // + // An internal error has been detected, but the source is unknown. + // + int SCARD_F_UNKNOWN_ERROR = 0x80100014; + // + // MessageId: SCARD_E_INVALID_ATR + // + // MessageText: + // + // An ATR obtained from the registry is not a valid ATR string. + // + int SCARD_E_INVALID_ATR = 0x80100015; + // + // MessageId: SCARD_E_NOT_TRANSACTED + // + // MessageText: + // + // An attempt was made to end a non-existent transaction. + // + int SCARD_E_NOT_TRANSACTED = 0x80100016; + // + // MessageId: SCARD_E_READER_UNAVAILABLE + // + // MessageText: + // + // The specified reader is not currently available for use. + // + int SCARD_E_READER_UNAVAILABLE = 0x80100017; + // + // MessageId: SCARD_P_SHUTDOWN + // + // MessageText: + // + // The operation has been aborted to allow the server application to exit. + // + int SCARD_P_SHUTDOWN = 0x80100018; + // + // MessageId: SCARD_E_PCI_TOO_SMALL + // + // MessageText: + // + // The PCI Receive buffer was too small. + // + int SCARD_E_PCI_TOO_SMALL = 0x80100019; + // + // MessageId: SCARD_E_READER_UNSUPPORTED + // + // MessageText: + // + // The reader driver does not meet minimal requirements for support. + // + int SCARD_E_READER_UNSUPPORTED = 0x8010001A; + // + // MessageId: SCARD_E_DUPLICATE_READER + // + // MessageText: + // + // The reader driver did not produce a unique reader name. + // + int SCARD_E_DUPLICATE_READER = 0x8010001B; + // + // MessageId: SCARD_E_CARD_UNSUPPORTED + // + // MessageText: + // + // The smart card does not meet minimal requirements for support. + // + int SCARD_E_CARD_UNSUPPORTED = 0x8010001C; + // + // MessageId: SCARD_E_NO_SERVICE + // + // MessageText: + // + // The Smart card resource manager is not running. + // + int SCARD_E_NO_SERVICE = 0x8010001D; + // + // MessageId: SCARD_E_SERVICE_STOPPED + // + // MessageText: + // + // The Smart card resource manager has shut down. + // + int SCARD_E_SERVICE_STOPPED = 0x8010001E; + // + // MessageId: SCARD_E_UNEXPECTED + // + // MessageText: + // + // An unexpected card error has occurred. + // + int SCARD_E_UNEXPECTED = 0x8010001F; + // + // MessageId: SCARD_E_ICC_INSTALLATION + // + // MessageText: + // + // No Primary Provider can be found for the smart card. + // + int SCARD_E_ICC_INSTALLATION = 0x80100020; + // + // MessageId: SCARD_E_ICC_CREATEORDER + // + // MessageText: + // + // The requested order of object creation is not supported. + // + int SCARD_E_ICC_CREATEORDER = 0x80100021; + // + // MessageId: SCARD_E_UNSUPPORTED_FEATURE + // + // MessageText: + // + // This smart card does not support the requested feature. + // + int SCARD_E_UNSUPPORTED_FEATURE = 0x80100022; + // + // MessageId: SCARD_E_DIR_NOT_FOUND + // + // MessageText: + // + // The identified directory does not exist in the smart card. + // + int SCARD_E_DIR_NOT_FOUND = 0x80100023; + // + // MessageId: SCARD_E_FILE_NOT_FOUND + // + // MessageText: + // + // The identified file does not exist in the smart card. + // + int SCARD_E_FILE_NOT_FOUND = 0x80100024; + // + // MessageId: SCARD_E_NO_DIR + // + // MessageText: + // + // The supplied path does not represent a smart card directory. + // + int SCARD_E_NO_DIR = 0x80100025; + // + // MessageId: SCARD_E_NO_FILE + // + // MessageText: + // + // The supplied path does not represent a smart card file. + // + int SCARD_E_NO_FILE = 0x80100026; + // + // MessageId: SCARD_E_NO_ACCESS + // + // MessageText: + // + // Access is denied to this file. + // + int SCARD_E_NO_ACCESS = 0x80100027; + // + // MessageId: SCARD_E_WRITE_TOO_MANY + // + // MessageText: + // + // The smartcard does not have enough memory to store the information. + // + int SCARD_E_WRITE_TOO_MANY = 0x80100028; + // + // MessageId: SCARD_E_BAD_SEEK + // + // MessageText: + // + // There was an error trying to set the smart card file object pointer. + // + int SCARD_E_BAD_SEEK = 0x80100029; + // + // MessageId: SCARD_E_INVALID_CHV + // + // MessageText: + // + // The supplied PIN is incorrect. + // + int SCARD_E_INVALID_CHV = 0x8010002A; + // + // MessageId: SCARD_E_UNKNOWN_RES_MNG + // + // MessageText: + // + // An unrecognized error code was returned from a layered component. + // + int SCARD_E_UNKNOWN_RES_MNG = 0x8010002B; + // + // MessageId: SCARD_E_NO_SUCH_CERTIFICATE + // + // MessageText: + // + // The requested certificate does not exist. + // + int SCARD_E_NO_SUCH_CERTIFICATE = 0x8010002C; + // + // MessageId: SCARD_E_CERTIFICATE_UNAVAILABLE + // + // MessageText: + // + // The requested certificate could not be obtained. + // + int SCARD_E_CERTIFICATE_UNAVAILABLE = 0x8010002D; + // + // MessageId: SCARD_E_NO_READERS_AVAILABLE + // + // MessageText: + // + // Cannot find a smart card reader. + // + int SCARD_E_NO_READERS_AVAILABLE = 0x8010002E; + // + // MessageId: SCARD_E_COMM_DATA_LOST + // + // MessageText: + // + // A communications error with the smart card has been detected. Retry the + // operation. + // + int SCARD_E_COMM_DATA_LOST = 0x8010002F; + // + // MessageId: SCARD_E_NO_KEY_CONTAINER + // + // MessageText: + // + // The requested key container does not exist on the smart card. + // + int SCARD_E_NO_KEY_CONTAINER = 0x80100030; + // + // MessageId: SCARD_E_SERVER_TOO_BUSY + // + // MessageText: + // + // The Smart card resource manager is too busy to complete this operation. + // + int SCARD_E_SERVER_TOO_BUSY = 0x80100031; + // + // These are warning codes. + // + // + // MessageId: SCARD_W_UNSUPPORTED_CARD + // + // MessageText: + // + // The reader cannot communicate with the smart card, due to ATR + // configuration conF;icts. + // + int SCARD_W_UNSUPPORTED_CARD = 0x80100065; + // + // MessageId: SCARD_W_UNRESPONSIVE_CARD + // + // MessageText: + // + // The smart card is not responding to a reset. + // + int SCARD_W_UNRESPONSIVE_CARD = 0x80100066; + // + // MessageId: SCARD_W_UNPOWERED_CARD + // + // MessageText: + // + // Power has been removed from the smart card, so that further communication + // is not possible. + // + int SCARD_W_UNPOWERED_CARD = 0x80100067; + // + // MessageId: SCARD_W_RESET_CARD + // + // MessageText: + // + // The smart card has been reset, so any shared state information is + // invalid. + // + int SCARD_W_RESET_CARD = 0x80100068; + // + // MessageId: SCARD_W_REMOVED_CARD + // + // MessageText: + // + // The smart card has been removed, so that further communication is not + // possible. + // + int SCARD_W_REMOVED_CARD = 0x80100069; + // + // MessageId: SCARD_W_SECURITY_VIOLATION + // + // MessageText: + // + // Access was denied because of a security violation. + // + int SCARD_W_SECURITY_VIOLATION = 0x8010006A; + // + // MessageId: SCARD_W_WRONG_CHV + // + // MessageText: + // + // The card cannot be accessed because the wrong PIN was presented. + // + int SCARD_W_WRONG_CHV = 0x8010006B; + // + // MessageId: SCARD_W_CHV_BLOCKED + // + // MessageText: + // + // The card cannot be accessed because the maximum number of PIN entry + // attempts has been reached. + // + int SCARD_W_CHV_BLOCKED = 0x8010006C; + // + // MessageId: SCARD_W_EOF + // + // MessageText: + // + // The end of the smart card file has been reached. + // + int SCARD_W_EOF = 0x8010006D; + // + // MessageId: SCARD_W_CANCELLED_BY_USER + // + // MessageText: + // + // The action was cancelled by the user. + // + int SCARD_W_CANCELLED_BY_USER = 0x8010006E; + // + // MessageId: SCARD_W_CARD_NOT_AUTHENTICATED + // + // MessageText: + // + // No PIN was presented to the smart card. + // + int SCARD_W_CARD_NOT_AUTHENTICATED = 0x8010006F; + // + // MessageId: SCARD_W_CACHE_ITEM_NOT_FOUND + // + // MessageText: + // + // The requested item could not be found in the cache. + // + int SCARD_W_CACHE_ITEM_NOT_FOUND = 0x80100070; + // + // MessageId: SCARD_W_CACHE_ITEM_STALE + // + // MessageText: + // + // The requested cache item is too old and was deleted from the cache. + // + int SCARD_W_CACHE_ITEM_STALE = 0x80100071; + // + // MessageId: SCARD_W_CACHE_ITEM_TOO_BIG + // + // MessageText: + // + // The new cache item exceeds the maximum per-item size defined for the + // cache. + // + int SCARD_W_CACHE_ITEM_TOO_BIG = 0x80100072; + // ***************** + // FACILITY_COMPLUS + // ***************** + // + // == + // Facility COMPLUS Error Messages + // == + // + // + // The following are the subranges within the COMPLUS facility + // 0x400 - 0x4ff=COMADMIN_E_CAT + // 0x600 - 0x6ff=COMQC errors + // 0x700 - 0x7ff=MSDTC errors + // 0x800 - 0x8ff=Other COMADMIN errors + // + // COMPLUS Admin errors + // + // + // MessageId: COMADMIN_E_OBJECTERRORS + // + // MessageText: + // + // Errors occurred accessing one or more objects - the ErrorInfo collection + // may have more detail + // + int COMADMIN_E_OBJECTERRORS = 0x80110401; + // + // MessageId: COMADMIN_E_OBJECTINVALID + // + // MessageText: + // + // One or more of the object's properties are missing or invalid + // + int COMADMIN_E_OBJECTINVALID = 0x80110402; + // + // MessageId: COMADMIN_E_KEYMISSING + // + // MessageText: + // + // The object was not found in the catalog + // + int COMADMIN_E_KEYMISSING = 0x80110403; + // + // MessageId: COMADMIN_E_ALREADYINSTALLED + // + // MessageText: + // + // The object is already registered + // + int COMADMIN_E_ALREADYINSTALLED = 0x80110404; + // + // MessageId: COMADMIN_E_APP_FILE_WRITEFAIL + // + // MessageText: + // + // Error occurred writing to the application file + // + int COMADMIN_E_APP_FILE_WRITEFAIL = 0x80110407; + // + // MessageId: COMADMIN_E_APP_FILE_READFAIL + // + // MessageText: + // + // Error occurred reading the application file + // + int COMADMIN_E_APP_FILE_READFAIL = 0x80110408; + // + // MessageId: COMADMIN_E_APP_FILE_VERSION + // + // MessageText: + // + // Invalid version number in application file + // + int COMADMIN_E_APP_FILE_VERSION = 0x80110409; + // + // MessageId: COMADMIN_E_BADPATH + // + // MessageText: + // + // The file path is invalid + // + int COMADMIN_E_BADPATH = 0x8011040A; + // + // MessageId: COMADMIN_E_APPLICATIONEXISTS + // + // MessageText: + // + // The application is already installed + // + int COMADMIN_E_APPLICATIONEXISTS = 0x8011040B; + // + // MessageId: COMADMIN_E_ROLEEXISTS + // + // MessageText: + // + // The role already exists + // + int COMADMIN_E_ROLEEXISTS = 0x8011040C; + // + // MessageId: COMADMIN_E_CANTCOPYFILE + // + // MessageText: + // + // An error occurred copying the file + // + int COMADMIN_E_CANTCOPYFILE = 0x8011040D; + // + // MessageId: COMADMIN_E_NOUSER + // + // MessageText: + // + // One or more users are not valid + // + int COMADMIN_E_NOUSER = 0x8011040F; + // + // MessageId: COMADMIN_E_INVALIDUSERIDS + // + // MessageText: + // + // One or more users in the application file are not valid + // + int COMADMIN_E_INVALIDUSERIDS = 0x80110410; + // + // MessageId: COMADMIN_E_NOREGISTRYCLSID + // + // MessageText: + // + // The component's CLSID is missing or corrupt + // + int COMADMIN_E_NOREGISTRYCLSID = 0x80110411; + // + // MessageId: COMADMIN_E_BADREGISTRYPROGID + // + // MessageText: + // + // The component's progID is missing or corrupt + // + int COMADMIN_E_BADREGISTRYPROGID = 0x80110412; + // + // MessageId: COMADMIN_E_AUTHENTICATIONLEVEL + // + // MessageText: + // + // Unable to set required authentication level for update request + // + int COMADMIN_E_AUTHENTICATIONLEVEL = 0x80110413; + // + // MessageId: COMADMIN_E_USERPASSWDNOTVALID + // + // MessageText: + // + // The identity or password set on the application is not valid + // + int COMADMIN_E_USERPASSWDNOTVALID = 0x80110414; + // + // MessageId: COMADMIN_E_CLSIDORIIDMISMATCH + // + // MessageText: + // + // Application file CLSIDs or IIDs do not match corresponding DLLs + // + int COMADMIN_E_CLSIDORIIDMISMATCH = 0x80110418; + // + // MessageId: COMADMIN_E_REMOTEINTERFACE + // + // MessageText: + // + // Interface information is either missing or changed + // + int COMADMIN_E_REMOTEINTERFACE = 0x80110419; + // + // MessageId: COMADMIN_E_DLLREGISTERSERVER + // + // MessageText: + // + // DllRegisterServer failed on component install + // + int COMADMIN_E_DLLREGISTERSERVER = 0x8011041A; + // + // MessageId: COMADMIN_E_NOSERVERSHARE + // + // MessageText: + // + // No server file share available + // + int COMADMIN_E_NOSERVERSHARE = 0x8011041B; + // + // MessageId: COMADMIN_E_DLLLOADFAILED + // + // MessageText: + // + // DLL could not be loaded + // + int COMADMIN_E_DLLLOADFAILED = 0x8011041D; + // + // MessageId: COMADMIN_E_BADREGISTRYLIBID + // + // MessageText: + // + // The registered TypeLib ID is not valid + // + int COMADMIN_E_BADREGISTRYLIBID = 0x8011041E; + // + // MessageId: COMADMIN_E_APPDIRNOTFOUND + // + // MessageText: + // + // Application install directory not found + // + int COMADMIN_E_APPDIRNOTFOUND = 0x8011041F; + // + // MessageId: COMADMIN_E_REGISTRARFAILED + // + // MessageText: + // + // Errors occurred while in the component registrar + // + int COMADMIN_E_REGISTRARFAILED = 0x80110423; + // + // MessageId: COMADMIN_E_COMPFILE_DOESNOTEXIST + // + // MessageText: + // + // The file does not exist + // + int COMADMIN_E_COMPFILE_DOESNOTEXIST = 0x80110424; + // + // MessageId: COMADMIN_E_COMPFILE_LOADDLLFAIL + // + // MessageText: + // + // The DLL could not be loaded + // + int COMADMIN_E_COMPFILE_LOADDLLFAIL = 0x80110425; + // + // MessageId: COMADMIN_E_COMPFILE_GETCLASSOBJ + // + // MessageText: + // + // GetClassObject failed in the DLL + // + int COMADMIN_E_COMPFILE_GETCLASSOBJ = 0x80110426; + // + // MessageId: COMADMIN_E_COMPFILE_CLASSNOTAVAIL + // + // MessageText: + // + // The DLL does not support the components listed in the TypeLib + // + int COMADMIN_E_COMPFILE_CLASSNOTAVAIL = 0x80110427; + // + // MessageId: COMADMIN_E_COMPFILE_BADTLB + // + // MessageText: + // + // The TypeLib could not be loaded + // + int COMADMIN_E_COMPFILE_BADTLB = 0x80110428; + // + // MessageId: COMADMIN_E_COMPFILE_NOTINSTALLABLE + // + // MessageText: + // + // The file does not contain components or component information + // + int COMADMIN_E_COMPFILE_NOTINSTALLABLE = 0x80110429; + // + // MessageId: COMADMIN_E_NOTCHANGEABLE + // + // MessageText: + // + // Changes to this object and its sub-objects have been disabled + // + int COMADMIN_E_NOTCHANGEABLE = 0x8011042A; + // + // MessageId: COMADMIN_E_NOTDELETEABLE + // + // MessageText: + // + // The delete function has been disabled for this object + // + int COMADMIN_E_NOTDELETEABLE = 0x8011042B; + // + // MessageId: COMADMIN_E_SESSION + // + // MessageText: + // + // The server catalog version is not supported + // + int COMADMIN_E_SESSION = 0x8011042C; + // + // MessageId: COMADMIN_E_COMP_MOVE_LOCKED + // + // MessageText: + // + // The component move was disallowed, because the source or destination + // application is either a system application or currently locked against + // changes + // + int COMADMIN_E_COMP_MOVE_LOCKED = 0x8011042D; + // + // MessageId: COMADMIN_E_COMP_MOVE_BAD_DEST + // + // MessageText: + // + // The component move failed because the destination application no longer + // exists + // + int COMADMIN_E_COMP_MOVE_BAD_DEST = 0x8011042E; + // + // MessageId: COMADMIN_E_REGISTERTLB + // + // MessageText: + // + // The system was unable to register the TypeLib + // + int COMADMIN_E_REGISTERTLB = 0x80110430; + // + // MessageId: COMADMIN_E_SYSTEMAPP + // + // MessageText: + // + // This operation cannot be performed on the system application + // + int COMADMIN_E_SYSTEMAPP = 0x80110433; + // + // MessageId: COMADMIN_E_COMPFILE_NOREGISTRAR + // + // MessageText: + // + // The component registrar referenced in this file is not available + // + int COMADMIN_E_COMPFILE_NOREGISTRAR = 0x80110434; + // + // MessageId: COMADMIN_E_COREQCOMPINSTALLED + // + // MessageText: + // + // A component in the same DLL is already installed + // + int COMADMIN_E_COREQCOMPINSTALLED = 0x80110435; + // + // MessageId: COMADMIN_E_SERVICENOTINSTALLED + // + // MessageText: + // + // The service is not installed + // + int COMADMIN_E_SERVICENOTINSTALLED = 0x80110436; + // + // MessageId: COMADMIN_E_PROPERTYSAVEFAILED + // + // MessageText: + // + // One or more property settings are either invalid or in conF;ict with each + // other + // + int COMADMIN_E_PROPERTYSAVEFAILED = 0x80110437; + // + // MessageId: COMADMIN_E_OBJECTEXISTS + // + // MessageText: + // + // The object you are attempting to add or rename already exists + // + int COMADMIN_E_OBJECTEXISTS = 0x80110438; + // + // MessageId: COMADMIN_E_COMPONENTEXISTS + // + // MessageText: + // + // The component already exists + // + int COMADMIN_E_COMPONENTEXISTS = 0x80110439; + // + // MessageId: COMADMIN_E_REGFILE_CORRUPT + // + // MessageText: + // + // The registration file is corrupt + // + int COMADMIN_E_REGFILE_CORRUPT = 0x8011043B; + // + // MessageId: COMADMIN_E_PROPERTY_OVERF;OW + // + // MessageText: + // + // The property value is too large + // + int COMADMIN_E_PROPERTY_OVERFLOW = 0x8011043C; + // + // MessageId: COMADMIN_E_NOTINREGISTRY + // + // MessageText: + // + // Object was not found in registry + // + int COMADMIN_E_NOTINREGISTRY = 0x8011043E; + // + // MessageId: COMADMIN_E_OBJECTNOTPOOLABLE + // + // MessageText: + // + // This object is not poolable + // + int COMADMIN_E_OBJECTNOTPOOLABLE = 0x8011043F; + // + // MessageId: COMADMIN_E_APPLID_MATCHES_CLSID + // + // MessageText: + // + // A CLSID with the same GUID as the new application ID is already installed + // on this machine + // + int COMADMIN_E_APPLID_MATCHES_CLSID = 0x80110446; + // + // MessageId: COMADMIN_E_ROLE_DOES_NOT_EXIST + // + // MessageText: + // + // A role assigned to a component, interface, or method did not exist in the + // application + // + int COMADMIN_E_ROLE_DOES_NOT_EXIST = 0x80110447; + // + // MessageId: COMADMIN_E_START_APP_NEEDS_COMPONENTS + // + // MessageText: + // + // You must have components in an application in order to start the + // application + // + int COMADMIN_E_START_APP_NEEDS_COMPONENTS = 0x80110448; + // + // MessageId: COMADMIN_E_REQUIRES_DIFFERENT_PLATFORM + // + // MessageText: + // + // This operation is not enabled on this platform + // + int COMADMIN_E_REQUIRES_DIFFERENT_PLATFORM = 0x80110449; + // + // MessageId: COMADMIN_E_CAN_NOT_EXPORT_APP_PROXY + // + // MessageText: + // + // Application Proxy is not exportable + // + int COMADMIN_E_CAN_NOT_EXPORT_APP_PROXY = 0x8011044A; + // + // MessageId: COMADMIN_E_CAN_NOT_START_APP + // + // MessageText: + // + // Failed to start application because it is either a library application or + // an application proxy + // + int COMADMIN_E_CAN_NOT_START_APP = 0x8011044B; + // + // MessageId: COMADMIN_E_CAN_NOT_EXPORT_SYS_APP + // + // MessageText: + // + // System application is not exportable + // + int COMADMIN_E_CAN_NOT_EXPORT_SYS_APP = 0x8011044C; + // + // MessageId: COMADMIN_E_CANT_SUBSCRIBE_TO_COMPONENT + // + // MessageText: + // + // Cannot subscribe to this component (the component may have been imported) + // + int COMADMIN_E_CANT_SUBSCRIBE_TO_COMPONENT = 0x8011044D; + // + // MessageId: COMADMIN_E_EVENTCLASS_CANT_BE_SUBSCRIBER + // + // MessageText: + // + // An event class cannot also be a subscriber component + // + int COMADMIN_E_EVENTCLASS_CANT_BE_SUBSCRIBER = 0x8011044E; + // + // MessageId: COMADMIN_E_LIB_APP_PROXY_INCOMPATIBLE + // + // MessageText: + // + // Library applications and application proxies are incompatible + // + int COMADMIN_E_LIB_APP_PROXY_INCOMPATIBLE = 0x8011044F; + // + // MessageId: COMADMIN_E_BASE_PARTITION_ONLY + // + // MessageText: + // + // This function is valid for the base partition only + // + int COMADMIN_E_BASE_PARTITION_ONLY = 0x80110450; + // + // MessageId: COMADMIN_E_START_APP_DISABLED + // + // MessageText: + // + // You cannot start an application that has been disabled + // + int COMADMIN_E_START_APP_DISABLED = 0x80110451; + // + // MessageId: COMADMIN_E_CAT_DUPLICATE_PARTITION_NAME + // + // MessageText: + // + // The specified partition name is already in use on this computer + // + int COMADMIN_E_CAT_DUPLICATE_PARTITION_NAME = 0x80110457; + // + // MessageId: COMADMIN_E_CAT_INVALID_PARTITION_NAME + // + // MessageText: + // + // The specified partition name is invalid. Check that the name contains at + // least one visible character + // + int COMADMIN_E_CAT_INVALID_PARTITION_NAME = 0x80110458; + // + // MessageId: COMADMIN_E_CAT_PARTITION_IN_USE + // + // MessageText: + // + // The partition cannot be deleted because it is the default partition for + // one or more users + // + int COMADMIN_E_CAT_PARTITION_IN_USE = 0x80110459; + // + // MessageId: COMADMIN_E_FILE_PARTITION_DUPLICATE_FILES + // + // MessageText: + // + // The partition cannot be exported, because one or more components in the + // partition have the same file name + // + int COMADMIN_E_FILE_PARTITION_DUPLICATE_FILES = 0x8011045A; + // + // MessageId: COMADMIN_E_CAT_IMPORTED_COMPONENTS_NOT_ALLOWED + // + // MessageText: + // + // Applications that contain one or more imported components cannot be + // installed into a non-base partition + // + int COMADMIN_E_CAT_IMPORTED_COMPONENTS_NOT_ALLOWED = 0x8011045B; + // + // MessageId: COMADMIN_E_AMBIGUOUS_APPLICATION_NAME + // + // MessageText: + // + // The application name is not unique and cannot be resolved to an + // application id + // + int COMADMIN_E_AMBIGUOUS_APPLICATION_NAME = 0x8011045C; + // + // MessageId: COMADMIN_E_AMBIGUOUS_PARTITION_NAME + // + // MessageText: + // + // The partition name is not unique and cannot be resolved to a partition id + // + int COMADMIN_E_AMBIGUOUS_PARTITION_NAME = 0x8011045D; + // + // MessageId: COMADMIN_E_REGDB_NOTINITIALIZED + // + // MessageText: + // + // The COM+ registry database has not been initialized + // + int COMADMIN_E_REGDB_NOTINITIALIZED = 0x80110472; + // + // MessageId: COMADMIN_E_REGDB_NOTOPEN + // + // MessageText: + // + // The COM+ registry database is not open + // + int COMADMIN_E_REGDB_NOTOPEN = 0x80110473; + // + // MessageId: COMADMIN_E_REGDB_SYSTEMERR + // + // MessageText: + // + // The COM+ registry database detected a system error + // + int COMADMIN_E_REGDB_SYSTEMERR = 0x80110474; + // + // MessageId: COMADMIN_E_REGDB_ALREADYRUNNING + // + // MessageText: + // + // The COM+ registry database is already running + // + int COMADMIN_E_REGDB_ALREADYRUNNING = 0x80110475; + // + // MessageId: COMADMIN_E_MIG_VERSIONNOTSUPPORTED + // + // MessageText: + // + // This version of the COM+ registry database cannot be migrated + // + int COMADMIN_E_MIG_VERSIONNOTSUPPORTED = 0x80110480; + // + // MessageId: COMADMIN_E_MIG_SCHEMANOTFOUND + // + // MessageText: + // + // The schema version to be migrated could not be found in the COM+ registry + // database + // + int COMADMIN_E_MIG_SCHEMANOTFOUND = 0x80110481; + // + // MessageId: COMADMIN_E_CAT_BITNESSMISMATCH + // + // MessageText: + // + // There was a type mismatch between binaries + // + int COMADMIN_E_CAT_BITNESSMISMATCH = 0x80110482; + // + // MessageId: COMADMIN_E_CAT_UNACCEPTABLEBITNESS + // + // MessageText: + // + // A binary of unknown or invalid type was provided + // + int COMADMIN_E_CAT_UNACCEPTABLEBITNESS = 0x80110483; + // + // MessageId: COMADMIN_E_CAT_WRONGAPPBITNESS + // + // MessageText: + // + // There was a type mismatch between a binary and an application + // + int COMADMIN_E_CAT_WRONGAPPBITNESS = 0x80110484; + // + // MessageId: COMADMIN_E_CAT_PAUSE_RESUME_NOT_SUPPORTED + // + // MessageText: + // + // The application cannot be paused or resumed + // + int COMADMIN_E_CAT_PAUSE_RESUME_NOT_SUPPORTED = 0x80110485; + // + // MessageId: COMADMIN_E_CAT_SERVERFAULT + // + // MessageText: + // + // The COM+ Catalog Server threw an exception during execution + // + int COMADMIN_E_CAT_SERVERFAULT = 0x80110486; + // + // COMPLUS Queued component errors + // + // + // MessageId: COMQC_E_APPLICATION_NOT_QUEUED + // + // MessageText: + // + // Only COM+ Applications marked "queued" can be invoked using the "queue" + // moniker + // + int COMQC_E_APPLICATION_NOT_QUEUED = 0x80110600; + // + // MessageId: COMQC_E_NO_QUEUEABLE_INTERFACES + // + // MessageText: + // + // At least one interface must be marked "queued" in order to create a + // queued component instance with the "queue" moniker + // + int COMQC_E_NO_QUEUEABLE_INTERFACES = 0x80110601; + // + // MessageId: COMQC_E_QUEUING_SERVICE_NOT_AVAILABLE + // + // MessageText: + // + // MSMQ is required for the requested operation and is not installed + // + int COMQC_E_QUEUING_SERVICE_NOT_AVAILABLE = 0x80110602; + // + // MessageId: COMQC_E_NO_IPERSISTSTREAM + // + // MessageText: + // + // Unable to marshal an interface that does not support IPersistStream + // + int COMQC_E_NO_IPERSISTSTREAM = 0x80110603; + // + // MessageId: COMQC_E_BAD_MESSAGE + // + // MessageText: + // + // The message is improperly formatted or was damaged in transit + // + int COMQC_E_BAD_MESSAGE = 0x80110604; + // + // MessageId: COMQC_E_UNAUTHENTICATED + // + // MessageText: + // + // An unauthenticated message was received by an application that accepts + // only authenticated messages + // + int COMQC_E_UNAUTHENTICATED = 0x80110605; + // + // MessageId: COMQC_E_UNTRUSTED_ENQUEUER + // + // MessageText: + // + // The message was requeued or moved by a user not in the "QC Trusted User" + // role + // + int COMQC_E_UNTRUSTED_ENQUEUER = 0x80110606; + // + // The range 0x700-0x7ff is reserved for MSDTC errors. + // + // + // MessageId: MSDTC_E_DUPLICATE_RESOURCE + // + // MessageText: + // + // Cannot create a duplicate resource of type Distributed Transaction + // Coordinator + // + int MSDTC_E_DUPLICATE_RESOURCE = 0x80110701; + // + // More COMADMIN errors from 0x8** + // + // + // MessageId: COMADMIN_E_OBJECT_PARENT_MISSING + // + // MessageText: + // + // One of the objects being inserted or updated does not belong to a valid + // parent collection + // + int COMADMIN_E_OBJECT_PARENT_MISSING = 0x80110808; + // + // MessageId: COMADMIN_E_OBJECT_DOES_NOT_EXIST + // + // MessageText: + // + // One of the specified objects cannot be found + // + int COMADMIN_E_OBJECT_DOES_NOT_EXIST = 0x80110809; + // + // MessageId: COMADMIN_E_APP_NOT_RUNNING + // + // MessageText: + // + // The specified application is not currently running + // + int COMADMIN_E_APP_NOT_RUNNING = 0x8011080A; + // + // MessageId: COMADMIN_E_INVALID_PARTITION + // + // MessageText: + // + // The partition(s) specified are not valid. + // + int COMADMIN_E_INVALID_PARTITION = 0x8011080B; + // + // MessageId: COMADMIN_E_SVCAPP_NOT_POOLABLE_OR_RECYCLABLE + // + // MessageText: + // + // COM+ applications that run as NT service may not be pooled or recycled + // + int COMADMIN_E_SVCAPP_NOT_POOLABLE_OR_RECYCLABLE = 0x8011080D; + // + // MessageId: COMADMIN_E_USER_IN_SET + // + // MessageText: + // + // One or more users are already assigned to a local partition set. + // + int COMADMIN_E_USER_IN_SET = 0x8011080E; + // + // MessageId: COMADMIN_E_CANTRECYCLELIBRARYAPPS + // + // MessageText: + // + // Library applications may not be recycled. + // + int COMADMIN_E_CANTRECYCLELIBRARYAPPS = 0x8011080F; + // + // MessageId: COMADMIN_E_CANTRECYCLESERVICEAPPS + // + // MessageText: + // + // Applications running as NT services may not be recycled. + // + int COMADMIN_E_CANTRECYCLESERVICEAPPS = 0x80110811; + // + // MessageId: COMADMIN_E_PROCESSALREADYRECYCLED + // + // MessageText: + // + // The process has already been recycled. + // + int COMADMIN_E_PROCESSALREADYRECYCLED = 0x80110812; + // + // MessageId: COMADMIN_E_PAUSEDPROCESSMAYNOTBERECYCLED + // + // MessageText: + // + // A paused process may not be recycled. + // + int COMADMIN_E_PAUSEDPROCESSMAYNOTBERECYCLED = 0x80110813; + // + // MessageId: COMADMIN_E_CANTMAKEINPROCSERVICE + // + // MessageText: + // + // Library applications may not be NT services. + // + int COMADMIN_E_CANTMAKEINPROCSERVICE = 0x80110814; + // + // MessageId: COMADMIN_E_PROGIDINUSEBYCLSID + // + // MessageText: + // + // The ProgID provided to the copy operation is invalid. The ProgID is in + // use by another registered CLSID. + // + int COMADMIN_E_PROGIDINUSEBYCLSID = 0x80110815; + // + // MessageId: COMADMIN_E_DEFAULT_PARTITION_NOT_IN_SET + // + // MessageText: + // + // The partition specified as default is not a member of the partition set. + // + int COMADMIN_E_DEFAULT_PARTITION_NOT_IN_SET = 0x80110816; + // + // MessageId: COMADMIN_E_RECYCLEDPROCESSMAYNOTBEPAUSED + // + // MessageText: + // + // A recycled process may not be paused. + // + int COMADMIN_E_RECYCLEDPROCESSMAYNOTBEPAUSED = 0x80110817; + // + // MessageId: COMADMIN_E_PARTITION_ACCESSDENIED + // + // MessageText: + // + // Access to the specified partition is denied. + // + int COMADMIN_E_PARTITION_ACCESSDENIED = 0x80110818; + // + // MessageId: COMADMIN_E_PARTITION_MSI_ONLY + // + // MessageText: + // + // Only Application Files (*.MSI files) can be installed into partitions. + // + int COMADMIN_E_PARTITION_MSI_ONLY = 0x80110819; + // + // MessageId: COMADMIN_E_LEGACYCOMPS_NOT_ALLOWED_IN_1_0_FORMAT + // + // MessageText: + // + // Applications containing one or more legacy components may not be exported + // to=1.0 format. + // + int COMADMIN_E_LEGACYCOMPS_NOT_ALLOWED_IN_1_0_FORMAT = 0x8011081A; + // + // MessageId: COMADMIN_E_LEGACYCOMPS_NOT_ALLOWED_IN_NONBASE_PARTITIONS + // + // MessageText: + // + // Legacy components may not exist in non-base partitions. + // + int COMADMIN_E_LEGACYCOMPS_NOT_ALLOWED_IN_NONBASE_PARTITIONS = 0x8011081B; + // + // MessageId: COMADMIN_E_COMP_MOVE_SOURCE + // + // MessageText: + // + // A component cannot be moved (or copied) from the System Application, an + // application proxy or a non-changeable application + // + int COMADMIN_E_COMP_MOVE_SOURCE = 0x8011081C; + // + // MessageId: COMADMIN_E_COMP_MOVE_DEST + // + // MessageText: + // + // A component cannot be moved (or copied) to the System Application, an + // application proxy or a non-changeable application + // + int COMADMIN_E_COMP_MOVE_DEST = 0x8011081D; + // + // MessageId: COMADMIN_E_COMP_MOVE_PRIVATE + // + // MessageText: + // + // A private component cannot be moved (or copied) to a library application + // or to the base partition + // + int COMADMIN_E_COMP_MOVE_PRIVATE = 0x8011081E; + // + // MessageId: COMADMIN_E_BASEPARTITION_REQUIRED_IN_SET + // + // MessageText: + // + // The Base Application Partition exists in all partition sets and cannot be + // removed. + // + int COMADMIN_E_BASEPARTITION_REQUIRED_IN_SET = 0x8011081F; + // + // MessageId: COMADMIN_E_CANNOT_ALIAS_EVENTCLASS + // + // MessageText: + // + // Alas, Event Class components cannot be aliased. + // + int COMADMIN_E_CANNOT_ALIAS_EVENTCLASS = 0x80110820; + // + // MessageId: COMADMIN_E_PRIVATE_ACCESSDENIED + // + // MessageText: + // + // Access is denied because the component is private. + // + int COMADMIN_E_PRIVATE_ACCESSDENIED = 0x80110821; + // + // MessageId: COMADMIN_E_SAFERINVALID + // + // MessageText: + // + // The specified SAFER level is invalid. + // + int COMADMIN_E_SAFERINVALID = 0x80110822; + // + // MessageId: COMADMIN_E_REGISTRY_ACCESSDENIED + // + // MessageText: + // + // The specified user cannot write to the system registry + // + int COMADMIN_E_REGISTRY_ACCESSDENIED = 0x80110823; + // + // MessageId: COMADMIN_E_PARTITIONS_DISABLED + // + // MessageText: + // + // COM+ partitions are currently disabled. + // + int COMADMIN_E_PARTITIONS_DISABLED = 0x80110824; + // + // MessageId: ERROR_FLT_IO_COMPLETE + // + // MessageText: + // + // The IO was completed by a filter. + // + int ERROR_FLT_IO_COMPLETE = 0x001F0001; + // + // MessageId: ERROR_FLT_NO_HANDLER_DEFINED + // + // MessageText: + // + // A handler was not defined by the filter for this operation. + // + int ERROR_FLT_NO_HANDLER_DEFINED = 0x801F0001; + // + // MessageId: ERROR_FLT_CONTEXT_ALREADY_DEFINED + // + // MessageText: + // + // A context is already defined for this object. + // + int ERROR_FLT_CONTEXT_ALREADY_DEFINED = 0x801F0002; + // + // MessageId: ERROR_FLT_INVALID_ASYNCHRONOUS_REQUEST + // + // MessageText: + // + // Asynchronous requests are not valid for this operation. + // + int ERROR_FLT_INVALID_ASYNCHRONOUS_REQUEST = 0x801F0003; + // + // MessageId: ERROR_FLT_DISALLOW_FAST_IO + // + // MessageText: + // + // Disallow the Fast IO path for this operation. + // + int ERROR_FLT_DISALLOW_FAST_IO = 0x801F0004; + // + // MessageId: ERROR_FLT_INVALID_NAME_REQUEST + // + // MessageText: + // + // An invalid name request was made. The name requested cannot be retrieved + // at this time. + // + int ERROR_FLT_INVALID_NAME_REQUEST = 0x801F0005; + // + // MessageId: ERROR_FLT_NOT_SAFE_TO_POST_OPERATION + // + // MessageText: + // + // Posting this operation to a worker thread for further processing is not + // safe at this time because it could lead to a system deadlock. + // + int ERROR_FLT_NOT_SAFE_TO_POST_OPERATION = 0x801F0006; + // + // MessageId: ERROR_FLT_NOT_INITIALIZED + // + // MessageText: + // + // The Filter Manager was not initialized when a filter tried to register. + // Make sure that the Filter Manager is getting loaded as a driver. + // + int ERROR_FLT_NOT_INITIALIZED = 0x801F0007; + // + // MessageId: ERROR_FLT_FILTER_NOT_READY + // + // MessageText: + // + // The filter is not ready for attachment to volumes because it has not + // finished initializing (FLTStartFiltering has not been called). + // + int ERROR_FLT_FILTER_NOT_READY = 0x801F0008; + // + // MessageId: ERROR_FLT_POST_OPERATION_CLEANUP + // + // MessageText: + // + // The filter must cleanup any operation specific context at this time + // because it is being removed from the system before the operation is + // completed by the lower drivers. + // + int ERROR_FLT_POST_OPERATION_CLEANUP = 0x801F0009; + // + // MessageId: ERROR_FLT_INTERNAL_ERROR + // + // MessageText: + // + // The Filter Manager had an internal error from which it cannot recover, + // therefore the operation has been failed. This is usually the result of a + // filter returning an invalid value from a pre-operation callback. + // + int ERROR_FLT_INTERNAL_ERROR = 0x801F000A; + // + // MessageId: ERROR_FLT_DELETING_OBJECT + // + // MessageText: + // + // The object specified for this action is in the process of being deleted, + // therefore the action requested cannot be completed at this time. + // + int ERROR_FLT_DELETING_OBJECT = 0x801F000B; + // + // MessageId: ERROR_FLT_MUST_BE_NONPAGED_POOL + // + // MessageText: + // + // Non-paged pool must be used for this type of context. + // + int ERROR_FLT_MUST_BE_NONPAGED_POOL = 0x801F000C; + // + // MessageId: ERROR_FLT_DUPLICATE_ENTRY + // + // MessageText: + // + // A duplicate handler definition has been provided for an operation. + // + int ERROR_FLT_DUPLICATE_ENTRY = 0x801F000D; + // + // MessageId: ERROR_FLT_CBDQ_DISABLED + // + // MessageText: + // + // The callback data queue has been disabled. + // + int ERROR_FLT_CBDQ_DISABLED = 0x801F000E; + // + // MessageId: ERROR_FLT_DO_NOT_ATTACH + // + // MessageText: + // + // Do not attach the filter to the volume at this time. + // + int ERROR_FLT_DO_NOT_ATTACH = 0x801F000F; + // + // MessageId: ERROR_FLT_DO_NOT_DETACH + // + // MessageText: + // + // Do not detach the filter from the volume at this time. + // + int ERROR_FLT_DO_NOT_DETACH = 0x801F0010; + // + // MessageId: ERROR_FLT_INSTANCE_ALTITUDE_COLLISION + // + // MessageText: + // + // An instance already exists at this altitude on the volume specified. + // + int ERROR_FLT_INSTANCE_ALTITUDE_COLLISION = 0x801F0011; + // + // MessageId: ERROR_FLT_INSTANCE_NAME_COLLISION + // + // MessageText: + // + // An instance already exists with this name on the volume specified. + // + int ERROR_FLT_INSTANCE_NAME_COLLISION = 0x801F0012; + // + // MessageId: ERROR_FLT_FILTER_NOT_FOUND + // + // MessageText: + // + // The system could not find the filter specified. + // + int ERROR_FLT_FILTER_NOT_FOUND = 0x801F0013; + // + // MessageId: ERROR_FLT_VOLUME_NOT_FOUND + // + // MessageText: + // + // The system could not find the volume specified. + // + int ERROR_FLT_VOLUME_NOT_FOUND = 0x801F0014; + // + // MessageId: ERROR_FLT_INSTANCE_NOT_FOUND + // + // MessageText: + // + // The system could not find the instance specified. + // + int ERROR_FLT_INSTANCE_NOT_FOUND = 0x801F0015; + // + // MessageId: ERROR_FLT_CONTEXT_ALLOCATION_NOT_FOUND + // + // MessageText: + // + // No registered context allocation definition was found for the given + // request. + // + int ERROR_FLT_CONTEXT_ALLOCATION_NOT_FOUND = 0x801F0016; + // + // MessageId: ERROR_FLT_INVALID_CONTEXT_REGISTRATION + // + // MessageText: + // + // An invalid parameter was specified during context registration. + // + int ERROR_FLT_INVALID_CONTEXT_REGISTRATION = 0x801F0017; + // + // MessageId: ERROR_FLT_NAME_CACHE_MISS + // + // MessageText: + // + // The name requested was not found in Filter Manager's name cache and could + // not be retrieved from the file system. + // + int ERROR_FLT_NAME_CACHE_MISS = 0x801F0018; + // + // MessageId: ERROR_FLT_NO_DEVICE_OBJECT + // + // MessageText: + // + // The requested device object does not exist for the given volume. + // + int ERROR_FLT_NO_DEVICE_OBJECT = 0x801F0019; + // + // MessageId: ERROR_FLT_VOLUME_ALREADY_MOUNTED + // + // MessageText: + // + // The specified volume is already mounted. + // + int ERROR_FLT_VOLUME_ALREADY_MOUNTED = 0x801F001A; + // + // MessageId: ERROR_FLT_ALREADY_ENLISTED + // + // MessageText: + // + // The specified Transaction Context is already enlisted in a transaction + // + int ERROR_FLT_ALREADY_ENLISTED = 0x801F001B; + // + // MessageId: ERROR_FLT_CONTEXT_ALREADY_LINKED + // + // MessageText: + // + // The specifiec context is already attached to another object + // + int ERROR_FLT_CONTEXT_ALREADY_LINKED = 0x801F001C; + // + // MessageId: ERROR_FLT_NO_WAITER_FOR_REPLY + // + // MessageText: + // + // No waiter is present for the filter's reply to this message. + // + int ERROR_FLT_NO_WAITER_FOR_REPLY = 0x801F0020; + // + // == + // Facility Graphics Error Messages + // == + // + // + // The following are the subranges within the Graphics facility + // + // 0x0000 - 0x0fff Display Driver Loader driver & Video Port errors + // (displdr.sys, videoprt.sys) + // 0x1000 - 0x1fff Monitor Class Function driver errors=(monitor.sys) + // 0x2000 - 0x2fff Windows Graphics Kernel Subsystem errors=(dxgkrnl.sys) + // 0x3000 - 0x3fff=Desktop Window Manager errors + // 0x2000 - 0x20ff Common errors + // 0x2100 - 0x21ff Video Memory Manager (VidMM) subsystem errors + // 0x2200 - 0x22ff Video GPU Scheduler (VidSch) subsystem errors + // 0x2300 - 0x23ff Video Display Mode Management (VidDMM) subsystem errors + // + // Display Driver Loader driver & Video Port errors {0x0000..0x0fff} + // + // + // MessageId: ERROR_HUNG_DISPLAY_DRIVER_THREAD + // + // MessageText: + // + // {Display Driver Stopped Responding} + // The %hs display driver has stopped working normally. Save your work and + // reboot the system to restore full display functionality. + // The next time you reboot the machine a dialog will be displayed giving + // you a chance to report this failure to Microsoft. + // + int ERROR_HUNG_DISPLAY_DRIVER_THREAD = 0x80260001; + // + // Desktop Window Manager errors {0x3000..0x3fff} + // + // + // MessageId: DWM_E_COMPOSITIONDISABLED + // + // MessageText: + // + // {Desktop composition is disabled} + // The operation could not be completed because desktop composition is + // disabled. + // + int DWM_E_COMPOSITIONDISABLED = 0x80263001; + // + // MessageId: DWM_E_REMOTING_NOT_SUPPORTED + // + // MessageText: + // + // {Some desktop composition APIs are not supported while remoting} + // The operation is not supported while running in a remote session. + // + int DWM_E_REMOTING_NOT_SUPPORTED = 0x80263002; + // + // MessageId: DWM_E_NO_REDIRECTION_SURFACE_AVAILABLE + // + // MessageText: + // + // {No DWM redirection surface is available} + // The DWM was unable to provide a redireciton surface to complete the + // DirectX present. + // + int DWM_E_NO_REDIRECTION_SURFACE_AVAILABLE = 0x80263003; + // + // MessageId: DWM_E_NOT_QUEUING_PRESENTS + // + // MessageText: + // + // {DWM is not queuing presents for the specified window} + // The window specified is not currently using queued presents. + // + int DWM_E_NOT_QUEUING_PRESENTS = 0x80263004; + // + // Monitor class function driver errors {0x1000..0x1fff} + // + // + // MessageId: ERROR_MONITOR_NO_DESCRIPTOR + // + // MessageText: + // + // Monitor descriptor could not be obtained. + // + int ERROR_MONITOR_NO_DESCRIPTOR = 0x80261001; + // + // MessageId: ERROR_MONITOR_UNKNOWN_DESCRIPTOR_FORMAT + // + // MessageText: + // + // Format of the obtained monitor descriptor is not supported by this + // release. + // + int ERROR_MONITOR_UNKNOWN_DESCRIPTOR_FORMAT = 0x80261002; + // + // MessageId: ERROR_MONITOR_INVALID_DESCRIPTOR_CHECKSUM + // + // MessageText: + // + // Checksum of the obtained monitor descriptor is invalid. + // + int ERROR_MONITOR_INVALID_DESCRIPTOR_CHECKSUM = 0xC0261003; + // + // MessageId: ERROR_MONITOR_INVALID_STANDARD_TIMING_BLOCK + // + // MessageText: + // + // Monitor descriptor contains an invalid standard timing block. + // + int ERROR_MONITOR_INVALID_STANDARD_TIMING_BLOCK = 0xC0261004; + // + // MessageId: ERROR_MONITOR_WMI_DATABLOCK_REGISTRATION_FAILED + // + // MessageText: + // + // WMI data block registration failed for one of the MSMonitorClass WMI + // subclasses. + // + int ERROR_MONITOR_WMI_DATABLOCK_REGISTRATION_FAILED = 0xC0261005; + // + // MessageId: ERROR_MONITOR_INVALID_SERIAL_NUMBER_MONDSC_BLOCK + // + // MessageText: + // + // Provided monitor descriptor block is either corrupted or does not contain + // monitor's detailed serial number. + // + int ERROR_MONITOR_INVALID_SERIAL_NUMBER_MONDSC_BLOCK = 0xC0261006; + // + // MessageId: ERROR_MONITOR_INVALID_USER_FRIENDLY_MONDSC_BLOCK + // + // MessageText: + // + // Provided monitor descriptor block is either corrupted or does not contain + // monitor's user friendly name. + // + int ERROR_MONITOR_INVALID_USER_FRIENDLY_MONDSC_BLOCK = 0xC0261007; + // + // MessageId: ERROR_MONITOR_NO_MORE_DESCRIPTOR_DATA + // + // MessageText: + // + // There is no monitor descriptor data at the specified (offset, size) + // region. + // + int ERROR_MONITOR_NO_MORE_DESCRIPTOR_DATA = 0xC0261008; + // + // MessageId: ERROR_MONITOR_INVALID_DETAILED_TIMING_BLOCK + // + // MessageText: + // + // Monitor descriptor contains an invalid detailed timing block. + // + int ERROR_MONITOR_INVALID_DETAILED_TIMING_BLOCK = 0xC0261009; + // + // Windows Graphics Kernel Subsystem errors {0x2000..0x2fff} + // + // TODO: Add DXG Win32 errors here + // + // Common errors {0x2000..0x20ff} + // + // + // MessageId: ERROR_GRAPHICS_NOT_EXCLUSIVE_MODE_OWNER + // + // MessageText: + // + // Exclusive mode ownership is needed to create unmanaged primary + // allocation. + // + int ERROR_GRAPHICS_NOT_EXCLUSIVE_MODE_OWNER = 0xC0262000; + // + // MessageId: ERROR_GRAPHICS_INSUFFICIENT_DMA_BUFFER + // + // MessageText: + // + // The driver needs more DMA buffer space in order to complete the requested + // operation. + // + int ERROR_GRAPHICS_INSUFFICIENT_DMA_BUFFER = 0xC0262001; + // + // MessageId: ERROR_GRAPHICS_INVALID_DISPLAY_ADAPTER + // + // MessageText: + // + // Specified display adapter handle is invalid. + // + int ERROR_GRAPHICS_INVALID_DISPLAY_ADAPTER = 0xC0262002; + // + // MessageId: ERROR_GRAPHICS_ADAPTER_WAS_RESET + // + // MessageText: + // + // Specified display adapter and all of its state has been reset. + // + int ERROR_GRAPHICS_ADAPTER_WAS_RESET = 0xC0262003; + // + // MessageId: ERROR_GRAPHICS_INVALID_DRIVER_MODEL + // + // MessageText: + // + // The driver stack doesn't match the expected driver model. + // + int ERROR_GRAPHICS_INVALID_DRIVER_MODEL = 0xC0262004; + // + // MessageId: ERROR_GRAPHICS_PRESENT_MODE_CHANGED + // + // MessageText: + // + // Present happened but ended up into the changed desktop mode + // + int ERROR_GRAPHICS_PRESENT_MODE_CHANGED = 0xC0262005; + // + // MessageId: ERROR_GRAPHICS_PRESENT_OCCLUDED + // + // MessageText: + // + // Nothing to present due to desktop occlusion + // + int ERROR_GRAPHICS_PRESENT_OCCLUDED = 0xC0262006; + // + // MessageId: ERROR_GRAPHICS_PRESENT_DENIED + // + // MessageText: + // + // Not able to present due to denial of desktop access + // + int ERROR_GRAPHICS_PRESENT_DENIED = 0xC0262007; + // + // MessageId: ERROR_GRAPHICS_CANNOTCOLORCONVERT + // + // MessageText: + // + // Not able to present with color convertion + // + int ERROR_GRAPHICS_CANNOTCOLORCONVERT = 0xC0262008; + // + // MessageId: ERROR_GRAPHICS_DRIVER_MISMATCH + // + // MessageText: + // + // The kernel driver detected a version mismatch between it and the user + // mode driver. + // + int ERROR_GRAPHICS_DRIVER_MISMATCH = 0xC0262009; + // + // MessageId: ERROR_GRAPHICS_PARTIAL_DATA_POPULATED + // + // MessageText: + // + // Specified buffer is not big enough to contain entire requested dataset. + // Partial data populated upto the size of the buffer. + // Caller needs to provide buffer of size as specified in the partially + // populated buffer's content (interface specific). + // + int ERROR_GRAPHICS_PARTIAL_DATA_POPULATED = 0x4026200A; + // + // Video Memory Manager (VidMM) subsystem errors {0x2100..0x21ff} + // + // + // MessageId: ERROR_GRAPHICS_NO_VIDEO_MEMORY + // + // MessageText: + // + // Not enough video memory available to complete the operation. + // + int ERROR_GRAPHICS_NO_VIDEO_MEMORY = 0xC0262100; + // + // MessageId: ERROR_GRAPHICS_CANT_LOCK_MEMORY + // + // MessageText: + // + // Couldn't probe and lock the underlying memory of an allocation. + // + int ERROR_GRAPHICS_CANT_LOCK_MEMORY = 0xC0262101; + // + // MessageId: ERROR_GRAPHICS_ALLOCATION_BUSY + // + // MessageText: + // + // The allocation is currently busy. + // + int ERROR_GRAPHICS_ALLOCATION_BUSY = 0xC0262102; + // + // MessageId: ERROR_GRAPHICS_TOO_MANY_REFERENCES + // + // MessageText: + // + // An object being referenced has reach the maximum reference count already + // and can't be reference further. + // + int ERROR_GRAPHICS_TOO_MANY_REFERENCES = 0xC0262103; + // + // MessageId: ERROR_GRAPHICS_TRY_AGAIN_LATER + // + // MessageText: + // + // A problem couldn't be solved due to some currently existing condition. + // The problem should be tried again later. + // + int ERROR_GRAPHICS_TRY_AGAIN_LATER = 0xC0262104; + // + // MessageId: ERROR_GRAPHICS_TRY_AGAIN_NOW + // + // MessageText: + // + // A problem couldn't be solved due to some currently existing condition. + // The problem should be tried again immediately. + // + int ERROR_GRAPHICS_TRY_AGAIN_NOW = 0xC0262105; + // + // MessageId: ERROR_GRAPHICS_ALLOCATION_INVALID + // + // MessageText: + // + // The allocation is invalid. + // + int ERROR_GRAPHICS_ALLOCATION_INVALID = 0xC0262106; + // + // MessageId: ERROR_GRAPHICS_UNSWIZZLING_APERTURE_UNAVAILABLE + // + // MessageText: + // + // No more unswizzling aperture are currently available. + // + int ERROR_GRAPHICS_UNSWIZZLING_APERTURE_UNAVAILABLE = 0xC0262107; + // + // MessageId: ERROR_GRAPHICS_UNSWIZZLING_APERTURE_UNSUPPORTED + // + // MessageText: + // + // The current allocation can't be unswizzled by an aperture. + // + int ERROR_GRAPHICS_UNSWIZZLING_APERTURE_UNSUPPORTED = 0xC0262108; + // + // MessageId: ERROR_GRAPHICS_CANT_EVICT_PINNED_ALLOCATION + // + // MessageText: + // + // The request failed because a pinned allocation can't be evicted. + // + int ERROR_GRAPHICS_CANT_EVICT_PINNED_ALLOCATION = 0xC0262109; + // + // MessageId: ERROR_GRAPHICS_INVALID_ALLOCATION_USAGE + // + // MessageText: + // + // The allocation can't be used from it's current segment location for the + // specified operation. + // + int ERROR_GRAPHICS_INVALID_ALLOCATION_USAGE = 0xC0262110; + // + // MessageId: ERROR_GRAPHICS_CANT_RENDER_LOCKED_ALLOCATION + // + // MessageText: + // + // A locked allocation can't be used in the current command buffer. + // + int ERROR_GRAPHICS_CANT_RENDER_LOCKED_ALLOCATION = 0xC0262111; + // + // MessageId: ERROR_GRAPHICS_ALLOCATION_CLOSED + // + // MessageText: + // + // The allocation being referenced has been closed permanently. + // + int ERROR_GRAPHICS_ALLOCATION_CLOSED = 0xC0262112; + // + // MessageId: ERROR_GRAPHICS_INVALID_ALLOCATION_INSTANCE + // + // MessageText: + // + // An invalid allocation instance is being referenced. + // + int ERROR_GRAPHICS_INVALID_ALLOCATION_INSTANCE = 0xC0262113; + // + // MessageId: ERROR_GRAPHICS_INVALID_ALLOCATION_HANDLE + // + // MessageText: + // + // An invalid allocation handle is being referenced. + // + int ERROR_GRAPHICS_INVALID_ALLOCATION_HANDLE = 0xC0262114; + // + // MessageId: ERROR_GRAPHICS_WRONG_ALLOCATION_DEVICE + // + // MessageText: + // + // The allocation being referenced doesn't belong to the current device. + // + int ERROR_GRAPHICS_WRONG_ALLOCATION_DEVICE = 0xC0262115; + // + // MessageId: ERROR_GRAPHICS_ALLOCATION_CONTENT_LOST + // + // MessageText: + // + // The specified allocation lost its content. + // + int ERROR_GRAPHICS_ALLOCATION_CONTENT_LOST = 0xC0262116; + // + // Video GPU Scheduler (VidSch) subsystem errors {0x2200..0x22ff} + // + // + // MessageId: ERROR_GRAPHICS_GPU_EXCEPTION_ON_DEVICE + // + // MessageText: + // + // GPU exception is detected on the given device. The device is not able to + // be scheduled. + // + int ERROR_GRAPHICS_GPU_EXCEPTION_ON_DEVICE = 0xC0262200; + // + // Video Present Network Management (VidPNMgr) subsystem errors + // {0x2300..0x23ff} + // + // + // MessageId: ERROR_GRAPHICS_INVALID_VIDPN_TOPOLOGY + // + // MessageText: + // + // Specified VidPN topology is invalid. + // + int ERROR_GRAPHICS_INVALID_VIDPN_TOPOLOGY = 0xC0262300; + // + // MessageId: ERROR_GRAPHICS_VIDPN_TOPOLOGY_NOT_SUPPORTED + // + // MessageText: + // + // Specified VidPN topology is valid but is not supported by this model of + // the display adapter. + // + int ERROR_GRAPHICS_VIDPN_TOPOLOGY_NOT_SUPPORTED = 0xC0262301; + // + // MessageId: ERROR_GRAPHICS_VIDPN_TOPOLOGY_CURRENTLY_NOT_SUPPORTED + // + // MessageText: + // + // Specified VidPN topology is valid but is not supported by the display + // adapter at this time, due to current allocation of its resources. + // + int ERROR_GRAPHICS_VIDPN_TOPOLOGY_CURRENTLY_NOT_SUPPORTED = 0xC0262302; + // + // MessageId: ERROR_GRAPHICS_INVALID_VIDPN + // + // MessageText: + // + // Specified VidPN handle is invalid. + // + int ERROR_GRAPHICS_INVALID_VIDPN = 0xC0262303; + // + // MessageId: ERROR_GRAPHICS_INVALID_VIDEO_PRESENT_SOURCE + // + // MessageText: + // + // Specified video present source is invalid. + // + int ERROR_GRAPHICS_INVALID_VIDEO_PRESENT_SOURCE = 0xC0262304; + // + // MessageId: ERROR_GRAPHICS_INVALID_VIDEO_PRESENT_TARGET + // + // MessageText: + // + // Specified video present target is invalid. + // + int ERROR_GRAPHICS_INVALID_VIDEO_PRESENT_TARGET = 0xC0262305; + // + // MessageId: ERROR_GRAPHICS_VIDPN_MODALITY_NOT_SUPPORTED + // + // MessageText: + // + // Specified VidPN modality is not supported (e.g. at least two of the + // pinned modes are not cofunctiona;. + // + int ERROR_GRAPHICS_VIDPN_MODALITY_NOT_SUPPORTED = 0xC0262306; + // + // MessageId: ERROR_GRAPHICS_MODE_NOT_PINNED + // + // MessageText: + // + // No mode is pinned on the specified VidPN source/target. + // + int ERROR_GRAPHICS_MODE_NOT_PINNED = 0x00262307; + // + // MessageId: ERROR_GRAPHICS_INVALID_VIDPN_SOURCEMODESET + // + // MessageText: + // + // Specified VidPN source mode set is invalid. + // + int ERROR_GRAPHICS_INVALID_VIDPN_SOURCEMODESET = 0xC0262308; + // + // MessageId: ERROR_GRAPHICS_INVALID_VIDPN_TARGETMODESET + // + // MessageText: + // + // Specified VidPN target mode set is invalid. + // + int ERROR_GRAPHICS_INVALID_VIDPN_TARGETMODESET = 0xC0262309; + // + // MessageId: ERROR_GRAPHICS_INVALID_FREQUENCY + // + // MessageText: + // + // Specified video signal frequency is invalid. + // + int ERROR_GRAPHICS_INVALID_FREQUENCY = 0xC026230A; + // + // MessageId: ERROR_GRAPHICS_INVALID_ACTIVE_REGION + // + // MessageText: + // + // Specified video signal active region is invalid. + // + int ERROR_GRAPHICS_INVALID_ACTIVE_REGION = 0xC026230B; + // + // MessageId: ERROR_GRAPHICS_INVALID_TOTAL_REGION + // + // MessageText: + // + // Specified video signal total region is invalid. + // + int ERROR_GRAPHICS_INVALID_TOTAL_REGION = 0xC026230C; + // + // MessageId: ERROR_GRAPHICS_INVALID_VIDEO_PRESENT_SOURCE_MODE + // + // MessageText: + // + // Specified video present source mode is invalid. + // + int ERROR_GRAPHICS_INVALID_VIDEO_PRESENT_SOURCE_MODE = 0xC0262310; + // + // MessageId: ERROR_GRAPHICS_INVALID_VIDEO_PRESENT_TARGET_MODE + // + // MessageText: + // + // Specified video present target mode is invalid. + // + int ERROR_GRAPHICS_INVALID_VIDEO_PRESENT_TARGET_MODE = 0xC0262311; + // + // MessageId: ERROR_GRAPHICS_PINNED_MODE_MUST_REMAIN_IN_SET + // + // MessageText: + // + // Pinned mode must remain in the set on VidPN's cofunctional modality + // enumeration. + // + int ERROR_GRAPHICS_PINNED_MODE_MUST_REMAIN_IN_SET = 0xC0262312; + // + // MessageId: ERROR_GRAPHICS_PATH_ALREADY_IN_TOPOLOGY + // + // MessageText: + // + // Specified video present path is already in VidPN's topology. + // + int ERROR_GRAPHICS_PATH_ALREADY_IN_TOPOLOGY = 0xC0262313; + // + // MessageId: ERROR_GRAPHICS_MODE_ALREADY_IN_MODESET + // + // MessageText: + // + // Specified mode is already in the mode set. + // + int ERROR_GRAPHICS_MODE_ALREADY_IN_MODESET = 0xC0262314; + // + // MessageId: ERROR_GRAPHICS_INVALID_VIDEOPRESENTSOURCESET + // + // MessageText: + // + // Specified video present source set is invalid. + // + int ERROR_GRAPHICS_INVALID_VIDEOPRESENTSOURCESET = 0xC0262315; + // + // MessageId: ERROR_GRAPHICS_INVALID_VIDEOPRESENTTARGETSET + // + // MessageText: + // + // Specified video present target set is invalid. + // + int ERROR_GRAPHICS_INVALID_VIDEOPRESENTTARGETSET = 0xC0262316; + // + // MessageId: ERROR_GRAPHICS_SOURCE_ALREADY_IN_SET + // + // MessageText: + // + // Specified video present source is already in the video present source + // set. + // + int ERROR_GRAPHICS_SOURCE_ALREADY_IN_SET = 0xC0262317; + // + // MessageId: ERROR_GRAPHICS_TARGET_ALREADY_IN_SET + // + // MessageText: + // + // Specified video present target is already in the video present target + // set. + // + int ERROR_GRAPHICS_TARGET_ALREADY_IN_SET = 0xC0262318; + // + // MessageId: ERROR_GRAPHICS_INVALID_VIDPN_PRESENT_PATH + // + // MessageText: + // + // Specified VidPN present path is invalid. + // + int ERROR_GRAPHICS_INVALID_VIDPN_PRESENT_PATH = 0xC0262319; + // + // MessageId: ERROR_GRAPHICS_NO_RECOMMENDED_VIDPN_TOPOLOGY + // + // MessageText: + // + // Miniport has no recommendation for augmentation of the specified VidPN's + // topology. + // + int ERROR_GRAPHICS_NO_RECOMMENDED_VIDPN_TOPOLOGY = 0xC026231A; + // + // MessageId: ERROR_GRAPHICS_INVALID_MONITOR_FREQUENCYRANGESET + // + // MessageText: + // + // Specified monitor frequency range set is invalid. + // + int ERROR_GRAPHICS_INVALID_MONITOR_FREQUENCYRANGESET = 0xC026231B; + // + // MessageId: ERROR_GRAPHICS_INVALID_MONITOR_FREQUENCYRANGE + // + // MessageText: + // + // Specified monitor frequency range is invalid. + // + int ERROR_GRAPHICS_INVALID_MONITOR_FREQUENCYRANGE = 0xC026231C; + // + // MessageId: ERROR_GRAPHICS_FREQUENCYRANGE_NOT_IN_SET + // + // MessageText: + // + // Specified frequency range is not in the specified monitor frequency range + // set. + // + int ERROR_GRAPHICS_FREQUENCYRANGE_NOT_IN_SET = 0xC026231D; + // + // MessageId: ERROR_GRAPHICS_NO_PREFERRED_MODE + // + // MessageText: + // + // Specified mode set does not specify preference for one of its modes. + // + int ERROR_GRAPHICS_NO_PREFERRED_MODE = 0x0026231E; + // + // MessageId: ERROR_GRAPHICS_FREQUENCYRANGE_ALREADY_IN_SET + // + // MessageText: + // + // Specified frequency range is already in the specified monitor frequency + // range set. + // + int ERROR_GRAPHICS_FREQUENCYRANGE_ALREADY_IN_SET = 0xC026231F; + // + // MessageId: ERROR_GRAPHICS_STALE_MODESET + // + // MessageText: + // + // Specified mode set is stale. Please reacquire the new mode set. + // + int ERROR_GRAPHICS_STALE_MODESET = 0xC0262320; + // + // MessageId: ERROR_GRAPHICS_INVALID_MONITOR_SOURCEMODESET + // + // MessageText: + // + // Specified monitor source mode set is invalid. + // + int ERROR_GRAPHICS_INVALID_MONITOR_SOURCEMODESET = 0xC0262321; + // + // MessageId: ERROR_GRAPHICS_INVALID_MONITOR_SOURCE_MODE + // + // MessageText: + // + // Specified monitor source mode is invalid. + // + int ERROR_GRAPHICS_INVALID_MONITOR_SOURCE_MODE = 0xC0262322; + // + // MessageId: ERROR_GRAPHICS_NO_RECOMMENDED_FUNCTIONAL_VIDPN + // + // MessageText: + // + // Miniport does not have any recommendation regarding the request to + // provide a functional VidPN given the current display adapter + // configuration. + // + int ERROR_GRAPHICS_NO_RECOMMENDED_FUNCTIONAL_VIDPN = 0xC0262323; + // + // MessageId: ERROR_GRAPHICS_MODE_ID_MUST_BE_UNIQUE + // + // MessageText: + // + // ID of the specified mode is already used by another mode in the set. + // + int ERROR_GRAPHICS_MODE_ID_MUST_BE_UNIQUE = 0xC0262324; + // + // MessageId: ERROR_GRAPHICS_EMPTY_ADAPTER_MONITOR_MODE_SUPPORT_INTERSECTION + // + // MessageText: + // + // System failed to determine a mode that is supported by both the display + // adapter and the monitor connected to it. + // + int ERROR_GRAPHICS_EMPTY_ADAPTER_MONITOR_MODE_SUPPORT_INTERSECTION = 0xC0262325; + // + // MessageId: ERROR_GRAPHICS_VIDEO_PRESENT_TARGETS_LESS_THAN_SOURCES + // + // MessageText: + // + // Number of video present targets must be greater than or equal to the + // number of video present sources. + // + int ERROR_GRAPHICS_VIDEO_PRESENT_TARGETS_LESS_THAN_SOURCES = 0xC0262326; + // + // MessageId: ERROR_GRAPHICS_PATH_NOT_IN_TOPOLOGY + // + // MessageText: + // + // Specified present path is not in VidPN's topology. + // + int ERROR_GRAPHICS_PATH_NOT_IN_TOPOLOGY = 0xC0262327; + // + // MessageId: ERROR_GRAPHICS_ADAPTER_MUST_HAVE_AT_LEAST_ONE_SOURCE + // + // MessageText: + // + // Display adapter must have at least one video present source. + // + int ERROR_GRAPHICS_ADAPTER_MUST_HAVE_AT_LEAST_ONE_SOURCE = 0xC0262328; + // + // MessageId: ERROR_GRAPHICS_ADAPTER_MUST_HAVE_AT_LEAST_ONE_TARGET + // + // MessageText: + // + // Display adapter must have at least one video present target. + // + int ERROR_GRAPHICS_ADAPTER_MUST_HAVE_AT_LEAST_ONE_TARGET = 0xC0262329; + // + // MessageId: ERROR_GRAPHICS_INVALID_MONITORDESCRIPTORSET + // + // MessageText: + // + // Specified monitor descriptor set is invalid. + // + int ERROR_GRAPHICS_INVALID_MONITORDESCRIPTORSET = 0xC026232A; + // + // MessageId: ERROR_GRAPHICS_INVALID_MONITORDESCRIPTOR + // + // MessageText: + // + // Specified monitor descriptor is invalid. + // + int ERROR_GRAPHICS_INVALID_MONITORDESCRIPTOR = 0xC026232B; + // + // MessageId: ERROR_GRAPHICS_MONITORDESCRIPTOR_NOT_IN_SET + // + // MessageText: + // + // Specified descriptor is not in the specified monitor descriptor set. + // + int ERROR_GRAPHICS_MONITORDESCRIPTOR_NOT_IN_SET = 0xC026232C; + // + // MessageId: ERROR_GRAPHICS_MONITORDESCRIPTOR_ALREADY_IN_SET + // + // MessageText: + // + // Specified descriptor is already in the specified monitor descriptor set. + // + int ERROR_GRAPHICS_MONITORDESCRIPTOR_ALREADY_IN_SET = 0xC026232D; + // + // MessageId: ERROR_GRAPHICS_MONITORDESCRIPTOR_ID_MUST_BE_UNIQUE + // + // MessageText: + // + // ID of the specified monitor descriptor is already used by another + // descriptor in the set. + // + int ERROR_GRAPHICS_MONITORDESCRIPTOR_ID_MUST_BE_UNIQUE = 0xC026232E; + // + // MessageId: ERROR_GRAPHICS_INVALID_VIDPN_TARGET_SUBSET_TYPE + // + // MessageText: + // + // Specified video present target subset type is invalid. + // + int ERROR_GRAPHICS_INVALID_VIDPN_TARGET_SUBSET_TYPE = 0xC026232F; + // + // MessageId: ERROR_GRAPHICS_RESOURCES_NOT_RELATED + // + // MessageText: + // + // Two or more of the specified resources are not related to each other, as + // defined by the interface semantics. + // + int ERROR_GRAPHICS_RESOURCES_NOT_RELATED = 0xC0262330; + // + // MessageId: ERROR_GRAPHICS_SOURCE_ID_MUST_BE_UNIQUE + // + // MessageText: + // + // ID of the specified video present source is already used by another + // source in the set. + // + int ERROR_GRAPHICS_SOURCE_ID_MUST_BE_UNIQUE = 0xC0262331; + // + // MessageId: ERROR_GRAPHICS_TARGET_ID_MUST_BE_UNIQUE + // + // MessageText: + // + // ID of the specified video present target is already used by another + // target in the set. + // + int ERROR_GRAPHICS_TARGET_ID_MUST_BE_UNIQUE = 0xC0262332; + // + // MessageId: ERROR_GRAPHICS_NO_AVAILABLE_VIDPN_TARGET + // + // MessageText: + // + // Specified VidPN source cannot be used because there is no available VidPN + // target to connect it to. + // + int ERROR_GRAPHICS_NO_AVAILABLE_VIDPN_TARGET = 0xC0262333; + // + // MessageId: ERROR_GRAPHICS_MONITOR_COULD_NOT_BE_ASSOCIATED_WITH_ADAPTER + // + // MessageText: + // + // Newly arrived monitor could not be associated with a display adapter. + // + int ERROR_GRAPHICS_MONITOR_COULD_NOT_BE_ASSOCIATED_WITH_ADAPTER = 0xC0262334; + // + // MessageId: ERROR_GRAPHICS_NO_VIDPNMGR + // + // MessageText: + // + // Display adapter in question does not have an associated VidPN manager. + // + int ERROR_GRAPHICS_NO_VIDPNMGR = 0xC0262335; + // + // MessageId: ERROR_GRAPHICS_NO_ACTIVE_VIDPN + // + // MessageText: + // + // VidPN manager of the display adapter in question does not have an active + // VidPN. + // + int ERROR_GRAPHICS_NO_ACTIVE_VIDPN = 0xC0262336; + // + // MessageId: ERROR_GRAPHICS_STALE_VIDPN_TOPOLOGY + // + // MessageText: + // + // Specified VidPN topology is stale. Please reacquire the new topology. + // + int ERROR_GRAPHICS_STALE_VIDPN_TOPOLOGY = 0xC0262337; + // + // MessageId: ERROR_GRAPHICS_MONITOR_NOT_CONNECTED + // + // MessageText: + // + // There is no monitor connected on the specified video present target. + // + int ERROR_GRAPHICS_MONITOR_NOT_CONNECTED = 0xC0262338; + // + // MessageId: ERROR_GRAPHICS_SOURCE_NOT_IN_TOPOLOGY + // + // MessageText: + // + // Specified source is not part of the specified VidPN's topology. + // + int ERROR_GRAPHICS_SOURCE_NOT_IN_TOPOLOGY = 0xC0262339; + // + // MessageId: ERROR_GRAPHICS_INVALID_PRIMARYSURFACE_SIZE + // + // MessageText: + // + // Specified primary surface size is invalid. + // + int ERROR_GRAPHICS_INVALID_PRIMARYSURFACE_SIZE = 0xC026233A; + // + // MessageId: ERROR_GRAPHICS_INVALID_VISIBLEREGION_SIZE + // + // MessageText: + // + // Specified visible region size is invalid. + // + int ERROR_GRAPHICS_INVALID_VISIBLEREGION_SIZE = 0xC026233B; + // + // MessageId: ERROR_GRAPHICS_INVALID_STRIDE + // + // MessageText: + // + // Specified stride is invalid. + // + int ERROR_GRAPHICS_INVALID_STRIDE = 0xC026233C; + // + // MessageId: ERROR_GRAPHICS_INVALID_PIXELFORMAT + // + // MessageText: + // + // Specified pixel format is invalid. + // + int ERROR_GRAPHICS_INVALID_PIXELFORMAT = 0xC026233D; + // + // MessageId: ERROR_GRAPHICS_INVALID_COLORBASIS + // + // MessageText: + // + // Specified color basis is invalid. + // + int ERROR_GRAPHICS_INVALID_COLORBASIS = 0xC026233E; + // + // MessageId: ERROR_GRAPHICS_INVALID_PIXELVALUEACCESSMODE + // + // MessageText: + // + // Specified pixel value access mode is invalid. + // + int ERROR_GRAPHICS_INVALID_PIXELVALUEACCESSMODE = 0xC026233F; + // + // MessageId: ERROR_GRAPHICS_TARGET_NOT_IN_TOPOLOGY + // + // MessageText: + // + // Specified target is not part of the specified VidPN's topology. + // + int ERROR_GRAPHICS_TARGET_NOT_IN_TOPOLOGY = 0xC0262340; + // + // MessageId: ERROR_GRAPHICS_NO_DISPLAY_MODE_MANAGEMENT_SUPPORT + // + // MessageText: + // + // Failed to acquire display mode management interface. + // + int ERROR_GRAPHICS_NO_DISPLAY_MODE_MANAGEMENT_SUPPORT = 0xC0262341; + // + // MessageId: ERROR_GRAPHICS_VIDPN_SOURCE_IN_USE + // + // MessageText: + // + // Specified VidPN source is already owned by a DMM client and cannot be + // used until that client releases it. + // + int ERROR_GRAPHICS_VIDPN_SOURCE_IN_USE = 0xC0262342; + // + // MessageId: ERROR_GRAPHICS_CANT_ACCESS_ACTIVE_VIDPN + // + // MessageText: + // + // Specified VidPN is active and cannot be accessed. + // + int ERROR_GRAPHICS_CANT_ACCESS_ACTIVE_VIDPN = 0xC0262343; + // + // MessageId: ERROR_GRAPHICS_INVALID_PATH_IMPORTANCE_ORDINAL + // + // MessageText: + // + // Specified VidPN present path importance ordinal is invalid. + // + int ERROR_GRAPHICS_INVALID_PATH_IMPORTANCE_ORDINAL = 0xC0262344; + // + // MessageId: ERROR_GRAPHICS_INVALID_PATH_CONTENT_GEOMETRY_TRANSFORMATION + // + // MessageText: + // + // Specified VidPN present path content geometry transformation is invalid. + // + int ERROR_GRAPHICS_INVALID_PATH_CONTENT_GEOMETRY_TRANSFORMATION = 0xC0262345; + // + // MessageId: + // ERROR_GRAPHICS_PATH_CONTENT_GEOMETRY_TRANSFORMATION_NOT_SUPPORTED + // + // MessageText: + // + // Specified content geometry transformation is not supported on the + // respective VidPN present path. + // + int ERROR_GRAPHICS_PATH_CONTENT_GEOMETRY_TRANSFORMATION_NOT_SUPPORTED = 0xC0262346; + // + // MessageId: ERROR_GRAPHICS_INVALID_GAMMA_RAMP + // + // MessageText: + // + // Specified gamma ramp is invalid. + // + int ERROR_GRAPHICS_INVALID_GAMMA_RAMP = 0xC0262347; + // + // MessageId: ERROR_GRAPHICS_GAMMA_RAMP_NOT_SUPPORTED + // + // MessageText: + // + // Specified gamma ramp is not supported on the respective VidPN present + // path. + // + int ERROR_GRAPHICS_GAMMA_RAMP_NOT_SUPPORTED = 0xC0262348; + // + // MessageId: ERROR_GRAPHICS_MULTISAMPLING_NOT_SUPPORTED + // + // MessageText: + // + // Multi-sampling is not supported on the respective VidPN present path. + // + int ERROR_GRAPHICS_MULTISAMPLING_NOT_SUPPORTED = 0xC0262349; + // + // MessageId: ERROR_GRAPHICS_MODE_NOT_IN_MODESET + // + // MessageText: + // + // Specified mode is not in the specified mode set. + // + int ERROR_GRAPHICS_MODE_NOT_IN_MODESET = 0xC026234A; + // + // MessageId: ERROR_GRAPHICS_DATASET_IS_EMPTY + // + // MessageText: + // + // Specified data set (e.g. mode set, frequency range set, descriptor set, + // topology, etc.) is empty. + // + int ERROR_GRAPHICS_DATASET_IS_EMPTY = 0x0026234B; + // + // MessageId: ERROR_GRAPHICS_NO_MORE_ELEMENTS_IN_DATASET + // + // MessageText: + // + // Specified data set (e.g. mode set, frequency range set, descriptor set, + // topology, etc.) does not contain any more elements. + // + int ERROR_GRAPHICS_NO_MORE_ELEMENTS_IN_DATASET = 0x0026234C; + // + // MessageId: ERROR_GRAPHICS_INVALID_VIDPN_TOPOLOGY_RECOMMENDATION_REASON + // + // MessageText: + // + // Specified VidPN topology recommendation reason is invalid. + // + int ERROR_GRAPHICS_INVALID_VIDPN_TOPOLOGY_RECOMMENDATION_REASON = 0xC026234D; + // + // MessageId: ERROR_GRAPHICS_INVALID_PATH_CONTENT_TYPE + // + // MessageText: + // + // Specified VidPN present path content type is invalid. + // + int ERROR_GRAPHICS_INVALID_PATH_CONTENT_TYPE = 0xC026234E; + // + // MessageId: ERROR_GRAPHICS_INVALID_COPYPROTECTION_TYPE + // + // MessageText: + // + // Specified VidPN present path copy protection type is invalid. + // + int ERROR_GRAPHICS_INVALID_COPYPROTECTION_TYPE = 0xC026234F; + // + // MessageId: ERROR_GRAPHICS_UNASSIGNED_MODESET_ALREADY_EXISTS + // + // MessageText: + // + // No more than one unassigned mode set can exist at any given time for a + // given VidPN source/target. + // + int ERROR_GRAPHICS_UNASSIGNED_MODESET_ALREADY_EXISTS = 0xC0262350; + // + // MessageId: ERROR_GRAPHICS_PATH_CONTENT_GEOMETRY_TRANSFORMATION_NOT_PINNED + // + // MessageText: + // + // Specified content transformation is not pinned on the specified VidPN + // present path. + // + int ERROR_GRAPHICS_PATH_CONTENT_GEOMETRY_TRANSFORMATION_NOT_PINNED = 0x00262351; + // + // MessageId: ERROR_GRAPHICS_INVALID_SCANLINE_ORDERING + // + // MessageText: + // + // Specified scanline ordering type is invalid. + // + int ERROR_GRAPHICS_INVALID_SCANLINE_ORDERING = 0xC0262352; + // + // MessageId: ERROR_GRAPHICS_TOPOLOGY_CHANGES_NOT_ALLOWED + // + // MessageText: + // + // Topology changes are not allowed for the specified VidPN. + // + int ERROR_GRAPHICS_TOPOLOGY_CHANGES_NOT_ALLOWED = 0xC0262353; + // + // MessageId: ERROR_GRAPHICS_NO_AVAILABLE_IMPORTANCE_ORDINALS + // + // MessageText: + // + // All available importance ordinals are already used in specified topology. + // + int ERROR_GRAPHICS_NO_AVAILABLE_IMPORTANCE_ORDINALS = 0xC0262354; + // + // MessageId: ERROR_GRAPHICS_INCOMPATIBLE_PRIVATE_FORMAT + // + // MessageText: + // + // Specified primary surface has a different private format attribute than + // the current primary surface + // + int ERROR_GRAPHICS_INCOMPATIBLE_PRIVATE_FORMAT = 0xC0262355; + // + // MessageId: ERROR_GRAPHICS_INVALID_MODE_PRUNING_ALGORITHM + // + // MessageText: + // + // Specified mode pruning algorithm is invalid + // + int ERROR_GRAPHICS_INVALID_MODE_PRUNING_ALGORITHM = 0xC0262356; + // + // MessageId: ERROR_GRAPHICS_INVALID_MONITOR_CAPABILITY_ORIGIN + // + // MessageText: + // + // Specified monitor capability origin is invalid. + // + int ERROR_GRAPHICS_INVALID_MONITOR_CAPABILITY_ORIGIN = 0xC0262357; + // + // MessageId: ERROR_GRAPHICS_INVALID_MONITOR_FREQUENCYRANGE_CONSTRAINT + // + // MessageText: + // + // Specified monitor frequency range constraint is invalid. + // + int ERROR_GRAPHICS_INVALID_MONITOR_FREQUENCYRANGE_CONSTRAINT = 0xC0262358; + // + // MessageId: ERROR_GRAPHICS_MAX_NUM_PATHS_REACHED + // + // MessageText: + // + // Maximum supported number of present paths has been reached. + // + int ERROR_GRAPHICS_MAX_NUM_PATHS_REACHED = 0xC0262359; + // + // MessageId: ERROR_GRAPHICS_CANCEL_VIDPN_TOPOLOGY_AUGMENTATION + // + // MessageText: + // + // Miniport requested that augmentation be cancelled for the specified + // source of the specified VidPN's topology. + // + int ERROR_GRAPHICS_CANCEL_VIDPN_TOPOLOGY_AUGMENTATION = 0xC026235A; + // + // MessageId: ERROR_GRAPHICS_INVALID_CLIENT_TYPE + // + // MessageText: + // + // Specified client type was not recognized. + // + int ERROR_GRAPHICS_INVALID_CLIENT_TYPE = 0xC026235B; + // + // MessageId: ERROR_GRAPHICS_CLIENTVIDPN_NOT_SET + // + // MessageText: + // + // Client VidPN is not set on this adapter (e.g. no user mode initiated mode + // changes took place on this adapter yet). + // + int ERROR_GRAPHICS_CLIENTVIDPN_NOT_SET = 0xC026235C; + // + // Port specific status codes {0x2400..0x24ff} + // + // + // MessageId: ERROR_GRAPHICS_SPECIFIED_CHILD_ALREADY_CONNECTED + // + // MessageText: + // + // Specified display adapter child device already has an external device + // connected to it. + // + int ERROR_GRAPHICS_SPECIFIED_CHILD_ALREADY_CONNECTED = 0xC0262400; + // + // MessageId: ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED + // + // MessageText: + // + // Specified display adapter child device does not support descriptor + // exposure. + // + int ERROR_GRAPHICS_CHILD_DESCRIPTOR_NOT_SUPPORTED = 0xC0262401; + // + // MessageId: ERROR_GRAPHICS_UNKNOWN_CHILD_STATUS + // + // MessageText: + // + // Child device presence was not reliably detected. + // + int ERROR_GRAPHICS_UNKNOWN_CHILD_STATUS = 0x4026242F; + // + // MessageId: ERROR_GRAPHICS_NOT_A_LINKED_ADAPTER + // + // MessageText: + // + // The display adapter is not linked to any other adapters. + // + int ERROR_GRAPHICS_NOT_A_LINKED_ADAPTER = 0xC0262430; + // + // MessageId: ERROR_GRAPHICS_LEADLINK_NOT_ENUMERATED + // + // MessageText: + // + // Lead adapter in a linked configuration was not enumerated yet. + // + int ERROR_GRAPHICS_LEADLINK_NOT_ENUMERATED = 0xC0262431; + // + // MessageId: ERROR_GRAPHICS_CHAINLINKS_NOT_ENUMERATED + // + // MessageText: + // + // Some chain adapters in a linked configuration were not enumerated yet. + // + int ERROR_GRAPHICS_CHAINLINKS_NOT_ENUMERATED = 0xC0262432; + // + // MessageId: ERROR_GRAPHICS_ADAPTER_CHAIN_NOT_READY + // + // MessageText: + // + // The chain of linked adapters is not ready to start because of an unknown + // failure. + // + int ERROR_GRAPHICS_ADAPTER_CHAIN_NOT_READY = 0xC0262433; + // + // MessageId: ERROR_GRAPHICS_CHAINLINKS_NOT_STARTED + // + // MessageText: + // + // An attempt was made to start a lead link display adapter when the chain + // links were not started yet. + // + int ERROR_GRAPHICS_CHAINLINKS_NOT_STARTED = 0xC0262434; + // + // MessageId: ERROR_GRAPHICS_CHAINLINKS_NOT_POWERED_ON + // + // MessageText: + // + // An attempt was made to power up a lead link display adapter when the + // chain links were powered down. + // + int ERROR_GRAPHICS_CHAINLINKS_NOT_POWERED_ON = 0xC0262435; + // + // MessageId: ERROR_GRAPHICS_INCONSISTENT_DEVICE_LINK_STATE + // + // MessageText: + // + // The adapter link was found to be in an inconsistent state. Not all + // adapters are in an expected PNP/Power state. + // + int ERROR_GRAPHICS_INCONSISTENT_DEVICE_LINK_STATE = 0xC0262436; + // + // MessageId: ERROR_GRAPHICS_LEADLINK_START_DEFERRED + // + // MessageText: + // + // Starting the leadlink adapter has been deferred temporarily. + // + int ERROR_GRAPHICS_LEADLINK_START_DEFERRED = 0x40262437; + // + // MessageId: ERROR_GRAPHICS_NOT_POST_DEVICE_DRIVER + // + // MessageText: + // + // The driver trying to start is not the same as the driver for the POSTed + // display adapter. + // + int ERROR_GRAPHICS_NOT_POST_DEVICE_DRIVER = 0xC0262438; + // + // MessageId: ERROR_GRAPHICS_POLLING_TOO_FREQUENTLY + // + // MessageText: + // + // The display adapter is being polled for children too frequently at the + // same polling level. + // + int ERROR_GRAPHICS_POLLING_TOO_FREQUENTLY = 0x40262439; + // + // MessageId: ERROR_GRAPHICS_START_DEFERRED + // + // MessageText: + // + // Starting the adapter has been deferred temporarily. + // + int ERROR_GRAPHICS_START_DEFERRED = 0x4026243A; + // + // MessageId: ERROR_GRAPHICS_ADAPTER_ACCESS_NOT_EXCLUDED + // + // MessageText: + // + // An operation is being attempted that requires the display adapter to be + // in a quiescent state. + // + int ERROR_GRAPHICS_ADAPTER_ACCESS_NOT_EXCLUDED = 0xC026243B; + // + // OPM, UAB and PVP specific error codes {0x2500..0x257f} + // + // + // MessageId: ERROR_GRAPHICS_OPM_NOT_SUPPORTED + // + // MessageText: + // + // The driver does not support OPM. + // + int ERROR_GRAPHICS_OPM_NOT_SUPPORTED = 0xC0262500; + // + // MessageId: ERROR_GRAPHICS_COPP_NOT_SUPPORTED + // + // MessageText: + // + // The driver does not support COPP. + // + int ERROR_GRAPHICS_COPP_NOT_SUPPORTED = 0xC0262501; + // + // MessageId: ERROR_GRAPHICS_UAB_NOT_SUPPORTED + // + // MessageText: + // + // The driver does not support UAB. + // + int ERROR_GRAPHICS_UAB_NOT_SUPPORTED = 0xC0262502; + // + // MessageId: ERROR_GRAPHICS_OPM_INVALID_ENCRYPTED_PARAMETERS + // + // MessageText: + // + // The specified encrypted parameters are invalid. + // + int ERROR_GRAPHICS_OPM_INVALID_ENCRYPTED_PARAMETERS = 0xC0262503; + // + // MessageId: ERROR_GRAPHICS_OPM_NO_VIDEO_OUTPUTS_EXIST + // + // MessageText: + // + // The GDI display device passed to this function does not have any active + // video outputs. + // + int ERROR_GRAPHICS_OPM_NO_VIDEO_OUTPUTS_EXIST = 0xC0262505; + // + // MessageId: ERROR_GRAPHICS_OPM_INTERNAL_ERROR + // + // MessageText: + // + // An internal error caused this operation to fail. + // + int ERROR_GRAPHICS_OPM_INTERNAL_ERROR = 0xC026250B; + // + // MessageId: ERROR_GRAPHICS_OPM_INVALID_HANDLE + // + // MessageText: + // + // The function failed because the caller passed in an invalid OPM user mode + // handle. + // + int ERROR_GRAPHICS_OPM_INVALID_HANDLE = 0xC026250C; + // + // MessageId: ERROR_GRAPHICS_PVP_INVALID_CERTIFICATE_LENGTH + // + // MessageText: + // + // A certificate could not be returned because the certificate buffer passed + // to the function was too small. + // + int ERROR_GRAPHICS_PVP_INVALID_CERTIFICATE_LENGTH = 0xC026250E; + // + // MessageId: ERROR_GRAPHICS_OPM_SPANNING_MODE_ENABLED + // + // MessageText: + // + // A video output could not be created because the frame buffer is in + // spanning mode. + // + int ERROR_GRAPHICS_OPM_SPANNING_MODE_ENABLED = 0xC026250F; + // + // MessageId: ERROR_GRAPHICS_OPM_THEATER_MODE_ENABLED + // + // MessageText: + // + // A video output could not be created because the frame buffer is in + // theater mode. + // + int ERROR_GRAPHICS_OPM_THEATER_MODE_ENABLED = 0xC0262510; + // + // MessageId: ERROR_GRAPHICS_PVP_HFS_FAILED + // + // MessageText: + // + // The function failed because the display adapter's Hardware Functionality + // Scan failed to validate the graphics hardware. + // + int ERROR_GRAPHICS_PVP_HFS_FAILED = 0xC0262511; + // + // MessageId: ERROR_GRAPHICS_OPM_INVALID_SRM + // + // MessageText: + // + // The HDCP System Renewability Message passed to this function did not + // comply with section=5 of the HDCP=1.1 specification. + // + int ERROR_GRAPHICS_OPM_INVALID_SRM = 0xC0262512; + // + // MessageId: ERROR_GRAPHICS_OPM_OUTPUT_DOES_NOT_SUPPORT_HDCP + // + // MessageText: + // + // The video output cannot enable the High-bandwidth Digital Content + // Protection (HDCP) System because it does not support HDCP. + // + int ERROR_GRAPHICS_OPM_OUTPUT_DOES_NOT_SUPPORT_HDCP = 0xC0262513; + // + // MessageId: ERROR_GRAPHICS_OPM_OUTPUT_DOES_NOT_SUPPORT_ACP + // + // MessageText: + // + // The video output cannot enable Analogue Copy Protection (ACP) because it + // does not support ACP. + // + int ERROR_GRAPHICS_OPM_OUTPUT_DOES_NOT_SUPPORT_ACP = 0xC0262514; + // + // MessageId: ERROR_GRAPHICS_OPM_OUTPUT_DOES_NOT_SUPPORT_CGMSA + // + // MessageText: + // + // The video output cannot enable the Content Generation Management System + // Analogue (CGMS-A) protection technology because it does not support + // CGMS-A. + // + int ERROR_GRAPHICS_OPM_OUTPUT_DOES_NOT_SUPPORT_CGMSA = 0xC0262515; + // + // MessageId: ERROR_GRAPHICS_OPM_HDCP_SRM_NEVER_SET + // + // MessageText: + // + // The IOPMVideoOutput::GetInformation method cannot return the version of + // the SRM being used because the application never successfully passed an + // SRM to the video output. + // + int ERROR_GRAPHICS_OPM_HDCP_SRM_NEVER_SET = 0xC0262516; + // + // MessageId: ERROR_GRAPHICS_OPM_RESOLUTION_TOO_HIGH + // + // MessageText: + // + // The IOPMVideoOutput::Configure method cannot enable the specified output + // protection technology because the output's screen resolution is too high. + // + int ERROR_GRAPHICS_OPM_RESOLUTION_TOO_HIGH = 0xC0262517; + // + // MessageId: ERROR_GRAPHICS_OPM_ALL_HDCP_HARDWARE_ALREADY_IN_USE + // + // MessageText: + // + // The IOPMVideoOutput::Configure method cannot enable HDCP because the + // display adapter's HDCP hardware is already being used by other physical + // outputs. + // + int ERROR_GRAPHICS_OPM_ALL_HDCP_HARDWARE_ALREADY_IN_USE = 0xC0262518; + // + // MessageId: ERROR_GRAPHICS_OPM_VIDEO_OUTPUT_NO_LONGER_EXISTS + // + // MessageText: + // + // The operating system asynchronously destroyed this OPM video output + // because the operating system's state changed. This error typically occurs + // because the monitor PDO associated with this video output was removed, + // the monitor PDO associated with this video output was stopped, the video + // output's session became a non-console session or the video output's + // desktop became an inactive desktop. + // + int ERROR_GRAPHICS_OPM_VIDEO_OUTPUT_NO_LONGER_EXISTS = 0xC026251A; + // + // MessageId: ERROR_GRAPHICS_OPM_SESSION_TYPE_CHANGE_IN_PROGRESS + // + // MessageText: + // + // The method failed because the session is changing its type. No + // IOPMVideoOutput methods can be called when a session is changing its + // type. There are currently three types of sessions: console, disconnected + // and remote (RDP or ICA). + // + int ERROR_GRAPHICS_OPM_SESSION_TYPE_CHANGE_IN_PROGRESS = 0xC026251B; + // + // MessageId: ERROR_GRAPHICS_OPM_VIDEO_OUTPUT_DOES_NOT_HAVE_COPP_SEMANTICS + // + // MessageText: + // + // Either the IOPMVideoOutput::COPPCompatibleGetInformation, + // IOPMVideoOutput::GetInformation, or IOPMVideoOutput::Configure method + // failed. This error is only returned if a video output has OPM semantics. + // IOPMVideoOutput::COPPCompatibleGetInformation always returns this error + // if a video output has OPM semantics. IOPMVideoOutput::GetInformation + // returns this error code if the caller requested COPP specific + // information. IOPMVideoOutput::Configure returns this error when the + // caller tries to use a COPP specific command. + // + int ERROR_GRAPHICS_OPM_VIDEO_OUTPUT_DOES_NOT_HAVE_COPP_SEMANTICS = 0xC026251C; + // + // MessageId: ERROR_GRAPHICS_OPM_INVALID_INFORMATION_REQUEST + // + // MessageText: + // + // The IOPMVideoOutput::GetInformation and + // IOPMVideoOutput::COPPCompatibleGetInformation methods return this error + // if the passed in sequence number is not the expected sequence number or + // the passed in OMAC value is invalid. + // + int ERROR_GRAPHICS_OPM_INVALID_INFORMATION_REQUEST = 0xC026251D; + // + // MessageId: ERROR_GRAPHICS_OPM_DRIVER_INTERNAL_ERROR + // + // MessageText: + // + // The method failed because an unexpected error occurred inside of a + // display driver. + // + int ERROR_GRAPHICS_OPM_DRIVER_INTERNAL_ERROR = 0xC026251E; + // + // MessageId: ERROR_GRAPHICS_OPM_VIDEO_OUTPUT_DOES_NOT_HAVE_OPM_SEMANTICS + // + // MessageText: + // + // Either the IOPMVideoOutput::COPPCompatibleGetInformation, + // IOPMVideoOutput::GetInformation, or IOPMVideoOutput::Configure method + // failed. This error is only returned if a video output has COPP semantics. + // IOPMVideoOutput::COPPCompatibleGetInformation returns this error code if + // the caller requested OPM specific information. + // IOPMVideoOutput::GetInformation always returns this error if a video + // output has COPP semantics. IOPMVideoOutput::Configure returns this error + // when the caller tries to use an OPM specific command. + // + int ERROR_GRAPHICS_OPM_VIDEO_OUTPUT_DOES_NOT_HAVE_OPM_SEMANTICS = 0xC026251F; + // + // MessageId: ERROR_GRAPHICS_OPM_SIGNALING_NOT_SUPPORTED + // + // MessageText: + // + // The IOPMVideoOutput::COPPCompatibleGetInformation or + // IOPMVideoOutput::Configure method failed because the display driver does + // not support the OPM_GET_ACP_AND_CGMSA_SIGNALING and + // OPM_SET_ACP_AND_CGMSA_SIGNALING GUIDs. + // + int ERROR_GRAPHICS_OPM_SIGNALING_NOT_SUPPORTED = 0xC0262520; + // + // MessageId: ERROR_GRAPHICS_OPM_INVALID_CONFIGURATION_REQUEST + // + // MessageText: + // + // The IOPMVideoOutput::Configure function returns this error code if the + // passed in sequence number is not the expected sequence number or the + // passed in OMAC value is invalid. + // + int ERROR_GRAPHICS_OPM_INVALID_CONFIGURATION_REQUEST = 0xC0262521; + // + // Monitor Configuration API error codes {0x2580..0x25DF} + // + // + // MessageId: ERROR_GRAPHICS_I2C_NOT_SUPPORTED + // + // MessageText: + // + // The monitor connected to the specified video output does not have an I2C + // bus. + // + int ERROR_GRAPHICS_I2C_NOT_SUPPORTED = 0xC0262580; + // + // MessageId: ERROR_GRAPHICS_I2C_DEVICE_DOES_NOT_EXIST + // + // MessageText: + // + // No device on the I2C bus has the specified address. + // + int ERROR_GRAPHICS_I2C_DEVICE_DOES_NOT_EXIST = 0xC0262581; + // + // MessageId: ERROR_GRAPHICS_I2C_ERROR_TRANSMITTING_DATA + // + // MessageText: + // + // An error occurred while transmitting data to the device on the I2C bus. + // + int ERROR_GRAPHICS_I2C_ERROR_TRANSMITTING_DATA = 0xC0262582; + // + // MessageId: ERROR_GRAPHICS_I2C_ERROR_RECEIVING_DATA + // + // MessageText: + // + // An error occurred while receiving data from the device on the I2C bus. + // + int ERROR_GRAPHICS_I2C_ERROR_RECEIVING_DATA = 0xC0262583; + // + // MessageId: ERROR_GRAPHICS_DDCCI_VCP_NOT_SUPPORTED + // + // MessageText: + // + // The monitor does not support the specified VCP code. + // + int ERROR_GRAPHICS_DDCCI_VCP_NOT_SUPPORTED = 0xC0262584; + // + // MessageId: ERROR_GRAPHICS_DDCCI_INVALID_DATA + // + // MessageText: + // + // The data received from the monitor is invalid. + // + int ERROR_GRAPHICS_DDCCI_INVALID_DATA = 0xC0262585; + // + // MessageId: + // ERROR_GRAPHICS_DDCCI_MONITOR_RETURNED_INVALID_TIMING_STATUS_BYTE + // + // MessageText: + // + // The function failed because a monitor returned an invalid Timing Status + // byte when the operating system used the DDC/CI Get Timing Report & Timing + // Message command to get a timing report from a monitor. + // + int ERROR_GRAPHICS_DDCCI_MONITOR_RETURNED_INVALID_TIMING_STATUS_BYTE = 0xC0262586; + // + // MessageId: ERROR_GRAPHICS_MCA_INVALID_CAPABILITIES_STRING + // + // MessageText: + // + // The monitor returned a DDC/CI capabilities string which did not comply + // with the ACCESS.bus=3.0, DDC/CI=1.1, or MCCS=2 Revision=1 specification. + // + int ERROR_GRAPHICS_MCA_INVALID_CAPABILITIES_STRING = 0xC0262587; + // + // MessageId: ERROR_GRAPHICS_MCA_INTERNAL_ERROR + // + // MessageText: + // + // An internal Monitor Configuration API error occured. + // + int ERROR_GRAPHICS_MCA_INTERNAL_ERROR = 0xC0262588; + // + // MessageId: ERROR_GRAPHICS_DDCCI_INVALID_MESSAGE_COMMAND + // + // MessageText: + // + // An operation failed because a DDC/CI message had an invalid value in its + // command field. + // + int ERROR_GRAPHICS_DDCCI_INVALID_MESSAGE_COMMAND = 0xC0262589; + // + // MessageId: ERROR_GRAPHICS_DDCCI_INVALID_MESSAGE_LENGTH + // + // MessageText: + // + // An error occurred because the field length of a DDC/CI message contained + // an invalid value. + // + int ERROR_GRAPHICS_DDCCI_INVALID_MESSAGE_LENGTH = 0xC026258A; + // + // MessageId: ERROR_GRAPHICS_DDCCI_INVALID_MESSAGE_CHECKSUM + // + // MessageText: + // + // An error occurred because the checksum field in a DDC/CI message did not + // match the message's computed checksum value. This error implies that the + // data was corrupted while it was being transmitted from a monitor to a + // computer. + // + int ERROR_GRAPHICS_DDCCI_INVALID_MESSAGE_CHECKSUM = 0xC026258B; + // + // MessageId: ERROR_GRAPHICS_INVALID_PHYSICAL_MONITOR_HANDLE + // + // MessageText: + // + // This function failed because an invalid monitor handle was passed to it. + // + int ERROR_GRAPHICS_INVALID_PHYSICAL_MONITOR_HANDLE = 0xC026258C; + // + // MessageId: ERROR_GRAPHICS_MONITOR_NO_LONGER_EXISTS + // + // MessageText: + // + // The operating system asynchronously destroyed the monitor which + // corresponds to this handle because the operating system's state changed. + // This error typically occurs because the monitor PDO associated with this + // handle was removed, the monitor PDO associated with this handle was + // stopped, or a display mode change occurred. A display mode change occurs + // when windows sends a WM_DISPLAYCHANGE windows message to applications. + // + int ERROR_GRAPHICS_MONITOR_NO_LONGER_EXISTS = 0xC026258D; + // + // MessageId: + // ERROR_GRAPHICS_DDCCI_CURRENT_CURRENT_VALUE_GREATER_THAN_MAXIMUM_VALUE + // + // MessageText: + // + // A continuous VCP code's current value is greater than its maximum value. + // This error code indicates that a monitor returned an invalid value. + // + int ERROR_GRAPHICS_DDCCI_CURRENT_CURRENT_VALUE_GREATER_THAN_MAXIMUM_VALUE = 0xC02625D8; + // + // MessageId: ERROR_GRAPHICS_MCA_INVALID_VCP_VERSION + // + // MessageText: + // + // The monitor's VCP Version (0xDF) VCP code returned an invalid version + // value. + // + int ERROR_GRAPHICS_MCA_INVALID_VCP_VERSION = 0xC02625D9; + // + // MessageId: ERROR_GRAPHICS_MCA_MONITOR_VIOLATES_MCCS_SPECIFICATION + // + // MessageText: + // + // The monitor does not comply with the MCCS specification it claims to + // support. + // + int ERROR_GRAPHICS_MCA_MONITOR_VIOLATES_MCCS_SPECIFICATION = 0xC02625DA; + // + // MessageId: ERROR_GRAPHICS_MCA_MCCS_VERSION_MISMATCH + // + // MessageText: + // + // The MCCS version in a monitor's mccs_ver capability does not match the + // MCCS version the monitor reports when the VCP Version (0xDF) VCP code is + // used. + // + int ERROR_GRAPHICS_MCA_MCCS_VERSION_MISMATCH = 0xC02625DB; + // + // MessageId: ERROR_GRAPHICS_MCA_UNSUPPORTED_MCCS_VERSION + // + // MessageText: + // + // The Monitor Configuration API only works with monitors which support the + // MCCS=1.0 specification, MCCS=2.0 specification or the MCCS=2.0 Revision=1 + // specification. + // + int ERROR_GRAPHICS_MCA_UNSUPPORTED_MCCS_VERSION = 0xC02625DC; + // + // MessageId: ERROR_GRAPHICS_MCA_INVALID_TECHNOLOGY_TYPE_RETURNED + // + // MessageText: + // + // The monitor returned an invalid monitor technology type. CRT, Plasma and + // LCD (TFT) are examples of monitor technology types. This error implies + // that the monitor violated the MCCS=2.0 or MCCS=2.0 Revision=1 + // specification. + // + int ERROR_GRAPHICS_MCA_INVALID_TECHNOLOGY_TYPE_RETURNED = 0xC02625DE; + // + // MessageId: ERROR_GRAPHICS_MCA_UNSUPPORTED_COLOR_TEMPERATURE + // + // MessageText: + // + // SetMonitorColorTemperature()'s caller passed a color temperature to it + // which the current monitor did not support. This error implies that the + // monitor violated the MCCS=2.0 or MCCS=2.0 Revision=1 specification. + // + int ERROR_GRAPHICS_MCA_UNSUPPORTED_COLOR_TEMPERATURE = 0xC02625DF; + // + // OPM, UAB, PVP and DDC/CI shared error codes {0x25E0..0x25ff} + // + // + // MessageId: ERROR_GRAPHICS_ONLY_CONSOLE_SESSION_SUPPORTED + // + // MessageText: + // + // This function can only be used if a program is running in the local + // console session. It cannot be used if the program is running on a remote + // desktop session or on a terminal server session. + // + int ERROR_GRAPHICS_ONLY_CONSOLE_SESSION_SUPPORTED = 0xC02625E0; + // + // MessageId: ERROR_GRAPHICS_NO_DISPLAY_DEVICE_CORRESPONDS_TO_NAME + // + // MessageText: + // + // This function cannot find an actual GDI display device which corresponds + // to the specified GDI display device name. + // + int ERROR_GRAPHICS_NO_DISPLAY_DEVICE_CORRESPONDS_TO_NAME = 0xC02625E1; + // + // MessageId: ERROR_GRAPHICS_DISPLAY_DEVICE_NOT_ATTACHED_TO_DESKTOP + // + // MessageText: + // + // The function failed because the specified GDI display device was not + // attached to the Windows desktop. + // + int ERROR_GRAPHICS_DISPLAY_DEVICE_NOT_ATTACHED_TO_DESKTOP = 0xC02625E2; + // + // MessageId: ERROR_GRAPHICS_MIRRORING_DEVICES_NOT_SUPPORTED + // + // MessageText: + // + // This function does not support GDI mirroring display devices because GDI + // mirroring display devices do not have any physical monitors associated + // with them. + // + int ERROR_GRAPHICS_MIRRORING_DEVICES_NOT_SUPPORTED = 0xC02625E3; + // + // MessageId: ERROR_GRAPHICS_INVALID_POINTER + // + // MessageText: + // + // The function failed because an invalid pointer parameter was passed to + // it. A pointer parameter is invalid if it is NULL, points to an invalid + // address, points to a kernel mode address, or is not correctly aligned. + // + int ERROR_GRAPHICS_INVALID_POINTER = 0xC02625E4; + // + // MessageId: ERROR_GRAPHICS_NO_MONITORS_CORRESPOND_TO_DISPLAY_DEVICE + // + // MessageText: + // + // The function failed because the specified GDI device did not have any + // monitors associated with it. + // + int ERROR_GRAPHICS_NO_MONITORS_CORRESPOND_TO_DISPLAY_DEVICE = 0xC02625E5; + // + // MessageId: ERROR_GRAPHICS_PARAMETER_ARRAY_TOO_SMALL + // + // MessageText: + // + // An array passed to the function cannot hold all of the data that the + // function must copy into the array. + // + int ERROR_GRAPHICS_PARAMETER_ARRAY_TOO_SMALL = 0xC02625E6; + // + // MessageId: ERROR_GRAPHICS_INTERNAL_ERROR + // + // MessageText: + // + // An internal error caused an operation to fail. + // + int ERROR_GRAPHICS_INTERNAL_ERROR = 0xC02625E7; + // + // MessageId: ERROR_GRAPHICS_SESSION_TYPE_CHANGE_IN_PROGRESS + // + // MessageText: + // + // The function failed because the current session is changing its type. + // This function cannot be called when the current session is changing its + // type. There are currently three types of sessions: console, disconnected + // and remote (RDP or ICA). + // + int ERROR_GRAPHICS_SESSION_TYPE_CHANGE_IN_PROGRESS = 0xC02605E8; + // + // = + // TPM Services and TPM Software Error Messages + // = + // + // The TPM services and TPM software facilities are used by the various + // TPM software components. There are two facilities because the services + // errors are within the TCG-defined error space and the software errors + // are not. + // + // The following are the subranges within the TPM Services facility. + // The TPM hardware errors are defined in the document + // TPM Main Specification=1.2 Part=2 TPM Structures. + // The TBS errors are slotted into the TCG error namespace at the TBS layer. + // + // 0x0000 - 0x08ff TPM hardware errors + // 0x4000 - 0x40ff TPM Base Services errors (tbssvc.dl; + // + // The following are the subranges within the TPM Software facility. The TBS + // has two classes of errors - those that can be returned (the public + // errors, + // defined in the TBS spec), which are in the TPM services facility, and + // those that are internal or implementation specific, which are here in the + // TPM software facility. + // + // 0x0000 - 0x00ff TPM device driver errors (tpm.sys) + // 0x0100 - 0x01ff TPM API errors (tpmapi.lib) + // 0x0200 - 0x02ff TBS internal errors (tbssvc.dl; + // 0x0300 - 0x03ff TPM Physical Presence errors + // + // + // TPM hardware error codes {0x0000..0x08ff} + // This space is further subdivided into hardware errors, vendor-specific + // errors, and non-fatal errors. + // + // + // TPM hardware errors {0x0000..0x003ff} + // + // + // MessageId: TPM_E_ERROR_MASK + // + // MessageText: + // + // This is an error mask to convert TPM hardware errors to win errors. + // + int TPM_E_ERROR_MASK = 0x80280000; + // + // MessageId: TPM_E_AUTHFAIL + // + // MessageText: + // + // Authentication failed. + // + int TPM_E_AUTHFAIL = 0x80280001; + // + // MessageId: TPM_E_BADINDEX + // + // MessageText: + // + // The index to a PCR, DIR or other register is incorrect. + // + int TPM_E_BADINDEX = 0x80280002; + // + // MessageId: TPM_E_BAD_PARAMETER + // + // MessageText: + // + // One or more parameter is bad. + // + int TPM_E_BAD_PARAMETER = 0x80280003; + // + // MessageId: TPM_E_AUDITFAILURE + // + // MessageText: + // + // An operation completed successfully but the auditing of that operation + // failed. + // + int TPM_E_AUDITFAILURE = 0x80280004; + // + // MessageId: TPM_E_CLEAR_DISABLED + // + // MessageText: + // + // The clear disable F;ag is set and all clear operations now require + // physical access. + // + int TPM_E_CLEAR_DISABLED = 0x80280005; + // + // MessageId: TPM_E_DEACTIVATED + // + // MessageText: + // + // Activate the Trusted Platform Module (TPM). + // + int TPM_E_DEACTIVATED = 0x80280006; + // + // MessageId: TPM_E_DISABLED + // + // MessageText: + // + // Enable the Trusted Platform Module (TPM). + // + int TPM_E_DISABLED = 0x80280007; + // + // MessageId: TPM_E_DISABLED_CMD + // + // MessageText: + // + // The target command has been disabled. + // + int TPM_E_DISABLED_CMD = 0x80280008; + // + // MessageId: TPM_E_FAIL + // + // MessageText: + // + // The operation failed. + // + int TPM_E_FAIL = 0x80280009; + // + // MessageId: TPM_E_BAD_ORDINAL + // + // MessageText: + // + // The ordinal was unknown or inconsistent. + // + int TPM_E_BAD_ORDINAL = 0x8028000A; + // + // MessageId: TPM_E_INSTALL_DISABLED + // + // MessageText: + // + // The ability to install an owner is disabled. + // + int TPM_E_INSTALL_DISABLED = 0x8028000B; + // + // MessageId: TPM_E_INVALID_KEYHANDLE + // + // MessageText: + // + // The key handle cannot be intrepreted. + // + int TPM_E_INVALID_KEYHANDLE = 0x8028000C; + // + // MessageId: TPM_E_KEYNOTFOUND + // + // MessageText: + // + // The key handle points to an invalid key. + // + int TPM_E_KEYNOTFOUND = 0x8028000D; + // + // MessageId: TPM_E_INAPPROPRIATE_ENC + // + // MessageText: + // + // Unacceptable encryption scheme. + // + int TPM_E_INAPPROPRIATE_ENC = 0x8028000E; + // + // MessageId: TPM_E_MIGRATEFAIL + // + // MessageText: + // + // Migration authorization failed. + // + int TPM_E_MIGRATEFAIL = 0x8028000F; + // + // MessageId: TPM_E_INVALID_PCR_INFO + // + // MessageText: + // + // PCR information could not be interpreted. + // + int TPM_E_INVALID_PCR_INFO = 0x80280010; + // + // MessageId: TPM_E_NOSPACE + // + // MessageText: + // + // No room to load key. + // + int TPM_E_NOSPACE = 0x80280011; + // + // MessageId: TPM_E_NOSRK + // + // MessageText: + // + // There is no Storage Root Key (SRK) set. + // + int TPM_E_NOSRK = 0x80280012; + // + // MessageId: TPM_E_NOTSEALED_BLOB + // + // MessageText: + // + // An encrypted blob is invalid or was not created by this TPM. + // + int TPM_E_NOTSEALED_BLOB = 0x80280013; + // + // MessageId: TPM_E_OWNER_SET + // + // MessageText: + // + // The Trusted Platform Module (TPM) already has an owner. + // + int TPM_E_OWNER_SET = 0x80280014; + // + // MessageId: TPM_E_RESOURCES + // + // MessageText: + // + // The TPM has insufficient internal resources to perform the requested + // action. + // + int TPM_E_RESOURCES = 0x80280015; + // + // MessageId: TPM_E_SHORTRANDOM + // + // MessageText: + // + // A random string was too short. + // + int TPM_E_SHORTRANDOM = 0x80280016; + // + // MessageId: TPM_E_SIZE + // + // MessageText: + // + // The TPM does not have the space to perform the operation. + // + int TPM_E_SIZE = 0x80280017; + // + // MessageId: TPM_E_WRONGPCRVAL + // + // MessageText: + // + // The named PCR value does not match the current PCR value. + // + int TPM_E_WRONGPCRVAL = 0x80280018; + // + // MessageId: TPM_E_BAD_PARAM_SIZE + // + // MessageText: + // + // The paramSize argument to the command has the incorrect value . + // + int TPM_E_BAD_PARAM_SIZE = 0x80280019; + // + // MessageId: TPM_E_SHA_THREAD + // + // MessageText: + // + // There is no existing SHA-1 thread. + // + int TPM_E_SHA_THREAD = 0x8028001A; + // + // MessageId: TPM_E_SHA_ERROR + // + // MessageText: + // + // The calculation is unable to proceed because the existing SHA-1 thread + // has already encountered an error. + // + int TPM_E_SHA_ERROR = 0x8028001B; + // + // MessageId: TPM_E_FAILEDSELFTEST + // + // MessageText: + // + // Self-test has failed and the TPM has shutdown. + // + int TPM_E_FAILEDSELFTEST = 0x8028001C; + // + // MessageId: TPM_E_AUTH2FAIL + // + // MessageText: + // + // The authorization for the second key in a=2 key function failed + // authorization. + // + int TPM_E_AUTH2FAIL = 0x8028001D; + // + // MessageId: TPM_E_BADTAG + // + // MessageText: + // + // The tag value sent to for a command is invalid. + // + int TPM_E_BADTAG = 0x8028001E; + // + // MessageId: TPM_E_IOERROR + // + // MessageText: + // + // An IO error occurred transmitting information to the TPM. + // + int TPM_E_IOERROR = 0x8028001F; + // + // MessageId: TPM_E_ENCRYPT_ERROR + // + // MessageText: + // + // The encryption process had a problem. + // + int TPM_E_ENCRYPT_ERROR = 0x80280020; + // + // MessageId: TPM_E_DECRYPT_ERROR + // + // MessageText: + // + // The decryption process did not complete. + // + int TPM_E_DECRYPT_ERROR = 0x80280021; + // + // MessageId: TPM_E_INVALID_AUTHHANDLE + // + // MessageText: + // + // An invalid handle was used. + // + int TPM_E_INVALID_AUTHHANDLE = 0x80280022; + // + // MessageId: TPM_E_NO_ENDORSEMENT + // + // MessageText: + // + // The TPM does not have an Endorsement Key (EK) installed. + // + int TPM_E_NO_ENDORSEMENT = 0x80280023; + // + // MessageId: TPM_E_INVALID_KEYUSAGE + // + // MessageText: + // + // The usage of a key is not allowed. + // + int TPM_E_INVALID_KEYUSAGE = 0x80280024; + // + // MessageId: TPM_E_WRONG_ENTITYTYPE + // + // MessageText: + // + // The submitted entity type is not allowed. + // + int TPM_E_WRONG_ENTITYTYPE = 0x80280025; + // + // MessageId: TPM_E_INVALID_POSTINIT + // + // MessageText: + // + // The command was received in the wrong sequence relative to TPM_Init and a + // subsequent TPM_Startup. + // + int TPM_E_INVALID_POSTINIT = 0x80280026; + // + // MessageId: TPM_E_INAPPROPRIATE_SIG + // + // MessageText: + // + // Signed data cannot include additional DER information. + // + int TPM_E_INAPPROPRIATE_SIG = 0x80280027; + // + // MessageId: TPM_E_BAD_KEY_PROPERTY + // + // MessageText: + // + // The key properties in TPM_KEY_PARMs are not supported by this TPM. + // + int TPM_E_BAD_KEY_PROPERTY = 0x80280028; + // + // MessageId: TPM_E_BAD_MIGRATION + // + // MessageText: + // + // The migration properties of this key are incorrect. + // + int TPM_E_BAD_MIGRATION = 0x80280029; + // + // MessageId: TPM_E_BAD_SCHEME + // + // MessageText: + // + // The signature or encryption scheme for this key is incorrect or not + // permitted in this situation. + // + int TPM_E_BAD_SCHEME = 0x8028002A; + // + // MessageId: TPM_E_BAD_DATASIZE + // + // MessageText: + // + // The size of the data (or blob) parameter is bad or inconsistent with the + // referenced key. + // + int TPM_E_BAD_DATASIZE = 0x8028002B; + // + // MessageId: TPM_E_BAD_MODE + // + // MessageText: + // + // A mode parameter is bad, such as capArea or subCapArea for + // TPM_GetCapability, phsicalPresence parameter for TPM_PhysicalPresence, or + // migrationType for TPM_CreateMigrationBlob. + // + int TPM_E_BAD_MODE = 0x8028002C; + // + // MessageId: TPM_E_BAD_PRESENCE + // + // MessageText: + // + // Either the physicalPresence or physicalPresenceLock bits have the wrong + // value. + // + int TPM_E_BAD_PRESENCE = 0x8028002D; + // + // MessageId: TPM_E_BAD_VERSION + // + // MessageText: + // + // The TPM cannot perform this version of the capability. + // + int TPM_E_BAD_VERSION = 0x8028002E; + // + // MessageId: TPM_E_NO_WRAP_TRANSPORT + // + // MessageText: + // + // The TPM does not allow for wrapped transport sessions. + // + int TPM_E_NO_WRAP_TRANSPORT = 0x8028002F; + // + // MessageId: TPM_E_AUDITFAIL_UNSUCCESSFUL + // + // MessageText: + // + // TPM audit construction failed and the underlying command was returning a + // failure code also. + // + int TPM_E_AUDITFAIL_UNSUCCESSFUL = 0x80280030; + // + // MessageId: TPM_E_AUDITFAIL_SUCCESSFUL + // + // MessageText: + // + // TPM audit construction failed and the underlying command was returning + // success. + // + int TPM_E_AUDITFAIL_SUCCESSFUL = 0x80280031; + // + // MessageId: TPM_E_NOTRESETABLE + // + // MessageText: + // + // Attempt to reset a PCR register that does not have the resettable + // attribute. + // + int TPM_E_NOTRESETABLE = 0x80280032; + // + // MessageId: TPM_E_NOTLOCAL + // + // MessageText: + // + // Attempt to reset a PCR register that requires locality and locality + // modifier not part of command transport. + // + int TPM_E_NOTLOCAL = 0x80280033; + // + // MessageId: TPM_E_BAD_TYPE + // + // MessageText: + // + // Make identity blob not properly typed. + // + int TPM_E_BAD_TYPE = 0x80280034; + // + // MessageId: TPM_E_INVALID_RESOURCE + // + // MessageText: + // + // When saving context identified resource type does not match actual + // resource. + // + int TPM_E_INVALID_RESOURCE = 0x80280035; + // + // MessageId: TPM_E_NOTFIPS + // + // MessageText: + // + // The TPM is attempting to execute a command only available when in FIPS + // mode. + // + int TPM_E_NOTFIPS = 0x80280036; + // + // MessageId: TPM_E_INVALID_FAMILY + // + // MessageText: + // + // The command is attempting to use an invalid family ID. + // + int TPM_E_INVALID_FAMILY = 0x80280037; + // + // MessageId: TPM_E_NO_NV_PERMISSION + // + // MessageText: + // + // The permission to manipulate the NV storage is not available. + // + int TPM_E_NO_NV_PERMISSION = 0x80280038; + // + // MessageId: TPM_E_REQUIRES_SIGN + // + // MessageText: + // + // The operation requires a signed command. + // + int TPM_E_REQUIRES_SIGN = 0x80280039; + // + // MessageId: TPM_E_KEY_NOTSUPPORTED + // + // MessageText: + // + // Wrong operation to load an NV key. + // + int TPM_E_KEY_NOTSUPPORTED = 0x8028003A; + // + // MessageId: TPM_E_AUTH_CONF;ICT + // + // MessageText: + // + // NV_LoadKey blob requires both owner and blob authorization. + // + int TPM_E_AUTH_CONFLICT = 0x8028003B; + // + // MessageId: TPM_E_AREA_LOCKED + // + // MessageText: + // + // The NV area is locked and not writtable. + // + int TPM_E_AREA_LOCKED = 0x8028003C; + // + // MessageId: TPM_E_BAD_LOCALITY + // + // MessageText: + // + // The locality is incorrect for the attempted operation. + // + int TPM_E_BAD_LOCALITY = 0x8028003D; + // + // MessageId: TPM_E_READ_ONLY + // + // MessageText: + // + // The NV area is read only and can't be written to. + // + int TPM_E_READ_ONLY = 0x8028003E; + // + // MessageId: TPM_E_PER_NOWRITE + // + // MessageText: + // + // There is no protection on the write to the NV area. + // + int TPM_E_PER_NOWRITE = 0x8028003F; + // + // MessageId: TPM_E_FAMILYCOUNT + // + // MessageText: + // + // The family count value does not match. + // + int TPM_E_FAMILYCOUNT = 0x80280040; + // + // MessageId: TPM_E_WRITE_LOCKED + // + // MessageText: + // + // The NV area has already been written to. + // + int TPM_E_WRITE_LOCKED = 0x80280041; + // + // MessageId: TPM_E_BAD_ATTRIBUTES + // + // MessageText: + // + // The NV area attributes conFLIct. + // + int TPM_E_BAD_ATTRIBUTES = 0x80280042; + // + // MessageId: TPM_E_INVALID_STRUCTURE + // + // MessageText: + // + // The structure tag and version are invalid or inconsistent. + // + int TPM_E_INVALID_STRUCTURE = 0x80280043; + // + // MessageId: TPM_E_KEY_OWNER_CONTROL + // + // MessageText: + // + // The key is under control of the TPM Owner and can only be evicted by the + // TPM Owner. + // + int TPM_E_KEY_OWNER_CONTROL = 0x80280044; + // + // MessageId: TPM_E_BAD_COUNTER + // + // MessageText: + // + // The counter handle is incorrect. + // + int TPM_E_BAD_COUNTER = 0x80280045; + // + // MessageId: TPM_E_NOT_FULLWRITE + // + // MessageText: + // + // The write is not a complete write of the area. + // + int TPM_E_NOT_FULLWRITE = 0x80280046; + // + // MessageId: TPM_E_CONTEXT_GAP + // + // MessageText: + // + // The gap between saved context counts is too large. + // + int TPM_E_CONTEXT_GAP = 0x80280047; + // + // MessageId: TPM_E_MAXNVWRITES + // + // MessageText: + // + // The maximum number of NV writes without an owner has been exceeded. + // + int TPM_E_MAXNVWRITES = 0x80280048; + // + // MessageId: TPM_E_NOOPERATOR + // + // MessageText: + // + // No operator AuthData value is set. + // + int TPM_E_NOOPERATOR = 0x80280049; + // + // MessageId: TPM_E_RESOURCEMISSING + // + // MessageText: + // + // The resource pointed to by context is not loaded. + // + int TPM_E_RESOURCEMISSING = 0x8028004A; + // + // MessageId: TPM_E_DELEGATE_LOCK + // + // MessageText: + // + // The delegate administration is locked. + // + int TPM_E_DELEGATE_LOCK = 0x8028004B; + // + // MessageId: TPM_E_DELEGATE_FAMILY + // + // MessageText: + // + // Attempt to manage a family other then the delegated family. + // + int TPM_E_DELEGATE_FAMILY = 0x8028004C; + // + // MessageId: TPM_E_DELEGATE_ADMIN + // + // MessageText: + // + // Delegation table management not enabled. + // + int TPM_E_DELEGATE_ADMIN = 0x8028004D; + // + // MessageId: TPM_E_TRANSPORT_NOTEXCLUSIVE + // + // MessageText: + // + // There was a command executed outside of an exclusive transport session. + // + int TPM_E_TRANSPORT_NOTEXCLUSIVE = 0x8028004E; + // + // MessageId: TPM_E_OWNER_CONTROL + // + // MessageText: + // + // Attempt to context save a owner evict controlled key. + // + int TPM_E_OWNER_CONTROL = 0x8028004F; + // + // MessageId: TPM_E_DAA_RESOURCES + // + // MessageText: + // + // The DAA command has no resources availble to execute the command. + // + int TPM_E_DAA_RESOURCES = 0x80280050; + // + // MessageId: TPM_E_DAA_INPUT_DATA0 + // + // MessageText: + // + // The consistency check on DAA parameter inputData0 has failed. + // + int TPM_E_DAA_INPUT_DATA0 = 0x80280051; + // + // MessageId: TPM_E_DAA_INPUT_DATA1 + // + // MessageText: + // + // The consistency check on DAA parameter inputData1 has failed. + // + int TPM_E_DAA_INPUT_DATA1 = 0x80280052; + // + // MessageId: TPM_E_DAA_ISSUER_SETTINGS + // + // MessageText: + // + // The consistency check on DAA_issuerSettings has failed. + // + int TPM_E_DAA_ISSUER_SETTINGS = 0x80280053; + // + // MessageId: TPM_E_DAA_TPM_SETTINGS + // + // MessageText: + // + // The consistency check on DAA_tpmSpecific has failed. + // + int TPM_E_DAA_TPM_SETTINGS = 0x80280054; + // + // MessageId: TPM_E_DAA_STAGE + // + // MessageText: + // + // The atomic process indicated by the submitted DAA command is not the + // expected process. + // + int TPM_E_DAA_STAGE = 0x80280055; + // + // MessageId: TPM_E_DAA_ISSUER_VALIDITY + // + // MessageText: + // + // The issuer's validity check has detected an inconsistency. + // + int TPM_E_DAA_ISSUER_VALIDITY = 0x80280056; + // + // MessageId: TPM_E_DAA_WRONG_W + // + // MessageText: + // + // The consistency check on w has failed. + // + int TPM_E_DAA_WRONG_W = 0x80280057; + // + // MessageId: TPM_E_BAD_HANDLE + // + // MessageText: + // + // The handle is incorrect. + // + int TPM_E_BAD_HANDLE = 0x80280058; + // + // MessageId: TPM_E_BAD_DELEGATE + // + // MessageText: + // + // Delegation is not correct. + // + int TPM_E_BAD_DELEGATE = 0x80280059; + // + // MessageId: TPM_E_BADCONTEXT + // + // MessageText: + // + // The context blob is invalid. + // + int TPM_E_BADCONTEXT = 0x8028005A; + // + // MessageId: TPM_E_TOOMANYCONTEXTS + // + // MessageText: + // + // Too many contexts held by the TPM. + // + int TPM_E_TOOMANYCONTEXTS = 0x8028005B; + // + // MessageId: TPM_E_MA_TICKET_SIGNATURE + // + // MessageText: + // + // Migration authority signature validation failure. + // + int TPM_E_MA_TICKET_SIGNATURE = 0x8028005C; + // + // MessageId: TPM_E_MA_DESTINATION + // + // MessageText: + // + // Migration destination not authenticated. + // + int TPM_E_MA_DESTINATION = 0x8028005D; + // + // MessageId: TPM_E_MA_SOURCE + // + // MessageText: + // + // Migration source incorrect. + // + int TPM_E_MA_SOURCE = 0x8028005E; + // + // MessageId: TPM_E_MA_AUTHORITY + // + // MessageText: + // + // Incorrect migration authority. + // + int TPM_E_MA_AUTHORITY = 0x8028005F; + // + // MessageId: TPM_E_PERMANENTEK + // + // MessageText: + // + // Attempt to revoke the EK and the EK is not revocable. + // + int TPM_E_PERMANENTEK = 0x80280061; + // + // MessageId: TPM_E_BAD_SIGNATURE + // + // MessageText: + // + // Bad signature of CMK ticket. + // + int TPM_E_BAD_SIGNATURE = 0x80280062; + // + // MessageId: TPM_E_NOCONTEXTSPACE + // + // MessageText: + // + // There is no room in the context list for additional contexts. + // + int TPM_E_NOCONTEXTSPACE = 0x80280063; + // + // TPM vendor specific hardware errors {0x0400..0x04ff} + // + // + // MessageId: TPM_E_COMMAND_BLOCKED + // + // MessageText: + // + // The command was blocked. + // + int TPM_E_COMMAND_BLOCKED = 0x80280400; + // + // MessageId: TPM_E_INVALID_HANDLE + // + // MessageText: + // + // The specified handle was not found. + // + int TPM_E_INVALID_HANDLE = 0x80280401; + // + // MessageId: TPM_E_DUPLICATE_VHANDLE + // + // MessageText: + // + // The TPM returned a duplicate handle and the command needs to be + // resubmitted. + // + int TPM_E_DUPLICATE_VHANDLE = 0x80280402; + // + // MessageId: TPM_E_EMBEDDED_COMMAND_BLOCKED + // + // MessageText: + // + // The command within the transport was blocked. + // + int TPM_E_EMBEDDED_COMMAND_BLOCKED = 0x80280403; + // + // MessageId: TPM_E_EMBEDDED_COMMAND_UNSUPPORTED + // + // MessageText: + // + // The command within the transport is not supported. + // + int TPM_E_EMBEDDED_COMMAND_UNSUPPORTED = 0x80280404; + // + // TPM non-fatal hardware errors {0x0800..0x08ff} + // + // + // MessageId: TPM_E_RETRY + // + // MessageText: + // + // The TPM is too busy to respond to the command immediately, but the + // command could be resubmitted at a later time. + // + int TPM_E_RETRY = 0x80280800; + // + // MessageId: TPM_E_NEEDS_SELFTEST + // + // MessageText: + // + // SelfTestFull has not been run. + // + int TPM_E_NEEDS_SELFTEST = 0x80280801; + // + // MessageId: TPM_E_DOING_SELFTEST + // + // MessageText: + // + // The TPM is currently executing a full selftest. + // + int TPM_E_DOING_SELFTEST = 0x80280802; + // + // MessageId: TPM_E_DEFEND_LOCK_RUNNING + // + // MessageText: + // + // The TPM is defending against dictionary attacks and is in a time-out + // period. + // + int TPM_E_DEFEND_LOCK_RUNNING = 0x80280803; + // + // TPM Base Services error codes {0x4000..0x40ff} + // + // + // MessageId: TBS_E_INTERNAL_ERROR + // + // MessageText: + // + // An internal software error has been detected. + // + int TBS_E_INTERNAL_ERROR = 0x80284001; + // + // MessageId: TBS_E_BAD_PARAMETER + // + // MessageText: + // + // One or more input parameters is bad. + // + int TBS_E_BAD_PARAMETER = 0x80284002; + // + // MessageId: TBS_E_INVALID_OUTPUT_POINTER + // + // MessageText: + // + // A specified output pointer is bad. + // + int TBS_E_INVALID_OUTPUT_POINTER = 0x80284003; + // + // MessageId: TBS_E_INVALID_CONTEXT + // + // MessageText: + // + // The specified context handle does not refer to a valid context. + // + int TBS_E_INVALID_CONTEXT = 0x80284004; + // + // MessageId: TBS_E_INSUFFICIENT_BUFFER + // + // MessageText: + // + // A specified output buffer is too small. + // + int TBS_E_INSUFFICIENT_BUFFER = 0x80284005; + // + // MessageId: TBS_E_IOERROR + // + // MessageText: + // + // An error occurred while communicating with the TPM. + // + int TBS_E_IOERROR = 0x80284006; + // + // MessageId: TBS_E_INVALID_CONTEXT_PARAM + // + // MessageText: + // + // One or more context parameters is invalid. + // + int TBS_E_INVALID_CONTEXT_PARAM = 0x80284007; + // + // MessageId: TBS_E_SERVICE_NOT_RUNNING + // + // MessageText: + // + // The TBS service is not running and could not be started. + // + int TBS_E_SERVICE_NOT_RUNNING = 0x80284008; + // + // MessageId: TBS_E_TOO_MANY_TBS_CONTEXTS + // + // MessageText: + // + // A new context could not be created because there are too many open + // contexts. + // + int TBS_E_TOO_MANY_TBS_CONTEXTS = 0x80284009; + // + // MessageId: TBS_E_TOO_MANY_RESOURCES + // + // MessageText: + // + // A new virtual resource could not be created because there are too many + // open + // virtual resources. + // + int TBS_E_TOO_MANY_RESOURCES = 0x8028400A; + // + // MessageId: TBS_E_SERVICE_START_PENDING + // + // MessageText: + // + // The TBS service has been started but is not yet running. + // + int TBS_E_SERVICE_START_PENDING = 0x8028400B; + // + // MessageId: TBS_E_PPI_NOT_SUPPORTED + // + // MessageText: + // + // The physical presence interface is not supported. + // + int TBS_E_PPI_NOT_SUPPORTED = 0x8028400C; + // + // MessageId: TBS_E_COMMAND_CANCELED + // + // MessageText: + // + // The command was canceled. + // + int TBS_E_COMMAND_CANCELED = 0x8028400D; + // + // MessageId: TBS_E_BUFFER_TOO_LARGE + // + // MessageText: + // + // The input or output buffer is too large. + // + int TBS_E_BUFFER_TOO_LARGE = 0x8028400E; + // + // MessageId: TBS_E_TPM_NOT_FOUND + // + // MessageText: + // + // A compatible Trusted Platform Module (TPM) Security Device cannot be + // found on this computer. + // + int TBS_E_TPM_NOT_FOUND = 0x8028400F; + // + // MessageId: TBS_E_SERVICE_DISABLED + // + // MessageText: + // + // The TBS service has been disabled. + // + int TBS_E_SERVICE_DISABLED = 0x80284010; + // + // TPM API error codes {0x0100..0x01ff} + // + // + // MessageId: TPMAPI_E_INVALID_STATE + // + // MessageText: + // + // The command buffer is not in the correct state. + // + int TPMAPI_E_INVALID_STATE = 0x80290100; + // + // MessageId: TPMAPI_E_NOT_ENOUGH_DATA + // + // MessageText: + // + // The command buffer does not contain enough data to satisfy the request. + // + int TPMAPI_E_NOT_ENOUGH_DATA = 0x80290101; + // + // MessageId: TPMAPI_E_TOO_MUCH_DATA + // + // MessageText: + // + // The command buffer cannot contain any more data. + // + int TPMAPI_E_TOO_MUCH_DATA = 0x80290102; + // + // MessageId: TPMAPI_E_INVALID_OUTPUT_POINTER + // + // MessageText: + // + // One or more output parameters was NULL or invalid. + // + int TPMAPI_E_INVALID_OUTPUT_POINTER = 0x80290103; + // + // MessageId: TPMAPI_E_INVALID_PARAMETER + // + // MessageText: + // + // One or more input parameters is invalid. + // + int TPMAPI_E_INVALID_PARAMETER = 0x80290104; + // + // MessageId: TPMAPI_E_OUT_OF_MEMORY + // + // MessageText: + // + // Not enough memory was available to satisfy the request. + // + int TPMAPI_E_OUT_OF_MEMORY = 0x80290105; + // + // MessageId: TPMAPI_E_BUFFER_TOO_SMALL + // + // MessageText: + // + // The specified buffer was too small. + // + int TPMAPI_E_BUFFER_TOO_SMALL = 0x80290106; + // + // MessageId: TPMAPI_E_INTERNAL_ERROR + // + // MessageText: + // + // An internal error was detected. + // + int TPMAPI_E_INTERNAL_ERROR = 0x80290107; + // + // MessageId: TPMAPI_E_ACCESS_DENIED + // + // MessageText: + // + // The caller does not have the appropriate rights to perform the requested + // operation. + // + int TPMAPI_E_ACCESS_DENIED = 0x80290108; + // + // MessageId: TPMAPI_E_AUTHORIZATION_FAILED + // + // MessageText: + // + // The specified authorization information was invalid. + // + int TPMAPI_E_AUTHORIZATION_FAILED = 0x80290109; + // + // MessageId: TPMAPI_E_INVALID_CONTEXT_HANDLE + // + // MessageText: + // + // The specified context handle was not valid. + // + int TPMAPI_E_INVALID_CONTEXT_HANDLE = 0x8029010A; + // + // MessageId: TPMAPI_E_TBS_COMMUNICATION_ERROR + // + // MessageText: + // + // An error occurred while communicating with the TBS. + // + int TPMAPI_E_TBS_COMMUNICATION_ERROR = 0x8029010B; + // + // MessageId: TPMAPI_E_TPM_COMMAND_ERROR + // + // MessageText: + // + // The TPM returned an unexpected result. + // + int TPMAPI_E_TPM_COMMAND_ERROR = 0x8029010C; + // + // MessageId: TPMAPI_E_MESSAGE_TOO_LARGE + // + // MessageText: + // + // The message was too large for the encoding scheme. + // + int TPMAPI_E_MESSAGE_TOO_LARGE = 0x8029010D; + // + // MessageId: TPMAPI_E_INVALID_ENCODING + // + // MessageText: + // + // The encoding in the blob was not recognized. + // + int TPMAPI_E_INVALID_ENCODING = 0x8029010E; + // + // MessageId: TPMAPI_E_INVALID_KEY_SIZE + // + // MessageText: + // + // The key size is not valid. + // + int TPMAPI_E_INVALID_KEY_SIZE = 0x8029010F; + // + // MessageId: TPMAPI_E_ENCRYPTION_FAILED + // + // MessageText: + // + // The encryption operation failed. + // + int TPMAPI_E_ENCRYPTION_FAILED = 0x80290110; + // + // MessageId: TPMAPI_E_INVALID_KEY_PARAMS + // + // MessageText: + // + // The key parameters structure was not valid + // + int TPMAPI_E_INVALID_KEY_PARAMS = 0x80290111; + // + // MessageId: TPMAPI_E_INVALID_MIGRATION_AUTHORIZATION_BLOB + // + // MessageText: + // + // The requested supplied data does not appear to be a valid migration + // authorization blob. + // + int TPMAPI_E_INVALID_MIGRATION_AUTHORIZATION_BLOB = 0x80290112; + // + // MessageId: TPMAPI_E_INVALID_PCR_INDEX + // + // MessageText: + // + // The specified PCR index was invalid + // + int TPMAPI_E_INVALID_PCR_INDEX = 0x80290113; + // + // MessageId: TPMAPI_E_INVALID_DELEGATE_BLOB + // + // MessageText: + // + // The data given does not appear to be a valid delegate blob. + // + int TPMAPI_E_INVALID_DELEGATE_BLOB = 0x80290114; + // + // MessageId: TPMAPI_E_INVALID_CONTEXT_PARAMS + // + // MessageText: + // + // One or more of the specified context parameters was not valid. + // + int TPMAPI_E_INVALID_CONTEXT_PARAMS = 0x80290115; + // + // MessageId: TPMAPI_E_INVALID_KEY_BLOB + // + // MessageText: + // + // The data given does not appear to be a valid key blob + // + int TPMAPI_E_INVALID_KEY_BLOB = 0x80290116; + // + // MessageId: TPMAPI_E_INVALID_PCR_DATA + // + // MessageText: + // + // The specified PCR data was invalid. + // + int TPMAPI_E_INVALID_PCR_DATA = 0x80290117; + // + // MessageId: TPMAPI_E_INVALID_OWNER_AUTH + // + // MessageText: + // + // The format of the owner auth data was invalid. + // + int TPMAPI_E_INVALID_OWNER_AUTH = 0x80290118; + // + // MessageId: TPMAPI_E_FIPS_RNG_CHECK_FAILED + // + // MessageText: + // + // The random number generated did not pass FIPS RNG check. + // + int TPMAPI_E_FIPS_RNG_CHECK_FAILED = 0x80290119; + // + // TBS implementation error codes {0x0200..0x02ff} + // + // + // MessageId: TBSIMP_E_BUFFER_TOO_SMALL + // + // MessageText: + // + // The specified buffer was too small. + // + int TBSIMP_E_BUFFER_TOO_SMALL = 0x80290200; + // + // MessageId: TBSIMP_E_CLEANUP_FAILED + // + // MessageText: + // + // The context could not be cleaned up. + // + int TBSIMP_E_CLEANUP_FAILED = 0x80290201; + // + // MessageId: TBSIMP_E_INVALID_CONTEXT_HANDLE + // + // MessageText: + // + // The specified context handle is invalid. + // + int TBSIMP_E_INVALID_CONTEXT_HANDLE = 0x80290202; + // + // MessageId: TBSIMP_E_INVALID_CONTEXT_PARAM + // + // MessageText: + // + // An invalid context parameter was specified. + // + int TBSIMP_E_INVALID_CONTEXT_PARAM = 0x80290203; + // + // MessageId: TBSIMP_E_TPM_ERROR + // + // MessageText: + // + // An error occurred while communicating with the TPM + // + int TBSIMP_E_TPM_ERROR = 0x80290204; + // + // MessageId: TBSIMP_E_HASH_BAD_KEY + // + // MessageText: + // + // No entry with the specified key was found. + // + int TBSIMP_E_HASH_BAD_KEY = 0x80290205; + // + // MessageId: TBSIMP_E_DUPLICATE_VHANDLE + // + // MessageText: + // + // The specified virtual handle matches a virtual handle already in use. + // + int TBSIMP_E_DUPLICATE_VHANDLE = 0x80290206; + // + // MessageId: TBSIMP_E_INVALID_OUTPUT_POINTER + // + // MessageText: + // + // The pointer to the returned handle location was NULL or invalid + // + int TBSIMP_E_INVALID_OUTPUT_POINTER = 0x80290207; + // + // MessageId: TBSIMP_E_INVALID_PARAMETER + // + // MessageText: + // + // One or more parameters is invalid + // + int TBSIMP_E_INVALID_PARAMETER = 0x80290208; + // + // MessageId: TBSIMP_E_RPC_INIT_FAILED + // + // MessageText: + // + // The RPC subsystem could not be initialized. + // + int TBSIMP_E_RPC_INIT_FAILED = 0x80290209; + // + // MessageId: TBSIMP_E_SCHEDULER_NOT_RUNNING + // + // MessageText: + // + // The TBS scheduler is not running. + // + int TBSIMP_E_SCHEDULER_NOT_RUNNING = 0x8029020A; + // + // MessageId: TBSIMP_E_COMMAND_CANCELED + // + // MessageText: + // + // The command was canceled. + // + int TBSIMP_E_COMMAND_CANCELED = 0x8029020B; + // + // MessageId: TBSIMP_E_OUT_OF_MEMORY + // + // MessageText: + // + // There was not enough memory to fulfill the request + // + int TBSIMP_E_OUT_OF_MEMORY = 0x8029020C; + // + // MessageId: TBSIMP_E_LIST_NO_MORE_ITEMS + // + // MessageText: + // + // The specified list is empty, or the iteration has reached the end of the + // list. + // + int TBSIMP_E_LIST_NO_MORE_ITEMS = 0x8029020D; + // + // MessageId: TBSIMP_E_LIST_NOT_FOUND + // + // MessageText: + // + // The specified item was not found in the list. + // + int TBSIMP_E_LIST_NOT_FOUND = 0x8029020E; + // + // MessageId: TBSIMP_E_NOT_ENOUGH_SPACE + // + // MessageText: + // + // The TPM does not have enough space to load the requested resource. + // + int TBSIMP_E_NOT_ENOUGH_SPACE = 0x8029020F; + // + // MessageId: TBSIMP_E_NOT_ENOUGH_TPM_CONTEXTS + // + // MessageText: + // + // There are too many TPM contexts in use. + // + int TBSIMP_E_NOT_ENOUGH_TPM_CONTEXTS = 0x80290210; + // + // MessageId: TBSIMP_E_COMMAND_FAILED + // + // MessageText: + // + // The TPM command failed. + // + int TBSIMP_E_COMMAND_FAILED = 0x80290211; + // + // MessageId: TBSIMP_E_UNKNOWN_ORDINAL + // + // MessageText: + // + // The TBS does not recognize the specified ordinal. + // + int TBSIMP_E_UNKNOWN_ORDINAL = 0x80290212; + // + // MessageId: TBSIMP_E_RESOURCE_EXPIRED + // + // MessageText: + // + // The requested resource is no longer available. + // + int TBSIMP_E_RESOURCE_EXPIRED = 0x80290213; + // + // MessageId: TBSIMP_E_INVALID_RESOURCE + // + // MessageText: + // + // The resource type did not match. + // + int TBSIMP_E_INVALID_RESOURCE = 0x80290214; + // + // MessageId: TBSIMP_E_NOTHING_TO_UNLOAD + // + // MessageText: + // + // No resources can be unloaded. + // + int TBSIMP_E_NOTHING_TO_UNLOAD = 0x80290215; + // + // MessageId: TBSIMP_E_HASH_TABLE_FULL + // + // MessageText: + // + // No new entries can be added to the hash table. + // + int TBSIMP_E_HASH_TABLE_FULL = 0x80290216; + // + // MessageId: TBSIMP_E_TOO_MANY_TBS_CONTEXTS + // + // MessageText: + // + // A new TBS context could not be created because there are too many open + // contexts. + // + int TBSIMP_E_TOO_MANY_TBS_CONTEXTS = 0x80290217; + // + // MessageId: TBSIMP_E_TOO_MANY_RESOURCES + // + // MessageText: + // + // A new virtual resource could not be created because there are too many + // open virtual resources. + // + int TBSIMP_E_TOO_MANY_RESOURCES = 0x80290218; + // + // MessageId: TBSIMP_E_PPI_NOT_SUPPORTED + // + // MessageText: + // + // The physical presence interface is not supported. + // + int TBSIMP_E_PPI_NOT_SUPPORTED = 0x80290219; + // + // MessageId: TBSIMP_E_TPM_INCOMPATIBLE + // + // MessageText: + // + // TBS is not compatible with the version of TPM found on the system. + // + int TBSIMP_E_TPM_INCOMPATIBLE = 0x8029021A; + // + // TPM Physical Presence implementation error codes {0x0300..0x03ff} + // + // + // MessageId: TPM_E_PPI_ACPI_FAILURE + // + // MessageText: + // + // A general error was detected when attempting to acquire the BIOS's + // response to a Physical Presence command. + // + int TPM_E_PPI_ACPI_FAILURE = 0x80290300; + // + // MessageId: TPM_E_PPI_USER_ABORT + // + // MessageText: + // + // The user failed to confirm the TPM operation request. + // + int TPM_E_PPI_USER_ABORT = 0x80290301; + // + // MessageId: TPM_E_PPI_BIOS_FAILURE + // + // MessageText: + // + // The BIOS failure prevented the successful execution of the requested TPM + // operation (e.g. invalid TPM operation request, BIOS communication error + // with the TPM). + // + int TPM_E_PPI_BIOS_FAILURE = 0x80290302; + // + // MessageId: TPM_E_PPI_NOT_SUPPORTED + // + // MessageText: + // + // The BIOS does not support the physical presence interface. + // + int TPM_E_PPI_NOT_SUPPORTED = 0x80290303; + // + // == + // Facility Performance Logs & Alerts (PLA) Error Messages + // == + // + // + // MessageId: PLA_E_DCS_NOT_FOUND + // + // MessageText: + // + // Data Collector Set was not found. + // + int PLA_E_DCS_NOT_FOUND = 0x80300002; + // + // MessageId: PLA_E_DCS_IN_USE + // + // MessageText: + // + // The Data Collector Set or one of its dependencies is already in use. + // + int PLA_E_DCS_IN_USE = 0x803000AA; + // + // MessageId: PLA_E_TOO_MANY_FOLDERS + // + // MessageText: + // + // Unable to start Data Collector Set because there are too many folders. + // + int PLA_E_TOO_MANY_FOLDERS = 0x80300045; + // + // MessageId: PLA_E_NO_MIN_DISK + // + // MessageText: + // + // Not enough free disk space to start Data Collector Set. + // + int PLA_E_NO_MIN_DISK = 0x80300070; + // + // MessageId: PLA_E_DCS_ALREADY_EXISTS + // + // MessageText: + // + // Data Collector Set already exists. + // + int PLA_E_DCS_ALREADY_EXISTS = 0x803000B7; + // + // MessageId: PLA_S_PROPERTY_IGNORED + // + // MessageText: + // + // Property value will be ignored. + // + int PLA_S_PROPERTY_IGNORED = 0x00300100; + // + // MessageId: PLA_E_PROPERTY_CONFLICT + // + // MessageText: + // + // Property value conFLIct. + // + int PLA_E_PROPERTY_CONFLICT = 0x80300101; + // + // MessageId: PLA_E_DCS_SINGLETON_REQUIRED + // + // MessageText: + // + // The current configuration for this Data Collector Set requires that it + // contain exactly one Data Collector. + // + int PLA_E_DCS_SINGLETON_REQUIRED = 0x80300102; + // + // MessageId: PLA_E_CREDENTIALS_REQUIRED + // + // MessageText: + // + // A user account is required in order to commit the current Data Collector + // Set properties. + // + int PLA_E_CREDENTIALS_REQUIRED = 0x80300103; + // + // MessageId: PLA_E_DCS_NOT_RUNNING + // + // MessageText: + // + // Data Collector Set is not running. + // + int PLA_E_DCS_NOT_RUNNING = 0x80300104; + // + // MessageId: PLA_E_CONFLICT_INCL_EXCL_API + // + // MessageText: + // + // A conFLIct was detected in the list of include/exclude APIs. Do not + // specify the same API in both the include list and the exclude list. + // + int PLA_E_CONFLICT_INCL_EXCL_API = 0x80300105; + // + // MessageId: PLA_E_NETWORK_EXE_NOT_VALID + // + // MessageText: + // + // The executable path you have specified refers to a network share or UNC + // path. + // + int PLA_E_NETWORK_EXE_NOT_VALID = 0x80300106; + // + // MessageId: PLA_E_EXE_ALREADY_CONFIGURED + // + // MessageText: + // + // The executable path you have specified is already configured for API + // tracing. + // + int PLA_E_EXE_ALREADY_CONFIGURED = 0x80300107; + // + // MessageId: PLA_E_EXE_PATH_NOT_VALID + // + // MessageText: + // + // The executable path you have specified does not exist. Verify that the + // specified path is correct. + // + int PLA_E_EXE_PATH_NOT_VALID = 0x80300108; + // + // MessageId: PLA_E_DC_ALREADY_EXISTS + // + // MessageText: + // + // Data Collector already exists. + // + int PLA_E_DC_ALREADY_EXISTS = 0x80300109; + // + // MessageId: PLA_E_DCS_START_WAIT_TIMEOUT + // + // MessageText: + // + // The wait for the Data Collector Set start notification has timed out. + // + int PLA_E_DCS_START_WAIT_TIMEOUT = 0x8030010A; + // + // MessageId: PLA_E_DC_START_WAIT_TIMEOUT + // + // MessageText: + // + // The wait for the Data Collector to start has timed out. + // + int PLA_E_DC_START_WAIT_TIMEOUT = 0x8030010B; + // + // MessageId: PLA_E_REPORT_WAIT_TIMEOUT + // + // MessageText: + // + // The wait for the report generation tool to finish has timed out. + // + int PLA_E_REPORT_WAIT_TIMEOUT = 0x8030010C; + // + // MessageId: PLA_E_NO_DUPLICATES + // + // MessageText: + // + // Duplicate items are not allowed. + // + int PLA_E_NO_DUPLICATES = 0x8030010D; + // + // MessageId: PLA_E_EXE_FULL_PATH_REQUIRED + // + // MessageText: + // + // When specifying the executable that you want to trace, you must specify a + // full path to the executable and not just a filename. + // + int PLA_E_EXE_FULL_PATH_REQUIRED = 0x8030010E; + // + // MessageId: PLA_E_INVALID_SESSION_NAME + // + // MessageText: + // + // The session name provided is invalid. + // + int PLA_E_INVALID_SESSION_NAME = 0x8030010F; + // + // MessageId: PLA_E_PLA_CHANNEL_NOT_ENABLED + // + // MessageText: + // + // The Event Log channel Microsoft-Windows-Diagnosis-PLA/Operational must be + // enabled to perform this operation. + // + int PLA_E_PLA_CHANNEL_NOT_ENABLED = 0x80300110; + // + // MessageId: PLA_E_TASKSCHED_CHANNEL_NOT_ENABLED + // + // MessageText: + // + // The Event Log channel Microsoft-Windows-TaskScheduler must be enabled to + // perform this operation. + // + int PLA_E_TASKSCHED_CHANNEL_NOT_ENABLED = 0x80300111; + // + // MessageId: PLA_E_RULES_MANAGER_FAILED + // + // MessageText: + // + // The execution of the Rules Manager failed. + // + int PLA_E_RULES_MANAGER_FAILED = 0x80300112; + // + // MessageId: PLA_E_CABAPI_FAILURE + // + // MessageText: + // + // An error occured while attemption to compress or extract the data. + // + int PLA_E_CABAPI_FAILURE = 0x80300113; + // + // == + // Full Volume Encryption Error Messages + // == + // + // + // MessageId: FVE_E_LOCKED_VOLUME + // + // MessageText: + // + // This volume is locked by BitLocker Drive Encryption. Return to the + // control panel to unlock volume. + // + int FVE_E_LOCKED_VOLUME = 0x80310000; + // + // MessageId: FVE_E_NOT_ENCRYPTED + // + // MessageText: + // + // The volume is not encrypted, no key is available. + // + int FVE_E_NOT_ENCRYPTED = 0x80310001; + // + // MessageId: FVE_E_NO_TPM_BIOS + // + // MessageText: + // + // The BIOS did not correctly communicate with the TPM. Contact the computer + // manufacturer for BIOS upgrade instructions. + // + int FVE_E_NO_TPM_BIOS = 0x80310002; + // + // MessageId: FVE_E_NO_MBR_METRIC + // + // MessageText: + // + // The BIOS did not correctly communicate with the Master Boot Record (MBR). + // Contact the computer manufacturer for BIOS upgrade instructions. + // + int FVE_E_NO_MBR_METRIC = 0x80310003; + // + // MessageId: FVE_E_NO_BOOTSECTOR_METRIC + // + // MessageText: + // + // If there is a bootable CD or DVD in your computer, remove it, restart the + // computer and turn on BitLocker again. If the problem persists contact the + // computer manufacturer for BIOS upgrade instructions. + // + int FVE_E_NO_BOOTSECTOR_METRIC = 0x80310004; + // + // MessageId: FVE_E_NO_BOOTMGR_METRIC + // + // MessageText: + // + // You have an incompatible boot sector. Update the boot manager (BOOTMGR). + // + int FVE_E_NO_BOOTMGR_METRIC = 0x80310005; + // + // MessageId: FVE_E_WRONG_BOOTMGR + // + // MessageText: + // + // You have an incompatible boot manager. Update the boot manager (BOOTMGR). + // + int FVE_E_WRONG_BOOTMGR = 0x80310006; + // + // MessageId: FVE_E_SECURE_KEY_REQUIRED + // + // MessageText: + // + // No secure key protector has been defined. + // + int FVE_E_SECURE_KEY_REQUIRED = 0x80310007; + // + // MessageId: FVE_E_NOT_ACTIVATED + // + // MessageText: + // + // BitLocker Drive Encryption is not enabled on this volume. Turn on + // BitLocker. + // + int FVE_E_NOT_ACTIVATED = 0x80310008; + // + // MessageId: FVE_E_ACTION_NOT_ALLOWED + // + // MessageText: + // + // BitLocker Drive Encryption could not perform requested action. This + // condition may occur when two requests are issued at the same time. + // + int FVE_E_ACTION_NOT_ALLOWED = 0x80310009; + // + // MessageId: FVE_E_AD_SCHEMA_NOT_INSTALLED + // + // MessageText: + // + // The Active Directory Domain Services forest does not contain the required + // attributes and classes to host BitLocker Drive Encryption or Trusted + // Platform Module information. + // + int FVE_E_AD_SCHEMA_NOT_INSTALLED = 0x8031000A; + // + // MessageId: FVE_E_AD_INVALID_DATATYPE + // + // MessageText: + // + // The type of the data obtained from Active Directory was not expected. + // + int FVE_E_AD_INVALID_DATATYPE = 0x8031000B; + // + // MessageId: FVE_E_AD_INVALID_DATASIZE + // + // MessageText: + // + // The size of the data obtained from Active Directory was not expected. + // + int FVE_E_AD_INVALID_DATASIZE = 0x8031000C; + // + // MessageId: FVE_E_AD_NO_VALUES + // + // MessageText: + // + // The attribute read from Active Directory has no (zero) values. + // + int FVE_E_AD_NO_VALUES = 0x8031000D; + // + // MessageId: FVE_E_AD_ATTR_NOT_SET + // + // MessageText: + // + // The attribute was not set. + // + int FVE_E_AD_ATTR_NOT_SET = 0x8031000E; + // + // MessageId: FVE_E_AD_GUID_NOT_FOUND + // + // MessageText: + // + // The specified GUID could not be found. + // + int FVE_E_AD_GUID_NOT_FOUND = 0x8031000F; + // + // MessageId: FVE_E_BAD_INFORMATION + // + // MessageText: + // + // The control block for the encrypted volume is not valid. + // + int FVE_E_BAD_INFORMATION = 0x80310010; + // + // MessageId: FVE_E_TOO_SMALL + // + // MessageText: + // + // The volume cannot be encrypted because it does not have enough free + // space. + // + int FVE_E_TOO_SMALL = 0x80310011; + // + // MessageId: FVE_E_SYSTEM_VOLUME + // + // MessageText: + // + // The volume cannot be encrypted because it contains system boot + // information. + // + int FVE_E_SYSTEM_VOLUME = 0x80310012; + // + // MessageId: FVE_E_FAILED_WRONG_FS + // + // MessageText: + // + // The volume cannot be encrypted because the file system is not supported. + // + int FVE_E_FAILED_WRONG_FS = 0x80310013; + // + // MessageId: FVE_E_FAILED_BAD_FS + // + // MessageText: + // + // The file system is corrupt. Run CHKDSK. + // + int FVE_E_FAILED_BAD_FS = 0x80310014; + // + // MessageId: FVE_E_NOT_SUPPORTED + // + // MessageText: + // + // This volume cannot be encrypted. + // + int FVE_E_NOT_SUPPORTED = 0x80310015; + // + // MessageId: FVE_E_BAD_DATA + // + // MessageText: + // + // Data supplied is malformed. + // + int FVE_E_BAD_DATA = 0x80310016; + // + // MessageId: FVE_E_VOLUME_NOT_BOUND + // + // MessageText: + // + // Volume is not bound to the system. + // + int FVE_E_VOLUME_NOT_BOUND = 0x80310017; + // + // MessageId: FVE_E_TPM_NOT_OWNED + // + // MessageText: + // + // You must take ownership of the Trusted Platform Module (TPM). + // + int FVE_E_TPM_NOT_OWNED = 0x80310018; + // + // MessageId: FVE_E_NOT_DATA_VOLUME + // + // MessageText: + // + // The volume specified is not a data volume. + // + int FVE_E_NOT_DATA_VOLUME = 0x80310019; + // + // MessageId: FVE_E_AD_INSUFFICIENT_BUFFER + // + // MessageText: + // + // The buffer supplied to a function was insufficient to contain the + // returned data. + // + int FVE_E_AD_INSUFFICIENT_BUFFER = 0x8031001A; + // + // MessageId: FVE_E_CONV_READ + // + // MessageText: + // + // A read operation failed while converting the volume. + // + int FVE_E_CONV_READ = 0x8031001B; + // + // MessageId: FVE_E_CONV_WRITE + // + // MessageText: + // + // A write operation failed while converting the volume. + // + int FVE_E_CONV_WRITE = 0x8031001C; + // + // MessageId: FVE_E_KEY_REQUIRED + // + // MessageText: + // + // One or more key protectors are required for this volume. + // + int FVE_E_KEY_REQUIRED = 0x8031001D; + // + // MessageId: FVE_E_CLUSTERING_NOT_SUPPORTED + // + // MessageText: + // + // Cluster configurations are not supported. + // + int FVE_E_CLUSTERING_NOT_SUPPORTED = 0x8031001E; + // + // MessageId: FVE_E_VOLUME_BOUND_ALREADY + // + // MessageText: + // + // The volume is already bound to the system. + // + int FVE_E_VOLUME_BOUND_ALREADY = 0x8031001F; + // + // MessageId: FVE_E_OS_NOT_PROTECTED + // + // MessageText: + // + // The operating system volume is not protected by BitLocker Drive + // Encryption. + // + int FVE_E_OS_NOT_PROTECTED = 0x80310020; + // + // MessageId: FVE_E_PROTECTION_DISABLED + // + // MessageText: + // + // All protectors are effectively disabled (clear key exists). + // + int FVE_E_PROTECTION_DISABLED = 0x80310021; + // + // MessageId: FVE_E_RECOVERY_KEY_REQUIRED + // + // MessageText: + // + // A recovery key protector is required. + // + int FVE_E_RECOVERY_KEY_REQUIRED = 0x80310022; + // + // MessageId: FVE_E_FOREIGN_VOLUME + // + // MessageText: + // + // This volume cannot be bound to a TPM. + // + int FVE_E_FOREIGN_VOLUME = 0x80310023; + // + // MessageId: FVE_E_OVERLAPPED_UPDATE + // + // MessageText: + // + // The control block for the encrypted volume was updated by another thread. + // Try again. + // + int FVE_E_OVERLAPPED_UPDATE = 0x80310024; + // + // MessageId: FVE_E_TPM_SRK_AUTH_NOT_ZERO + // + // MessageText: + // + // The authorization data for the Storage Root Key (SRK) of the Trusted + // Platform Module (TPM) is not zero and is therefore incompatible with + // BitLocker. + // + int FVE_E_TPM_SRK_AUTH_NOT_ZERO = 0x80310025; + // + // MessageId: FVE_E_FAILED_SECTOR_SIZE + // + // MessageText: + // + // The volume encryption algorithm cannot be used on this sector size. + // + int FVE_E_FAILED_SECTOR_SIZE = 0x80310026; + // + // MessageId: FVE_E_FAILED_AUTHENTICATION + // + // MessageText: + // + // The recovery information provided does not match required recovery + // information to unlock the volume. Confirm the information and try again. + // + int FVE_E_FAILED_AUTHENTICATION = 0x80310027; + // + // MessageId: FVE_E_NOT_OS_VOLUME + // + // MessageText: + // + // The volume specified is not the operating system volume. + // + int FVE_E_NOT_OS_VOLUME = 0x80310028; + // + // MessageId: FVE_E_AUTOUNLOCK_ENABLED + // + // MessageText: + // + // BitLocker Drive Encryption cannot be turned off. Please turn off the auto + // unlock on all other volumes before turning off BitLocker on the current + // volume. + // + int FVE_E_AUTOUNLOCK_ENABLED = 0x80310029; + // + // MessageId: FVE_E_WRONG_BOOTSECTOR + // + // MessageText: + // + // The system partition boot sector does not perform TPM measurements. + // + int FVE_E_WRONG_BOOTSECTOR = 0x8031002A; + // + // MessageId: FVE_E_WRONG_SYSTEM_FS + // + // MessageText: + // + // BitLocker requires the file system to be NTFS. Convert the volume to + // NTFS, then enable BitLocker. + // + int FVE_E_WRONG_SYSTEM_FS = 0x8031002B; + // + // MessageId: FVE_E_POLICY_PASSWORD_REQUIRED + // + // MessageText: + // + // Group policy requires a recovery password before encryption may begin. + // + int FVE_E_POLICY_PASSWORD_REQUIRED = 0x8031002C; + // + // MessageId: FVE_E_CANNOT_SET_FVEK_ENCRYPTED + // + // MessageText: + // + // The volume encryption algorithm and key cannot be set on an encrypted + // volume. + // + int FVE_E_CANNOT_SET_FVEK_ENCRYPTED = 0x8031002D; + // + // MessageId: FVE_E_CANNOT_ENCRYPT_NO_KEY + // + // MessageText: + // + // A key must be specified before encryption may begin. + // + int FVE_E_CANNOT_ENCRYPT_NO_KEY = 0x8031002E; + // + // MessageId: FVE_E_BOOTABLE_CDDVD + // + // MessageText: + // + // BitLocker Drive Encryption detected bootable media (CD, DVD, or USB) in + // the computer. Remove the media and restart the computer. + // + int FVE_E_BOOTABLE_CDDVD = 0x80310030; + // + // MessageId: FVE_E_PROTECTOR_EXISTS + // + // MessageText: + // + // An instance of this key protector already exists on the volume. + // + int FVE_E_PROTECTOR_EXISTS = 0x80310031; + // + // MessageId: FVE_E_RELATIVE_PATH + // + // MessageText: + // + // The file cannot be saved to a relative path. + // + int FVE_E_RELATIVE_PATH = 0x80310032; + // + // MessageId: FVE_E_PROTECTOR_NOT_FOUND + // + // MessageText: + // + // The specified key protector was not found on the volume. Try another key + // protector. + // + int FVE_E_PROTECTOR_NOT_FOUND = 0x80310033; + // + // MessageId: FVE_E_INVALID_KEY_FORMAT + // + // MessageText: + // + // The recovery password file on the USB device is corrupt. Try another USB + // device. + // + int FVE_E_INVALID_KEY_FORMAT = 0x80310034; + // + // MessageId: FVE_E_INVALID_PASSWORD_FORMAT + // + // MessageText: + // + // The format of the recovery password file is invalid. Select another + // recovery password and try again. + // + int FVE_E_INVALID_PASSWORD_FORMAT = 0x80310035; + // + // MessageId: FVE_E_FIPS_RNG_CHECK_FAILED + // + // MessageText: + // + // The random number generator check test failed. + // + int FVE_E_FIPS_RNG_CHECK_FAILED = 0x80310036; + // + // MessageId: FVE_E_FIPS_PREVENTS_RECOVERY_PASSWORD + // + // MessageText: + // + // The group policy setting requiring FIPS compliance prevented the recovery + // password from being generated or used. Please contact your domain + // administrator for more information. + // + int FVE_E_FIPS_PREVENTS_RECOVERY_PASSWORD = 0x80310037; + // + // MessageId: FVE_E_FIPS_PREVENTS_EXTERNAL_KEY_EXPORT + // + // MessageText: + // + // The group policy setting requiring FIPS compliance prevented the recovery + // password from being saved. Please contact your domain administrator for + // more information. + // + int FVE_E_FIPS_PREVENTS_EXTERNAL_KEY_EXPORT = 0x80310038; + // + // MessageId: FVE_E_NOT_DECRYPTED + // + // MessageText: + // + // The volume must be fully decrypted to complete this operation. + // + int FVE_E_NOT_DECRYPTED = 0x80310039; + // + // MessageId: FVE_E_INVALID_PROTECTOR_TYPE + // + // MessageText: + // + // The specified key protector is not of the correct type. + // + int FVE_E_INVALID_PROTECTOR_TYPE = 0x8031003A; + // + // MessageId: FVE_E_NO_PROTECTORS_TO_TEST + // + // MessageText: + // + // No TPM protectors exist on the volume to perform the hardware test. + // + int FVE_E_NO_PROTECTORS_TO_TEST = 0x8031003B; + // + // MessageId: FVE_E_KEYFILE_NOT_FOUND + // + // MessageText: + // + // The BitLocker startup key or recovery password could not be read from the + // USB device. Ensure the USB device is plugged into the computer, then turn + // on BitLocker and try again. If the problem persists contact the computer + // manufacturer for BIOS upgrade instructions. + // + int FVE_E_KEYFILE_NOT_FOUND = 0x8031003C; + // + // MessageId: FVE_E_KEYFILE_INVALID + // + // MessageText: + // + // The BitLocker startup key or recovery password file is corrupt or + // invalid. + // + int FVE_E_KEYFILE_INVALID = 0x8031003D; + // + // MessageId: FVE_E_KEYFILE_NO_VMK + // + // MessageText: + // + // The BitLocker encryption key could not be obtained from the startup key + // or recovery password. + // + int FVE_E_KEYFILE_NO_VMK = 0x8031003E; + // + // MessageId: FVE_E_TPM_DISABLED + // + // MessageText: + // + // The Trusted Platform Module (TPM) is disabled. + // + int FVE_E_TPM_DISABLED = 0x8031003F; + // + // MessageId: FVE_E_NOT_ALLOWED_IN_SAFE_MODE + // + // MessageText: + // + // BitLocker Drive Encryption can only be used for recovery purposes in + // Safe-Mode. + // + int FVE_E_NOT_ALLOWED_IN_SAFE_MODE = 0x80310040; + // + // MessageId: FVE_E_TPM_INVALID_PCR + // + // MessageText: + // + // The Trusted Platform Module (TPM) was not able to unlock the volume + // because the system boot information changed. + // + int FVE_E_TPM_INVALID_PCR = 0x80310041; + // + // MessageId: FVE_E_TPM_NO_VMK + // + // MessageText: + // + // The BitLocker encryption key could not be obtained from the Trusted + // Platform Module (TPM). + // + int FVE_E_TPM_NO_VMK = 0x80310042; + // + // MessageId: FVE_E_PIN_INVALID + // + // MessageText: + // + // The BitLocker encryption key could not be obtained from the Trusted + // Platform Module (TPM) and PIN. + // + int FVE_E_PIN_INVALID = 0x80310043; + // + // MessageId: FVE_E_AUTH_INVALID_APPLICATION + // + // MessageText: + // + // A boot application has changed since BitLocker was enabled. + // + int FVE_E_AUTH_INVALID_APPLICATION = 0x80310044; + // + // MessageId: FVE_E_AUTH_INVALID_CONFIG + // + // MessageText: + // + // The Boot Configuration Data (BCD) settings have changed since BitLocker + // was enabled. + // + int FVE_E_AUTH_INVALID_CONFIG = 0x80310045; + // + // MessageId: FVE_E_FIPS_DISABLE_PROTECTION_NOT_ALLOWED + // + // MessageText: + // + // The group policy setting requiring FIPS compliance prevented BitLocker + // from being disabled. Please contact your domain administrator for more + // information. + // + int FVE_E_FIPS_DISABLE_PROTECTION_NOT_ALLOWED = 0x80310046; + // + // MessageId: FVE_E_FS_NOT_EXTENDED + // + // MessageText: + // + // The file system does not extend to the end of the volume. + // + int FVE_E_FS_NOT_EXTENDED = 0x80310047; + // + // MessageId: FVE_E_FIRMWARE_TYPE_NOT_SUPPORTED + // + // MessageText: + // + // BitLocker Drive Encryption cannot be enabled on this computer. Contact + // the computer manufacturer for BIOS upgrade instructions. + // + int FVE_E_FIRMWARE_TYPE_NOT_SUPPORTED = 0x80310048; + // + // MessageId: FVE_E_NO_LICENSE + // + // MessageText: + // + // This Windows license does not support BitLocker Drive Encryption. To use + // BitLocker Drive Encryption, please upgrade your Windows license. + // + int FVE_E_NO_LICENSE = 0x80310049; + // + // MessageId: FVE_E_NOT_ON_STACK + // + // MessageText: + // + // Critical BitLocker Drive Encryption system files are not available. Use + // Windows Startup Repair to restore files. + // + int FVE_E_NOT_ON_STACK = 0x8031004A; + // + // MessageId: FVE_E_FS_MOUNTED + // + // MessageText: + // + // This operation cannot be performed while the volume is in use. + // + int FVE_E_FS_MOUNTED = 0x8031004B; + // + // MessageId: FVE_E_TOKEN_NOT_IMPERSONATED + // + // MessageText: + // + // The access token associated with the current thread is not an + // impersonated token. + // + int FVE_E_TOKEN_NOT_IMPERSONATED = 0x8031004C; + // + // MessageId: FVE_E_DRY_RUN_FAILED + // + // MessageText: + // + // The BitLocker encryption key could not be obtained. + // + int FVE_E_DRY_RUN_FAILED = 0x8031004D; + // + // MessageId: FVE_E_REBOOT_REQUIRED + // + // MessageText: + // + // No action was taken as a system reboot is required. + // + int FVE_E_REBOOT_REQUIRED = 0x8031004E; + // + // MessageId: FVE_E_DEBUGGER_ENABLED + // + // MessageText: + // + // Boot debugging is enabled. Run bcdedit to turn it off. + // + int FVE_E_DEBUGGER_ENABLED = 0x8031004F; + // + // MessageId: FVE_E_RAW_ACCESS + // + // MessageText: + // + // No action was taken as BitLocker Drive Encryption is in raw access mode. + // + int FVE_E_RAW_ACCESS = 0x80310050; + // + // MessageId: FVE_E_RAW_BLOCKED + // + // MessageText: + // + // BitLocker Drive Encryption cannot enter raw access mode for this volume. + // + int FVE_E_RAW_BLOCKED = 0x80310051; + // + // MessageId: FVE_E_BCD_APPLICATIONS_PATH_INCORRECT + // + // MessageText: + // + // The path specified in the Boot Configuration Data (BCD) for a BitLocker + // Drive Encryption integrity-protected application is incorrect. Please + // verify and correct your BCD settings and try again. + // + int FVE_E_BCD_APPLICATIONS_PATH_INCORRECT = 0x80310052; + // + // MessageId: FVE_E_NOT_ALLOWED_IN_VERSION + // + // MessageText: + // + // BitLocker Drive Encryption can only be used for recovery purposes in this + // version of Windows. + // + int FVE_E_NOT_ALLOWED_IN_VERSION = 0x80310053; + // + // == + // Windows Filtering Platform Error Messages + // == + // + // + // MessageId: FWP_E_CALLOUT_NOT_FOUND + // + // MessageText: + // + // The callout does not exist. + // + int FWP_E_CALLOUT_NOT_FOUND = 0x80320001; + // + // MessageId: FWP_E_CONDITION_NOT_FOUND + // + // MessageText: + // + // The filter condition does not exist. + // + int FWP_E_CONDITION_NOT_FOUND = 0x80320002; + // + // MessageId: FWP_E_FILTER_NOT_FOUND + // + // MessageText: + // + // The filter does not exist. + // + int FWP_E_FILTER_NOT_FOUND = 0x80320003; + // + // MessageId: FWP_E_LAYER_NOT_FOUND + // + // MessageText: + // + // The layer does not exist. + // + int FWP_E_LAYER_NOT_FOUND = 0x80320004; + // + // MessageId: FWP_E_PROVIDER_NOT_FOUND + // + // MessageText: + // + // The provider does not exist. + // + int FWP_E_PROVIDER_NOT_FOUND = 0x80320005; + // + // MessageId: FWP_E_PROVIDER_CONTEXT_NOT_FOUND + // + // MessageText: + // + // The provider context does not exist. + // + int FWP_E_PROVIDER_CONTEXT_NOT_FOUND = 0x80320006; + // + // MessageId: FWP_E_SUBLAYER_NOT_FOUND + // + // MessageText: + // + // The sublayer does not exist. + // + int FWP_E_SUBLAYER_NOT_FOUND = 0x80320007; + // + // MessageId: FWP_E_NOT_FOUND + // + // MessageText: + // + // The object does not exist. + // + int FWP_E_NOT_FOUND = 0x80320008; + // + // MessageId: FWP_E_ALREADY_EXISTS + // + // MessageText: + // + // An object with that GUID or LUID already exists. + // + int FWP_E_ALREADY_EXISTS = 0x80320009; + // + // MessageId: FWP_E_IN_USE + // + // MessageText: + // + // The object is referenced by other objects so cannot be deleted. + // + int FWP_E_IN_USE = 0x8032000A; + // + // MessageId: FWP_E_DYNAMIC_SESSION_IN_PROGRESS + // + // MessageText: + // + // The call is not allowed from within a dynamic session. + // + int FWP_E_DYNAMIC_SESSION_IN_PROGRESS = 0x8032000B; + // + // MessageId: FWP_E_WRONG_SESSION + // + // MessageText: + // + // The call was made from the wrong session so cannot be completed. + // + int FWP_E_WRONG_SESSION = 0x8032000C; + // + // MessageId: FWP_E_NO_TXN_IN_PROGRESS + // + // MessageText: + // + // The call must be made from within an explicit transaction. + // + int FWP_E_NO_TXN_IN_PROGRESS = 0x8032000D; + // + // MessageId: FWP_E_TXN_IN_PROGRESS + // + // MessageText: + // + // The call is not allowed from within an explicit transaction. + // + int FWP_E_TXN_IN_PROGRESS = 0x8032000E; + // + // MessageId: FWP_E_TXN_ABORTED + // + // MessageText: + // + // The explicit transaction has been forcibly cancelled. + // + int FWP_E_TXN_ABORTED = 0x8032000F; + // + // MessageId: FWP_E_SESSION_ABORTED + // + // MessageText: + // + // The session has been cancelled. + // + int FWP_E_SESSION_ABORTED = 0x80320010; + // + // MessageId: FWP_E_INCOMPATIBLE_TXN + // + // MessageText: + // + // The call is not allowed from within a read-only transaction. + // + int FWP_E_INCOMPATIBLE_TXN = 0x80320011; + // + // MessageId: FWP_E_TIMEOUT + // + // MessageText: + // + // The call timed out while waiting to acquire the transaction lock. + // + int FWP_E_TIMEOUT = 0x80320012; + // + // MessageId: FWP_E_NET_EVENTS_DISABLED + // + // MessageText: + // + // Collection of network diagnostic events is disabled. + // + int FWP_E_NET_EVENTS_DISABLED = 0x80320013; + // + // MessageId: FWP_E_INCOMPATIBLE_LAYER + // + // MessageText: + // + // The operation is not supported by the specified layer. + // + int FWP_E_INCOMPATIBLE_LAYER = 0x80320014; + // + // MessageId: FWP_E_KM_CLIENTS_ONLY + // + // MessageText: + // + // The call is allowed for kernel-mode callers only. + // + int FWP_E_KM_CLIENTS_ONLY = 0x80320015; + // + // MessageId: FWP_E_LIFETIME_MISMATCH + // + // MessageText: + // + // The call tried to associate two objects with incompatible lifetimes. + // + int FWP_E_LIFETIME_MISMATCH = 0x80320016; + // + // MessageId: FWP_E_BUILTIN_OBJECT + // + // MessageText: + // + // The object is built in so cannot be deleted. + // + int FWP_E_BUILTIN_OBJECT = 0x80320017; + // + // MessageId: FWP_E_TOO_MANY_CALLOUTS + // + // MessageText: + // + // The maximum number of callouts has been reached. + // + int FWP_E_TOO_MANY_CALLOUTS = 0x80320018; + // + // MessageId: FWP_E_NOTIFICATION_DROPPED + // + // MessageText: + // + // A notification could not be delivered because a message queue is at its + // maximum capacity. + // + int FWP_E_NOTIFICATION_DROPPED = 0x80320019; + // + // MessageId: FWP_E_TRAFFIC_MISMATCH + // + // MessageText: + // + // The traffic parameters do not match those for the security association + // context. + // + int FWP_E_TRAFFIC_MISMATCH = 0x8032001A; + // + // MessageId: FWP_E_INCOMPATIBLE_SA_STATE + // + // MessageText: + // + // The call is not allowed for the current security association state. + // + int FWP_E_INCOMPATIBLE_SA_STATE = 0x8032001B; + // + // MessageId: FWP_E_NULL_POINTER + // + // MessageText: + // + // A required pointer is null. + // + int FWP_E_NULL_POINTER = 0x8032001C; + // + // MessageId: FWP_E_INVALID_ENUMERATOR + // + // MessageText: + // + // An enumerator is not valid. + // + int FWP_E_INVALID_ENUMERATOR = 0x8032001D; + // + // MessageId: FWP_E_INVALID_F;AGS + // + // MessageText: + // + // The F;ags field contains an invalid value. + // + int FWP_E_INVALID_FLAGS = 0x8032001E; + // + // MessageId: FWP_E_INVALID_NET_MASK + // + // MessageText: + // + // A network mask is not valid. + // + int FWP_E_INVALID_NET_MASK = 0x8032001F; + // + // MessageId: FWP_E_INVALID_RANGE + // + // MessageText: + // + // An FWP_RANGE is not valid. + // + int FWP_E_INVALID_RANGE = 0x80320020; + // + // MessageId: FWP_E_INVALID_INTERVAL + // + // MessageText: + // + // The time interval is not valid. + // + int FWP_E_INVALID_INTERVAL = 0x80320021; + // + // MessageId: FWP_E_ZERO_LENGTH_ARRAY + // + // MessageText: + // + // An array that must contain at least one element is zero length. + // + int FWP_E_ZERO_LENGTH_ARRAY = 0x80320022; + // + // MessageId: FWP_E_NULL_DISPLAY_NAME + // + // MessageText: + // + // The displayData.name field cannot be null. + // + int FWP_E_NULL_DISPLAY_NAME = 0x80320023; + // + // MessageId: FWP_E_INVALID_ACTION_TYPE + // + // MessageText: + // + // The action type is not one of the allowed action types for a filter. + // + int FWP_E_INVALID_ACTION_TYPE = 0x80320024; + // + // MessageId: FWP_E_INVALID_WEIGHT + // + // MessageText: + // + // The filter weight is not valid. + // + int FWP_E_INVALID_WEIGHT = 0x80320025; + // + // MessageId: FWP_E_MATCH_TYPE_MISMATCH + // + // MessageText: + // + // A filter condition contains a match type that is not compatible with the + // operands. + // + int FWP_E_MATCH_TYPE_MISMATCH = 0x80320026; + // + // MessageId: FWP_E_TYPE_MISMATCH + // + // MessageText: + // + // An FWP_VALUE or FWPM_CONDITION_VALUE is of the wrong type. + // + int FWP_E_TYPE_MISMATCH = 0x80320027; + // + // MessageId: FWP_E_OUT_OF_BOUNDS + // + // MessageText: + // + // An integer value is outside the allowed range. + // + int FWP_E_OUT_OF_BOUNDS = 0x80320028; + // + // MessageId: FWP_E_RESERVED + // + // MessageText: + // + // A reserved field is non-zero. + // + int FWP_E_RESERVED = 0x80320029; + // + // MessageId: FWP_E_DUPLICATE_CONDITION + // + // MessageText: + // + // A filter cannot contain multiple conditions operating on a single field. + // + int FWP_E_DUPLICATE_CONDITION = 0x8032002A; + // + // MessageId: FWP_E_DUPLICATE_KEYMOD + // + // MessageText: + // + // A policy cannot contain the same keying module more than once. + // + int FWP_E_DUPLICATE_KEYMOD = 0x8032002B; + // + // MessageId: FWP_E_ACTION_INCOMPATIBLE_WITH_LAYER + // + // MessageText: + // + // The action type is not compatible with the layer. + // + int FWP_E_ACTION_INCOMPATIBLE_WITH_LAYER = 0x8032002C; + // + // MessageId: FWP_E_ACTION_INCOMPATIBLE_WITH_SUBLAYER + // + // MessageText: + // + // The action type is not compatible with the sublayer. + // + int FWP_E_ACTION_INCOMPATIBLE_WITH_SUBLAYER = 0x8032002D; + // + // MessageId: FWP_E_CONTEXT_INCOMPATIBLE_WITH_LAYER + // + // MessageText: + // + // The raw context or the provider context is not compatible with the layer. + // + int FWP_E_CONTEXT_INCOMPATIBLE_WITH_LAYER = 0x8032002E; + // + // MessageId: FWP_E_CONTEXT_INCOMPATIBLE_WITH_CALLOUT + // + // MessageText: + // + // The raw context or the provider context is not compatible with the + // callout. + // + int FWP_E_CONTEXT_INCOMPATIBLE_WITH_CALLOUT = 0x8032002F; + // + // MessageId: FWP_E_INCOMPATIBLE_AUTH_METHOD + // + // MessageText: + // + // The authentication method is not compatible with the policy type. + // + int FWP_E_INCOMPATIBLE_AUTH_METHOD = 0x80320030; + // + // MessageId: FWP_E_INCOMPATIBLE_DH_GROUP + // + // MessageText: + // + // The Diffie-Hellman group is not compatible with the policy type. + // + int FWP_E_INCOMPATIBLE_DH_GROUP = 0x80320031; + // + // MessageId: FWP_E_EM_NOT_SUPPORTED + // + // MessageText: + // + // An IKE policy cannot contain an Extended Mode policy. + // + int FWP_E_EM_NOT_SUPPORTED = 0x80320032; + // + // MessageId: FWP_E_NEVER_MATCH + // + // MessageText: + // + // The enumeration template or subscription will never match any objects. + // + int FWP_E_NEVER_MATCH = 0x80320033; + // + // MessageId: FWP_E_PROVIDER_CONTEXT_MISMATCH + // + // MessageText: + // + // The provider context is of the wrong type. + // + int FWP_E_PROVIDER_CONTEXT_MISMATCH = 0x80320034; + // + // MessageId: FWP_E_INVALID_PARAMETER + // + // MessageText: + // + // The parameter is incorrect. + // + int FWP_E_INVALID_PARAMETER = 0x80320035; + // + // MessageId: FWP_E_TOO_MANY_SUBLAYERS + // + // MessageText: + // + // The maximum number of sublayers has been reached. + // + int FWP_E_TOO_MANY_SUBLAYERS = 0x80320036; + // + // MessageId: FWP_E_CALLOUT_NOTIFICATION_FAILED + // + // MessageText: + // + // The notification function for a callout returned an error. + // + int FWP_E_CALLOUT_NOTIFICATION_FAILED = 0x80320037; + // + // MessageId: FWP_E_INVALID_AUTH_TRANSFORM + // + // MessageText: + // + // The IPsec authentication transform is not valid. + // + int FWP_E_INVALID_AUTH_TRANSFORM = 0x80320038; + // + // MessageId: FWP_E_INVALID_CIPHER_TRANSFORM + // + // MessageText: + // + // The IPsec cipher transform is not valid. + // + int FWP_E_INVALID_CIPHER_TRANSFORM = 0x80320039; + // + // NDIS error codes (ndis.sys) + // + // + // MessageId: ERROR_NDIS_INTERFACE_CLOSING + // + // MessageText: + // + // The binding to the network interface is being closed. + // + int ERROR_NDIS_INTERFACE_CLOSING = 0x80340002; + // + // MessageId: ERROR_NDIS_BAD_VERSION + // + // MessageText: + // + // An invalid version was specified. + // + int ERROR_NDIS_BAD_VERSION = 0x80340004; + // + // MessageId: ERROR_NDIS_BAD_CHARACTERISTICS + // + // MessageText: + // + // An invalid characteristics table was used. + // + int ERROR_NDIS_BAD_CHARACTERISTICS = 0x80340005; + // + // MessageId: ERROR_NDIS_ADAPTER_NOT_FOUND + // + // MessageText: + // + // Failed to find the network interface or network interface is not ready. + // + int ERROR_NDIS_ADAPTER_NOT_FOUND = 0x80340006; + // + // MessageId: ERROR_NDIS_OPEN_FAILED + // + // MessageText: + // + // Failed to open the network interface. + // + int ERROR_NDIS_OPEN_FAILED = 0x80340007; + // + // MessageId: ERROR_NDIS_DEVICE_FAILED + // + // MessageText: + // + // Network interface has encountered an internal unrecoverable failure. + // + int ERROR_NDIS_DEVICE_FAILED = 0x80340008; + // + // MessageId: ERROR_NDIS_MULTICAST_FULL + // + // MessageText: + // + // The multicast list on the network interface is full. + // + int ERROR_NDIS_MULTICAST_FULL = 0x80340009; + // + // MessageId: ERROR_NDIS_MULTICAST_EXISTS + // + // MessageText: + // + // An attempt was made to add a duplicate multicast address to the list. + // + int ERROR_NDIS_MULTICAST_EXISTS = 0x8034000A; + // + // MessageId: ERROR_NDIS_MULTICAST_NOT_FOUND + // + // MessageText: + // + // At attempt was made to remove a multicast address that was never added. + // + int ERROR_NDIS_MULTICAST_NOT_FOUND = 0x8034000B; + // + // MessageId: ERROR_NDIS_REQUEST_ABORTED + // + // MessageText: + // + // Netowork interface aborted the request. + // + int ERROR_NDIS_REQUEST_ABORTED = 0x8034000C; + // + // MessageId: ERROR_NDIS_RESET_IN_PROGRESS + // + // MessageText: + // + // Network interface can not process the request because it is being reset. + // + int ERROR_NDIS_RESET_IN_PROGRESS = 0x8034000D; + // + // MessageId: ERROR_NDIS_NOT_SUPPORTED + // + // MessageText: + // + // Netword interface does not support this request. + // + int ERROR_NDIS_NOT_SUPPORTED = 0x803400BB; + // + // MessageId: ERROR_NDIS_INVALID_PACKET + // + // MessageText: + // + // An attempt was made to send an invalid packet on a network interface. + // + int ERROR_NDIS_INVALID_PACKET = 0x8034000F; + // + // MessageId: ERROR_NDIS_ADAPTER_NOT_READY + // + // MessageText: + // + // Network interface is not ready to complete this operation. + // + int ERROR_NDIS_ADAPTER_NOT_READY = 0x80340011; + // + // MessageId: ERROR_NDIS_INVALID_LENGTH + // + // MessageText: + // + // The length of the buffer submitted for this operation is not valid. + // + int ERROR_NDIS_INVALID_LENGTH = 0x80340014; + // + // MessageId: ERROR_NDIS_INVALID_DATA + // + // MessageText: + // + // The data used for this operation is not valid. + // + int ERROR_NDIS_INVALID_DATA = 0x80340015; + // + // MessageId: ERROR_NDIS_BUFFER_TOO_SHORT + // + // MessageText: + // + // The length of buffer submitted for this operation is too small. + // + int ERROR_NDIS_BUFFER_TOO_SHORT = 0x80340016; + // + // MessageId: ERROR_NDIS_INVALID_OID + // + // MessageText: + // + // Network interface does not support this OID (Object Identifier) + // + int ERROR_NDIS_INVALID_OID = 0x80340017; + // + // MessageId: ERROR_NDIS_ADAPTER_REMOVED + // + // MessageText: + // + // The network interface has been removed. + // + int ERROR_NDIS_ADAPTER_REMOVED = 0x80340018; + // + // MessageId: ERROR_NDIS_UNSUPPORTED_MEDIA + // + // MessageText: + // + // Network interface does not support this media type. + // + int ERROR_NDIS_UNSUPPORTED_MEDIA = 0x80340019; + // + // MessageId: ERROR_NDIS_GROUP_ADDRESS_IN_USE + // + // MessageText: + // + // An attempt was made to remove a token ring group address that is in use + // by other components. + // + int ERROR_NDIS_GROUP_ADDRESS_IN_USE = 0x8034001A; + // + // MessageId: ERROR_NDIS_FILE_NOT_FOUND + // + // MessageText: + // + // An attempt was made to map a file that can not be found. + // + int ERROR_NDIS_FILE_NOT_FOUND = 0x8034001B; + // + // MessageId: ERROR_NDIS_ERROR_READING_FILE + // + // MessageText: + // + // An error occured while NDIS tried to map the file. + // + int ERROR_NDIS_ERROR_READING_FILE = 0x8034001C; + // + // MessageId: ERROR_NDIS_ALREADY_MAPPED + // + // MessageText: + // + // An attempt was made to map a file that is alreay mapped. + // + int ERROR_NDIS_ALREADY_MAPPED = 0x8034001D; + // + // MessageId: ERROR_NDIS_RESOURCE_CONFLICT + // + // MessageText: + // + // An attempt to allocate a hardware resource failed because the resource is + // used by another component. + // + int ERROR_NDIS_RESOURCE_CONFLICT = 0x8034001E; + // + // MessageId: ERROR_NDIS_MEDIA_DISCONNECTED + // + // MessageText: + // + // The I/O operation failed because network media is disconnected or + // wireless access point is out of range. + // + int ERROR_NDIS_MEDIA_DISCONNECTED = 0x8034001F; + // + // MessageId: ERROR_NDIS_INVALID_ADDRESS + // + // MessageText: + // + // The network address used in the request is invalid. + // + int ERROR_NDIS_INVALID_ADDRESS = 0x80340022; + // + // MessageId: ERROR_NDIS_INVALID_DEVICE_REQUEST + // + // MessageText: + // + // The specified request is not a valid operation for the target device. + // + int ERROR_NDIS_INVALID_DEVICE_REQUEST = 0x80340010; + // + // MessageId: ERROR_NDIS_PAUSED + // + // MessageText: + // + // The ofF;oad operation on the network interface has been paused. + // + int ERROR_NDIS_PAUSED = 0x8034002A; + // + // MessageId: ERROR_NDIS_INTERFACE_NOT_FOUND + // + // MessageText: + // + // Network interface was not found. + // + int ERROR_NDIS_INTERFACE_NOT_FOUND = 0x8034002B; + // + // MessageId: ERROR_NDIS_UNSUPPORTED_REVISION + // + // MessageText: + // + // The revision number specified in the structure is not supported. + // + int ERROR_NDIS_UNSUPPORTED_REVISION = 0x8034002C; + // + // MessageId: ERROR_NDIS_INVALID_PORT + // + // MessageText: + // + // The specified port does not exist on this network interface. + // + int ERROR_NDIS_INVALID_PORT = 0x8034002D; + // + // MessageId: ERROR_NDIS_INVALID_PORT_STATE + // + // MessageText: + // + // The current state of the specified port on this network interface does + // not support the requested operation. + // + int ERROR_NDIS_INVALID_PORT_STATE = 0x8034002E; + // + // MessageId: ERROR_NDIS_LOW_POWER_STATE + // + // MessageText: + // + // The miniport adapter is in low power state. + // + int ERROR_NDIS_LOW_POWER_STATE = 0x8034002F; + // + // NDIS error codes (802.11 wireless LAN) + // + // + // MessageId: ERROR_NDIS_DOT11_AUTO_CONFIG_ENABLED + // + // MessageText: + // + // The wireless local area network interface is in auto configuration mode + // and doesn't support the requested parameter change operation. + // + int ERROR_NDIS_DOT11_AUTO_CONFIG_ENABLED = 0x80342000; + // + // MessageId: ERROR_NDIS_DOT11_MEDIA_IN_USE + // + // MessageText: + // + // The wireless local area network interface is busy and can not perform the + // requested operation. + // + int ERROR_NDIS_DOT11_MEDIA_IN_USE = 0x80342001; + // + // MessageId: ERROR_NDIS_DOT11_POWER_STATE_INVALID + // + // MessageText: + // + // The wireless local area network interface is power down and doesn't + // support the requested operation. + // + int ERROR_NDIS_DOT11_POWER_STATE_INVALID = 0x80342002; + // + // NDIS informational code (ndis.sys) + // + // + // MessageId: ERROR_NDIS_INDICATION_REQUIRED + // + // MessageText: + // + // The request will be completed later by NDIS status indication. + // + int ERROR_NDIS_INDICATION_REQUIRED = 0x00340001; +} diff --git a/src/com/jpexs/javactivex/jna/WinGDI.java b/src/com/jpexs/javactivex/jna/WinGDI.java new file mode 100644 index 0000000..f40e12f --- /dev/null +++ b/src/com/jpexs/javactivex/jna/WinGDI.java @@ -0,0 +1,122 @@ +package com.jpexs.javactivex.jna; + +import com.sun.jna.Structure; +import com.jpexs.javactivex.jna.WinDef.RECT; +import com.sun.jna.win32.StdCallLibrary; +import java.util.Arrays; +import java.util.List; + +/** + * Ported from WinGDI.h. Microsoft Windows SDK 6.0A. + * + * @author dblock[at]dblock.org + */ +public interface WinGDI extends StdCallLibrary { + + public int RDH_RECTANGLES = 1; + + public class RGNDATAHEADER extends Structure { + + public int dwSize = size(); + public int iType = RDH_RECTANGLES; // required + public int nCount; + public int nRgnSize; + public RECT rcBound; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"dwSize", "iType", "nCount", "nRgnSize", "rcBound"}); + } + } + + public class RGNDATA extends Structure { + + public RGNDATAHEADER rdh; + public byte[] Buffer; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"rdh", "Buffer"}); + } + + public RGNDATA() { + this(1); + } + + public RGNDATA(int bufferSize) { + Buffer = new byte[bufferSize]; + allocateMemory(); + } + } + public int RGN_AND = 1; + public int RGN_OR = 2; + public int RGN_XOR = 3; + public int RGN_DIFF = 4; + public int RGN_COPY = 5; + public int ERROR = 0; + public int NULLREGION = 1; + public int SIMPLEREGION = 2; + public int COMPLEXREGION = 3; + public int ALTERNATE = 1; + public int WINDING = 2; + public int BI_RGB = 0; + public int BI_RLE8 = 1; + public int BI_RLE4 = 2; + public int BI_BITFIELDS = 3; + public int BI_JPEG = 4; + public int BI_PNG = 5; + + public class BITMAPINFOHEADER extends Structure { + + public int biSize = size(); + public int biWidth; + public int biHeight; + public short biPlanes; + public short biBitCount; + public int biCompression; + public int biSizeImage; + public int biXPelsPerMeter; + public int biYPelsPerMeter; + public int biClrUsed; + public int biClrImportant; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"biSize", "biWidth", "biHeight", "biPlanes", "biBitCount", "biCompression", "biSizeImage", "biXPelsPerMeter", "biYPelsPerMeter", "biClrUsed", "biClrImportant"}); + } + } + + public class RGBQUAD extends Structure { + + public byte rgbBlue; + public byte rgbGreen; + public byte rgbRed; + public byte rgbReserved = 0; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"rgbBlue", "rgbGreen", "rgbRed", "rgbReserved"}); + } + } + + public class BITMAPINFO extends Structure { + + public BITMAPINFOHEADER bmiHeader = new BITMAPINFOHEADER(); + public RGBQUAD[] bmiColors = new RGBQUAD[1]; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"bmiHeader", "bmiColors"}); + } + + public BITMAPINFO() { + this(1); + } + + public BITMAPINFO(int size) { + bmiColors = new RGBQUAD[size]; + } + } + public int DIB_RGB_COLORS = 0; + public int DIB_PAL_COLORS = 1; +} diff --git a/src/com/jpexs/javactivex/jna/WinNT.java b/src/com/jpexs/javactivex/jna/WinNT.java new file mode 100644 index 0000000..c005234 --- /dev/null +++ b/src/com/jpexs/javactivex/jna/WinNT.java @@ -0,0 +1,1639 @@ +/* Copyright (c) 2007 Timothy Wall, All Rights Reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + */ +package com.jpexs.javactivex.jna; + +import com.sun.jna.FromNativeContext; +import com.sun.jna.Memory; +import com.sun.jna.NativeLong; +import com.sun.jna.Pointer; +import com.sun.jna.PointerType; +import com.sun.jna.Structure; +import com.sun.jna.Union; +import com.sun.jna.ptr.ByReference; +import java.util.Arrays; +import java.util.List; + +/** + * This module defines the 32-Bit Windows types and constants that are defined + * by NT, but exposed through the Win32 API. Ported from WinNT.h Microsoft + * Windows SDK 6.0A. Avoid including any NIO Buffer mappings here; put them in a + * DLL-derived interface (e.g. kernel32, user32, etc) instead. + * + * @author dblock[at]dblock.org + */ +@SuppressWarnings("serial") +public interface WinNT extends WinError, WinDef, WinBase, BaseTSD { + + // + // The following are masks for the predefined standard access types + // + int DELETE = 0x00010000; + int READ_CONTROL = 0x00020000; + int WRITE_DAC = 0x00040000; + int WRITE_OWNER = 0x00080000; + int SYNCHRONIZE = 0x00100000; + int STANDARD_RIGHTS_REQUIRED = 0x000F0000; + int STANDARD_RIGHTS_READ = READ_CONTROL; + int STANDARD_RIGHTS_WRITE = READ_CONTROL; + int STANDARD_RIGHTS_EXECUTE = READ_CONTROL; + int STANDARD_RIGHTS_ALL = 0x001F0000; + int SPECIFIC_RIGHTS_ALL = 0x0000FFFF; + // + // Token Specific Access Rights. + // + /** + * Required to attach a primary token to a process. The + * SE_ASSIGNPRIMARYTOKEN_NAME privilege is also required to accomplish this + * task. + */ + int TOKEN_ASSIGN_PRIMARY = 0x0001; + /** + * Required to duplicate an access token. + */ + int TOKEN_DUPLICATE = 0x0002; + /** + * Required to attach an impersonation access token to a process. + */ + int TOKEN_IMPERSONATE = 0x0004; + /** + * Required to query an access token. + */ + int TOKEN_QUERY = 0x0008; + /** + * Required to query the source of an access token. + */ + int TOKEN_QUERY_SOURCE = 0x0010; + /** + * Required to enable or disable the privileges in an access token. + */ + int TOKEN_ADJUST_PRIVILEGES = 0x0020; + /** + * Required to adjust the attributes of the groups in an access token. + */ + int TOKEN_ADJUST_GROUPS = 0x0040; + /** + * Required to change the default owner, primary group, or DACL of an access + * token. + */ + int TOKEN_ADJUST_DEFAULT = 0x0080; + /** + * Required to adjust the session ID of an access token. The SE_TCB_NAME + * privilege is required. + */ + int TOKEN_ADJUST_SESSIONID = 0x0100; + int TOKEN_ALL_ACCESS_P = STANDARD_RIGHTS_REQUIRED | TOKEN_ASSIGN_PRIMARY + | TOKEN_DUPLICATE | TOKEN_IMPERSONATE | TOKEN_QUERY + | TOKEN_QUERY_SOURCE | TOKEN_ADJUST_PRIVILEGES + | TOKEN_ADJUST_GROUPS | TOKEN_ADJUST_DEFAULT; + /** + * Combines all possible access rights for a token. + */ + int TOKEN_ALL_ACCESS = TOKEN_ALL_ACCESS_P | TOKEN_ADJUST_SESSIONID; + /** + * Combines STANDARD_RIGHTS_READ and TOKEN_QUERY. + */ + int TOKEN_READ = STANDARD_RIGHTS_READ | TOKEN_QUERY; + /** + * Combines STANDARD_RIGHTS_WRITE, TOKEN_ADJUST_PRIVILEGES, + * TOKEN_ADJUST_GROUPS, and TOKEN_ADJUST_DEFAULT. + */ + int TOKEN_WRITE = STANDARD_RIGHTS_WRITE | TOKEN_ADJUST_PRIVILEGES + | TOKEN_ADJUST_GROUPS | TOKEN_ADJUST_DEFAULT; + /** + * Combines STANDARD_RIGHTS_EXECUTE and TOKEN_IMPERSONATE. + */ + int TOKEN_EXECUTE = STANDARD_RIGHTS_EXECUTE; + int THREAD_TERMINATE = 0x0001; + int THREAD_SUSPEND_RESUME = 0x0002; + int THREAD_GET_CONTEXT = 0x0008; + int THREAD_SET_CONTEXT = 0x0010; + int THREAD_QUERY_INFORMATION = 0x0040; + int THREAD_SET_INFORMATION = 0x0020; + int THREAD_SET_THREAD_TOKEN = 0x0080; + int THREAD_IMPERSONATE = 0x0100; + int THREAD_DIRECT_IMPERSONATION = 0x0200; + int THREAD_SET_LIMITED_INFORMATION = 0x0400; + int THREAD_QUERY_LIMITED_INFORMATION = 0x0800; + int THREAD_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x3FF; + + /** + * The SECURITY_IMPERSONATION_LEVEL enumeration type contains values that + * specify security impersonation levels. Security impersonation levels + * govern the degree to which a server process can act on behalf of a client + * process. + */ + public abstract class SECURITY_IMPERSONATION_LEVEL { + + /** + * The server process cannot obtain identification information about the + * client, and it cannot impersonate the client. It is defined with no + * value given, and thus, by ANSI C rules, defaults to a value of zero. + */ + public static final int SecurityAnonymous = 0; + /** + * The server process can obtain information about the client, such as + * security identifiers and privileges, but it cannot impersonate the + * client. This is useful for servers that export their own objects, for + * example, database products that export tables and views. Using the + * retrieved client-security information, the server can make + * access-validation decisions without being able to use other services + * that are using the client's security context. + */ + public static final int SecurityIdentification = 1; + /** + * The server process can impersonate the client's security context on + * its local system. The server cannot impersonate the client on remote + * systems. + */ + public static final int SecurityImpersonation = 2; + /** + * The server process can impersonate the client's security context on + * remote systems. + */ + public static final int SecurityDelegation = 3; + } + + /** + * The TOKEN_INFORMATION_CLASS enumeration type contains values that specify + * the type of information being assigned to or retrieved from an access + * token. + */ + public abstract class TOKEN_INFORMATION_CLASS { + + public static final int TokenUser = 1; + public static final int TokenGroups = 2; + public static final int TokenPrivileges = 3; + public static final int TokenOwner = 4; + public static final int TokenPrimaryGroup = 5; + public static final int TokenDefaultDacl = 6; + public static final int TokenSource = 7; + public static final int TokenType = 8; + public static final int TokenImpersonationLevel = 9; + public static final int TokenStatistics = 10; + public static final int TokenRestrictedSids = 11; + public static final int TokenSessionId = 12; + public static final int TokenGroupsAndPrivileges = 13; + public static final int TokenSessionReference = 14; + public static final int TokenSandBoxInert = 15; + public static final int TokenAuditPolicy = 16; + public static final int TokenOrigin = 17; + public static final int TokenElevationType = 18; + public static final int TokenLinkedToken = 19; + public static final int TokenElevation = 20; + public static final int TokenHasRestrictions = 21; + public static final int TokenAccessInformation = 22; + public static final int TokenVirtualizationAllowed = 23; + public static final int TokenVirtualizationEnabled = 24; + public static final int TokenIntegrityLevel = 25; + public static final int TokenUIAccess = 26; + public static final int TokenMandatoryPolicy = 27; + public static final int TokenLogonSid = 28; + } + + /** + * The TOKEN_TYPE enumeration type contains values that differentiate + * between a primary token and an impersonation token. + */ + public abstract class TOKEN_TYPE { + + public static final int TokenPrimary = 1; + public static final int TokenImpersonation = 2; + } + + /** + * The LUID_AND_ATTRIBUTES structure represents a locally unique identifier + * (LUID) and its attributes. + */ + public static class LUID_AND_ATTRIBUTES extends Structure { + + /** + * Specifies an LUID value. + */ + public LUID Luid; + /** + * Specifies attributes of the LUID. This value contains up to 32 + * one-bit flags. Its meaning is dependent on the definition and use of + * the LUID. + */ + public DWORD Attributes; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"Luid", "Attributes"}); + } + + public LUID_AND_ATTRIBUTES() { + } + + public LUID_AND_ATTRIBUTES(LUID luid, DWORD attributes) { + this.Luid = luid; + this.Attributes = attributes; + } + } + + /** + * The TOKEN_PRIVILEGES structure contains information about a set of + * privileges for an access token. + */ + public static class TOKEN_PRIVILEGES extends Structure { + + /** + * This must be set to the number of entries in the Privileges array. + */ + public DWORD PrivilegeCount; + /** + * Specifies an array of LUID_AND_ATTRIBUTES structures. Each structure + * contains the LUID and attributes of a privilege. + */ + public LUID_AND_ATTRIBUTES[] Privileges; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"PrivilegeCount", "Privileges"}); + } + + /** + * Creates an empty instance with no privileges. + */ + public TOKEN_PRIVILEGES() { + this(0); + } + + /** + * @param nbOfPrivileges Desired size of the Privileges array + */ + public TOKEN_PRIVILEGES(int nbOfPrivileges) { + PrivilegeCount = new DWORD(nbOfPrivileges); + Privileges = new LUID_AND_ATTRIBUTES[nbOfPrivileges]; + } + + /** + * Initialize a TOKEN_PRIVILEGES instance from initialized memory. + * + * @param p + */ + public TOKEN_PRIVILEGES(Pointer p) { + super(p); + int count = p.getInt(0); + PrivilegeCount = new DWORD(count); + Privileges = new LUID_AND_ATTRIBUTES[count]; + read(); + } + } + + /** + * The SID_NAME_USE enumeration type contains values that specify the type + * of a security identifier (SID). + */ + public abstract class SID_NAME_USE { + + /** + * Indicates a user SID. + */ + public static final int SidTypeUser = 1; + /** + * Indicates a group SID. + */ + public static final int SidTypeGroup = 2; + /** + * Indicates a domain SID. + */ + public static final int SidTypeDomain = 3; + /** + * Indicates an alias SID. + */ + public static final int SidTypeAlias = 4; + /** + * Indicates a SID for a well-known group. + */ + public static final int SidTypeWellKnownGroup = 5; + /** + * Indicates a SID for a deleted account. + */ + public static final int SidTypeDeletedAccount = 6; + /** + * Indicates an invalid SID. + */ + public static final int SidTypeInvalid = 7; + /** + * Indicates an unknown SID type. + */ + public static final int SidTypeUnknown = 8; + /** + * Indicates a SID for a computer. + */ + public static final int SidTypeComputer = 9; + /** + * ? + */ + public static final int SidTypeLabel = 10; + } + + /* File access rights */ + int FILE_READ_DATA = 0x00000001; + int FILE_LIST_DIRECTORY = 0x00000001; + int FILE_WRITE_DATA = 0x00000002; + int FILE_ADD_FILE = 0x00000002; + int FILE_APPEND_DATA = 0x00000004; + int FILE_ADD_SUBDIRECTORY = 0x00000004; + int FILE_CREATE_PIPE_INSTANCE = 0x00000004; + int FILE_READ_EA = 0x00000008; + int FILE_WRITE_EA = 0x00000010; + int FILE_EXECUTE = 0x00000020; + int FILE_TRAVERSE = 0x00000020; + int FILE_DELETE_CHILD = 0x00000040; + int FILE_READ_ATTRIBUTES = 0x00000080; + int FILE_WRITE_ATTRIBUTES = 0x00000100; + int FILE_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x000001FF; + int FILE_GENERIC_READ = STANDARD_RIGHTS_READ | SYNCHRONIZE | FILE_READ_DATA + | FILE_READ_ATTRIBUTES | FILE_READ_EA; + int FILE_GENERIC_WRITE = STANDARD_RIGHTS_WRITE | SYNCHRONIZE + | FILE_WRITE_DATA | FILE_WRITE_ATTRIBUTES | FILE_WRITE_EA + | FILE_APPEND_DATA; + int FILE_GENERIC_EXECUTE = STANDARD_RIGHTS_EXECUTE | SYNCHRONIZE + | FILE_READ_ATTRIBUTES | FILE_EXECUTE; + int CREATE_NEW = 1; + int CREATE_ALWAYS = 2; + int OPEN_EXISTING = 3; + int OPEN_ALWAYS = 4; + int TRUNCATE_EXISTING = 5; + int FILE_FLAG_WRITE_THROUGH = 0x80000000; + int FILE_FLAG_OVERLAPPED = 0x40000000; + int FILE_FLAG_NO_BUFFERING = 0x20000000; + int FILE_FLAG_RANDOM_ACCESS = 0x10000000; + int FILE_FLAG_SEQUENTIAL_SCAN = 0x08000000; + int FILE_FLAG_DELETE_ON_CLOSE = 0x04000000; + int FILE_FLAG_BACKUP_SEMANTICS = 0x02000000; + int FILE_FLAG_POSIX_SEMANTICS = 0x01000000; + int FILE_FLAG_OPEN_REPARSE_POINT = 0x00200000; + int FILE_FLAG_OPEN_NO_RECALL = 0x00100000; + // + // These are the generic rights. + // + int GENERIC_READ = 0x80000000; + int GENERIC_WRITE = 0x40000000; + int GENERIC_EXECUTE = 0x20000000; + int GENERIC_ALL = 0x10000000; + // + // AccessSystemAcl access type + // + int ACCESS_SYSTEM_SECURITY = 0x01000000; + int PAGE_NOACCESS = 0x01; + int PAGE_READONLY = 0x02; + int PAGE_READWRITE = 0x04; + int PAGE_WRITECOPY = 0x08; + int PAGE_EXECUTE = 0x10; + int PAGE_EXECUTE_READ = 0x20; + int PAGE_EXECUTE_READWRITE = 0x40; + int PAGE_GUARD = 0x100; + int SECTION_QUERY = 0x0001; + int SECTION_MAP_WRITE = 0x0002; + int SECTION_MAP_READ = 0x0004; + int SECTION_MAP_EXECUTE = 0x0008; + int SECTION_EXTEND_SIZE = 0x0010; + int FILE_SHARE_READ = 0x00000001; + int FILE_SHARE_WRITE = 0x00000002; + int FILE_SHARE_DELETE = 0x00000004; + int FILE_TYPE_CHAR = 0x0002; + int FILE_TYPE_DISK = 0x0001; + int FILE_TYPE_PIPE = 0x0003; + int FILE_TYPE_REMOTE = 0x8000; + int FILE_TYPE_UNKNOWN = 0x0000; + int FILE_ATTRIBUTE_READONLY = 0x00000001; + int FILE_ATTRIBUTE_HIDDEN = 0x00000002; + int FILE_ATTRIBUTE_SYSTEM = 0x00000004; + int FILE_ATTRIBUTE_DIRECTORY = 0x00000010; + int FILE_ATTRIBUTE_ARCHIVE = 0x00000020; + int FILE_ATTRIBUTE_DEVICE = 0x00000040; + int FILE_ATTRIBUTE_NORMAL = 0x00000080; + int FILE_ATTRIBUTE_TEMPORARY = 0x00000100; + int FILE_ATTRIBUTE_SPARSE_FILE = 0x00000200; + int FILE_ATTRIBUTE_REPARSE_POINT = 0x00000400; + int FILE_ATTRIBUTE_COMPRESSED = 0x00000800; + int FILE_ATTRIBUTE_OFFLINE = 0x00001000; + int FILE_ATTRIBUTE_NOT_CONTENT_INDEXED = 0x00002000; + int FILE_ATTRIBUTE_ENCRYPTED = 0x00004000; + int FILE_ATTRIBUTE_VIRTUAL = 0x00010000; + int FILE_NOTIFY_CHANGE_FILE_NAME = 0x00000001; + int FILE_NOTIFY_CHANGE_DIR_NAME = 0x00000002; + int FILE_NOTIFY_CHANGE_NAME = 0x00000003; + int FILE_NOTIFY_CHANGE_ATTRIBUTES = 0x00000004; + int FILE_NOTIFY_CHANGE_SIZE = 0x00000008; + int FILE_NOTIFY_CHANGE_LAST_WRITE = 0x00000010; + int FILE_NOTIFY_CHANGE_LAST_ACCESS = 0x00000020; + int FILE_NOTIFY_CHANGE_CREATION = 0x00000040; + int FILE_NOTIFY_CHANGE_SECURITY = 0x00000100; + int FILE_ACTION_ADDED = 0x00000001; + int FILE_ACTION_REMOVED = 0x00000002; + int FILE_ACTION_MODIFIED = 0x00000003; + int FILE_ACTION_RENAMED_OLD_NAME = 0x00000004; + int FILE_ACTION_RENAMED_NEW_NAME = 0x00000005; + int FILE_CASE_SENSITIVE_SEARCH = 0x00000001; + int FILE_CASE_PRESERVED_NAMES = 0x00000002; + int FILE_UNICODE_ON_DISK = 0x00000004; + int FILE_PERSISTENT_ACLS = 0x00000008; + int FILE_FILE_COMPRESSION = 0x00000010; + int FILE_VOLUME_QUOTAS = 0x00000020; + int FILE_SUPPORTS_SPARSE_FILES = 0x00000040; + int FILE_SUPPORTS_REPARSE_POINTS = 0x00000080; + int FILE_SUPPORTS_REMOTE_STORAGE = 0x00000100; + int FILE_VOLUME_IS_COMPRESSED = 0x00008000; + int FILE_SUPPORTS_OBJECT_IDS = 0x00010000; + int FILE_SUPPORTS_ENCRYPTION = 0x00020000; + int FILE_NAMED_STREAMS = 0x00040000; + int FILE_READ_ONLY_VOLUME = 0x00080000; + int FILE_SEQUENTIAL_WRITE_ONCE = 0x00100000; + int FILE_SUPPORTS_TRANSACTIONS = 0x00200000; + + /** + * The FILE_NOTIFY_INFORMATION structure describes the changes found by the + * ReadDirectoryChangesW function. + * + * This structure is non-trivial since it is a pattern stamped into a large + * block of result memory rather than something that stands alone or is used + * for input. + */ + public static class FILE_NOTIFY_INFORMATION extends Structure { + + public int NextEntryOffset; + public int Action; + public int FileNameLength; + // filename is not nul-terminated, so we can't use a String/WString + public char[] FileName = new char[1]; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"NextEntryOffset", "Action", "FileNameLength", "FileName"}); + } + + private FILE_NOTIFY_INFORMATION() { + } + + public FILE_NOTIFY_INFORMATION(int size) { + if (size < size()) { + throw new IllegalArgumentException("Size must greater than " + + size() + ", requested " + size); + } + allocateMemory(size); + } + + /** + * WARNING: this filename may be either the short or long form of the + * filename. + * + * @return + */ + public String getFilename() { + return new String(FileName, 0, FileNameLength / 2); + } + + @Override + public void read() { + // avoid reading filename until we know how long it is + FileName = new char[0]; + super.read(); + FileName = getPointer().getCharArray(12, FileNameLength / 2); + } + + public FILE_NOTIFY_INFORMATION next() { + if (NextEntryOffset == 0) { + return null; + } + FILE_NOTIFY_INFORMATION next = new FILE_NOTIFY_INFORMATION(); + next.useMemory(getPointer(), NextEntryOffset); + next.read(); + return next; + } + } + /** + * Registry options. + */ + int KEY_QUERY_VALUE = 0x0001; + int KEY_SET_VALUE = 0x0002; + int KEY_CREATE_SUB_KEY = 0x0004; + int KEY_ENUMERATE_SUB_KEYS = 0x0008; + int KEY_NOTIFY = 0x0010; + int KEY_CREATE_LINK = 0x0020; + int KEY_WOW64_32KEY = 0x0200; + int KEY_WOW64_64KEY = 0x0100; + int KEY_WOW64_RES = 0x0300; + int KEY_READ = STANDARD_RIGHTS_READ | KEY_QUERY_VALUE + | KEY_ENUMERATE_SUB_KEYS | KEY_NOTIFY & (~SYNCHRONIZE); + int KEY_WRITE = STANDARD_RIGHTS_WRITE | KEY_SET_VALUE | KEY_CREATE_SUB_KEY + & (~SYNCHRONIZE); + int KEY_EXECUTE = KEY_READ & (~SYNCHRONIZE); + int KEY_ALL_ACCESS = STANDARD_RIGHTS_ALL | KEY_QUERY_VALUE | KEY_SET_VALUE + | KEY_CREATE_SUB_KEY | KEY_ENUMERATE_SUB_KEYS | KEY_NOTIFY + | KEY_CREATE_LINK & (~SYNCHRONIZE); + // + // Open/Create Options + // + /** + * Parameter is reserved. + */ + int REG_OPTION_RESERVED = 0x00000000; + /** + * Key is preserved when system is rebooted. + */ + int REG_OPTION_NON_VOLATILE = 0x00000000; + /** + * Key is not preserved when system is rebooted. + */ + int REG_OPTION_VOLATILE = 0x00000001; + /** + * Created key is a symbolic link. + */ + int REG_OPTION_CREATE_LINK = 0x00000002; + /** + * Open for backup or restore special access rules privilege required. + */ + int REG_OPTION_BACKUP_RESTORE = 0x00000004; + /** + * Open symbolic link. + */ + int REG_OPTION_OPEN_LINK = 0x00000008; + int REG_LEGAL_OPTION = REG_OPTION_RESERVED | REG_OPTION_NON_VOLATILE + | REG_OPTION_VOLATILE | REG_OPTION_CREATE_LINK + | REG_OPTION_BACKUP_RESTORE | REG_OPTION_OPEN_LINK; + // + // Key creation/open disposition + // + /** + * New Registry Key created. + */ + int REG_CREATED_NEW_KEY = 0x00000001; + /** + * Existing Key opened. + */ + int REG_OPENED_EXISTING_KEY = 0x00000002; + int REG_STANDARD_FORMAT = 1; + int REG_LATEST_FORMAT = 2; + int REG_NO_COMPRESSION = 4; + // + // Key restore & hive load flags + // + /** + * Restore whole hive volatile. + */ + int REG_WHOLE_HIVE_VOLATILE = 0x00000001; + /** + * Unwind changes to last flush. + */ + int REG_REFRESH_HIVE = 0x00000002; + /** + * Never lazy flush this hive. + */ + int REG_NO_LAZY_FLUSH = 0x00000004; + /** + * Force the restore process even when we have open handles on subkeys. + */ + int REG_FORCE_RESTORE = 0x00000008; + /** + * Loads the hive visible to the calling process. + */ + int REG_APP_HIVE = 0x00000010; + /** + * Hive cannot be mounted by any other process while in use. + */ + int REG_PROCESS_PRIVATE = 0x00000020; + /** + * Starts Hive Journal. + */ + int REG_START_JOURNAL = 0x00000040; + /** + * Grow hive file in exact 4k increments. + */ + int REG_HIVE_EXACT_FILE_GROWTH = 0x00000080; + /** + * No RM is started for this hive = no transactions. + */ + int REG_HIVE_NO_RM = 0x00000100; + /** + * Legacy single logging is used for this hive. + */ + int REG_HIVE_SINGLE_LOG = 0x00000200; + // + // Unload Flags + // + int REG_FORCE_UNLOAD = 1; + // + // Notify filter values + // + int REG_NOTIFY_CHANGE_NAME = 0x00000001; + int REG_NOTIFY_CHANGE_ATTRIBUTES = 0x00000002; + int REG_NOTIFY_CHANGE_LAST_SET = 0x00000004; + int REG_NOTIFY_CHANGE_SECURITY = 0x00000008; + int REG_LEGAL_CHANGE_FILTER = REG_NOTIFY_CHANGE_NAME + | REG_NOTIFY_CHANGE_ATTRIBUTES | REG_NOTIFY_CHANGE_LAST_SET + | REG_NOTIFY_CHANGE_SECURITY; + // + // Predefined Value Types. + // + /** + * No value type. + */ + int REG_NONE = 0; + /** + * Unicode null-terminated string. + */ + int REG_SZ = 1; + /** + * Unicode null-terminated string with environment variable references. + */ + int REG_EXPAND_SZ = 2; + /** + * Free-formed binary. + */ + int REG_BINARY = 3; + /** + * 32-bit number. + */ + int REG_DWORD = 4; + /** + * 32-bit number, same as REG_DWORD. + */ + int REG_DWORD_LITTLE_ENDIAN = 4; + /** + * 32-bit number. + */ + int REG_DWORD_BIG_ENDIAN = 5; + /** + * Symbolic link (unicode). + */ + int REG_LINK = 6; + /** + * Multiple unicode strings. + */ + int REG_MULTI_SZ = 7; + /** + * Resource list in the resource map. + */ + int REG_RESOURCE_LIST = 8; + /** + * Resource list in the hardware description. + */ + int REG_FULL_RESOURCE_DESCRIPTOR = 9; + /** + * + */ + int REG_RESOURCE_REQUIREMENTS_LIST = 10; + /** + * 64-bit number. + */ + int REG_QWORD = 11; + /** + * 64-bit number, same as REG_QWORD. + */ + int REG_QWORD_LITTLE_ENDIAN = 11; + + /** + * A 64-bit value that is guaranteed to be unique on the operating system + * that generated it until the system is restarted. + */ + public static class LUID extends Structure { + + public int LowPart; + public int HighPart; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"LowPart", "HighPart"}); + } + } + + /** + * A 64-bit integer; + */ + public static class LARGE_INTEGER extends Structure { + + public static class ByReference extends LARGE_INTEGER implements + Structure.ByReference { + } + + public static class LowHigh extends Structure { + + public DWORD LowPart; + public DWORD HighPart; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"LowPart", "HighPart"}); + } + } + + public static class UNION extends Union { + + public LowHigh lh; + public long value; + } + public UNION u; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"u"}); + } + + /** + * Low DWORD. + * + * @return DWORD. + */ + public DWORD getLow() { + return u.lh.LowPart; + } + + /** + * High DWORD. + * + * @return DWORD. + */ + public DWORD getHigh() { + return u.lh.HighPart; + } + + /** + * 64-bit value. + * + * @return 64-bit value. + */ + public long getValue() { + return u.value; + } + } + + /** + * Handle to an object. + */ + public static class HANDLE extends PointerType { + + private boolean immutable; + + public HANDLE() { + } + + public HANDLE(Pointer p) { + super(); + setPointer(p); + immutable = true; + } + + /** + * Override to the appropriate object for INVALID_HANDLE_VALUE. + * + * @param nativeValue + * @param context + * @return + */ + @Override + public Object fromNative(Object nativeValue, FromNativeContext context) { + Object o = super.fromNative(nativeValue, context); + if (WinBase.INVALID_HANDLE_VALUE.equals(o)) { + return WinBase.INVALID_HANDLE_VALUE; + } + return o; + } + + @Override + public void setPointer(Pointer p) { + if (immutable) { + throw new UnsupportedOperationException("immutable reference"); + } + + super.setPointer(p); + } + } + + /** + * LPHANDLE + */ + public static final class HANDLEByReference extends ByReference { + + public HANDLEByReference() { + this(null); + } + + public HANDLEByReference(HANDLE h) { + super(Pointer.SIZE); + setValue(h); + } + + public void setValue(HANDLE h) { + getPointer().setPointer(0, h != null ? h.getPointer() : null); + } + + public HANDLE getValue() { + Pointer p = getPointer().getPointer(0); + if (p == null) { + return null; + } + if (WinBase.INVALID_HANDLE_VALUE.getPointer().equals(p)) { + return WinBase.INVALID_HANDLE_VALUE; + } + HANDLE h = new HANDLE(); + h.setPointer(p); + return h; + } + } + + /** + * Return code used by interfaces. It is zero upon success and nonzero to + * represent an error code or status information. + */ + class HRESULT extends NativeLong { + + public HRESULT() { + } + + public HRESULT(int value) { + super(value); + } + } + + /** + * The WELL_KNOWN_SID_TYPE enumeration type is a list of commonly used + * security identifiers (SIDs). Programs can pass these values to the + * CreateWellKnownSid function to create a SID from this list. + */ + public abstract class WELL_KNOWN_SID_TYPE { + + /** + * Indicates a null SID. + */ + public static final int WinNullSid = 0; + /** + * Indicates a SID that matches everyone. + */ + public static final int WinWorldSid = 1; + /** + * Indicates a local SID. + */ + public static final int WinLocalSid = 2; + /** + * Indicates a SID that matches the owner or creator of an object. + */ + public static final int WinCreatorOwnerSid = 3; + /** + * Indicates a SID that matches the creator group of an object. + */ + public static final int WinCreatorGroupSid = 4; + /** + * Indicates a creator owner server SID. + */ + public static final int WinCreatorOwnerServerSid = 5; + /** + * Indicates a creator group server SID. + */ + public static final int WinCreatorGroupServerSid = 6; + /** + * Indicates a SID for the Windows NT authority. + */ + public static final int WinNtAuthoritySid = 7; + /** + * Indicates a SID for a dial-up account. + */ + public static final int WinDialupSid = 8; + /** + * Indicates a SID for a network account. This SID is added to the + * process of a token when it logs on across a network. The + * corresponding logon type is LOGON32_LOGON_NETWORK. + */ + public static final int WinNetworkSid = 9; + /** + * Indicates a SID for a batch process. This SID is added to the process + * of a token when it logs on as a batch job. The corresponding logon + * type is LOGON32_LOGON_BATCH. + */ + public static final int WinBatchSid = 10; + /** + * Indicates a SID for an interactive account. This SID is added to the + * process of a token when it logs on interactively. The corresponding + * logon type is LOGON32_LOGON_INTERACTIVE. + */ + public static final int WinInteractiveSid = 11; + /** + * Indicates a SID for a service. This SID is added to the process of a + * token when it logs on as a service. The corresponding logon type is + * LOGON32_LOGON_bSERVICE. + */ + public static final int WinServiceSid = 12; + /** + * Indicates a SID for the anonymous account. + */ + public static final int WinAnonymousSid = 13; + /** + * Indicates a proxy SID. + */ + public static final int WinProxySid = 14; + /** + * Indicates a SID for an enterprise controller. + */ + public static final int WinEnterpriseControllersSid = 15; + /** + * Indicates a SID for self. + */ + public static final int WinSelfSid = 16; + /** + * Indicates a SID that matches any authenticated user. + */ + public static final int WinAuthenticatedUserSid = 17; + /** + * Indicates a SID for restricted code. + */ + public static final int WinRestrictedCodeSid = 18; + /** + * Indicates a SID that matches a terminal server account. + */ + public static final int WinTerminalServerSid = 19; + /** + * Indicates a SID that matches remote logons. + */ + public static final int WinRemoteLogonIdSid = 20; + /** + * Indicates a SID that matches logon IDs. + */ + public static final int WinLogonIdsSid = 21; + /** + * Indicates a SID that matches the local system. + */ + public static final int WinLocalSystemSid = 22; + /** + * Indicates a SID that matches a local service. + */ + public static final int WinLocalServiceSid = 23; + /** + * Indicates a SID that matches a network service. + */ + public static final int WinNetworkServiceSid = 24; + /** + * Indicates a SID that matches the domain account. + */ + public static final int WinBuiltinDomainSid = 25; + /** + * Indicates a SID that matches the administrator account. + */ + public static final int WinBuiltinAdministratorsSid = 26; + /** + * Indicates a SID that matches built-in user accounts. + */ + public static final int WinBuiltinUsersSid = 27; + /** + * Indicates a SID that matches the guest account. + */ + public static final int WinBuiltinGuestsSid = 28; + /** + * Indicates a SID that matches the power users group. + */ + public static final int WinBuiltinPowerUsersSid = 29; + /** + * Indicates a SID that matches the account operators account. + */ + public static final int WinBuiltinAccountOperatorsSid = 30; + /** + * Indicates a SID that matches the system operators group. + */ + public static final int WinBuiltinSystemOperatorsSid = 31; + /** + * Indicates a SID that matches the print operators group. + */ + public static final int WinBuiltinPrintOperatorsSid = 32; + /** + * Indicates a SID that matches the backup operators group. + */ + public static final int WinBuiltinBackupOperatorsSid = 33; + /** + * Indicates a SID that matches the replicator account. + */ + public static final int WinBuiltinReplicatorSid = 34; + /** + * Indicates a SID that matches pre-Windows 2000 compatible accounts. + */ + public static final int WinBuiltinPreWindows2000CompatibleAccessSid = 35; + /** + * Indicates a SID that matches remote desktop users. + */ + public static final int WinBuiltinRemoteDesktopUsersSid = 36; + /** + * Indicates a SID that matches the network operators group. + */ + public static final int WinBuiltinNetworkConfigurationOperatorsSid = 37; + /** + * Indicates a SID that matches the account administrators group. + */ + public static final int WinAccountAdministratorSid = 38; + /** + * Indicates a SID that matches the account guest group. + */ + public static final int WinAccountGuestSid = 39; + /** + * Indicates a SID that matches account Kerberos target group. + */ + public static final int WinAccountKrbtgtSid = 40; + /** + * Indicates a SID that matches the account domain administrator group. + */ + public static final int WinAccountDomainAdminsSid = 41; + /** + * Indicates a SID that matches the account domain users group. + */ + public static final int WinAccountDomainUsersSid = 42; + /** + * Indicates a SID that matches the account domain guests group. + */ + public static final int WinAccountDomainGuestsSid = 43; + /** + * Indicates a SID that matches the account computer group. + */ + public static final int WinAccountComputersSid = 44; + /** + * Indicates a SID that matches the account controller group. + */ + public static final int WinAccountControllersSid = 45; + /** + * Indicates a SID that matches the certificate administrators group. + */ + public static final int WinAccountCertAdminsSid = 46; + /** + * Indicates a SID that matches the schema administrators group. + */ + public static final int WinAccountSchemaAdminsSid = 47; + /** + * Indicates a SID that matches the enterprise administrators group. + */ + public static final int WinAccountEnterpriseAdminsSid = 48; + /** + * Indicates a SID that matches the policy administrators group. + */ + public static final int WinAccountPolicyAdminsSid = 49; + /** + * Indicates a SID that matches the RAS and IAS server account. + */ + public static final int WinAccountRasAndIasServersSid = 50; + /** + * Indicates a SID present when the Microsoft NTLM authentication + * package authenticated the client. + */ + public static final int WinNTLMAuthenticationSid = 51; + /** + * Indicates a SID present when the Microsoft Digest authentication + * package authenticated the client. + */ + public static final int WinDigestAuthenticationSid = 52; + /** + * Indicates a SID present when the Secure Channel (SSL/TLS) + * authentication package authenticated the client. + */ + public static final int WinSChannelAuthenticationSid = 53; + /** + * Indicates a SID present when the user authenticated from within the + * forest or across a trust that does not have the selective + * authentication option enabled. If this SID is present, then + * WinOtherOrganizationSid cannot be present. + */ + public static final int WinThisOrganizationSid = 54; + /** + * Indicates a SID present when the user authenticated across a forest + * with the selective authentication option enabled. If this SID is + * present, then WinThisOrganizationSid cannot be present. + */ + public static final int WinOtherOrganizationSid = 55; + /** + * Indicates a SID that allows a user to create incoming forest trusts. + * It is added to the token of users who are a member of the Incoming + * Forest Trust Builders built-in group in the root domain of the + * forest. + */ + public static final int WinBuiltinIncomingForestTrustBuildersSid = 56; + /** + * Indicates a SID that matches the performance monitor user group. + */ + public static final int WinBuiltinPerfMonitoringUsersSid = 57; + /** + * Indicates a SID that matches the performance log user group. + */ + public static final int WinBuiltinPerfLoggingUsersSid = 58; + /** + * Indicates a SID that matches the Windows Authorization Access group. + */ + public static final int WinBuiltinAuthorizationAccessSid = 59; + /** + * Indicates a SID is present in a server that can issue Terminal Server + * licenses. + */ + public static final int WinBuiltinTerminalServerLicenseServersSid = 60; + /** + * + */ + public static final int WinBuiltinDCOMUsersSid = 61; + /** + * + */ + public static final int WinBuiltinIUsersSid = 62; + /** + * + */ + public static final int WinIUserSid = 63; + /** + * + */ + public static final int WinBuiltinCryptoOperatorsSid = 64; + /** + * + */ + public static final int WinUntrustedLabelSid = 65; + /** + * + */ + public static final int WinLowLabelSid = 66; + /** + * + */ + public static final int WinMediumLabelSid = 67; + /** + * + */ + public static final int WinHighLabelSid = 68; + /** + * + */ + public static final int WinSystemLabelSid = 69; + /** + * + */ + public static final int WinWriteRestrictedCodeSid = 70; + /** + * + */ + public static final int WinCreatorOwnerRightsSid = 71; + /** + * + */ + public static final int WinCacheablePrincipalsGroupSid = 72; + /** + * + */ + public static final int WinNonCacheablePrincipalsGroupSid = 73; + /** + * + */ + public static final int WinEnterpriseReadonlyControllersSid = 74; + /** + * Indicates a SID that matches a read-only enterprise domain + * controller. + */ + public static final int WinAccountReadonlyControllersSid = 75; + /** + * Indicates a SID that matches the built-in DCOM certification services + * access group. + */ + public static final int WinBuiltinEventLogReadersGroup = 76; + } + /** + * Current SID revision level. + */ + int SID_REVISION = 1; + int SID_MAX_SUB_AUTHORITIES = 15; + int SID_RECOMMENDED_SUB_AUTHORITIES = 1; + /** + * Maximum bytes used by a SID. (sizeof(SID) - sizeof(DWORD) + + * (SID_MAX_SUB_AUTHORITIES * sizeof(DWORD))) + */ + int SECURITY_MAX_SID_SIZE = 68; + + /** + * The OSVERSIONINFO data structure contains operating system version + * information. The information includes major and minor version numbers, a + * build number, a platform identifier, and descriptive text about the + * operating system. This structure is used with the GetVersionEx function. + */ + public static class OSVERSIONINFO extends Structure { + + /** + * Size of this data structure, in bytes. Set this member to + * sizeof(OSVERSIONINFO) before calling the GetVersionEx function. + */ + public DWORD dwOSVersionInfoSize; + /** + * Major version number of the operating system. + */ + public DWORD dwMajorVersion; + /** + * Minor version number of the operating system. + */ + public DWORD dwMinorVersion; + /** + * Build number of the operating system. + */ + public DWORD dwBuildNumber; + /** + * Operating system platform. + */ + public DWORD dwPlatformId; + /** + * Pointer to a null-terminated string, such as "Service Pack 3", that + * indicates the latest Service Pack installed on the system. + */ + public char[] szCSDVersion; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"dwOSVersionInfoSize", "dwMajorVersion", "dwMinorVersion", "dwBuildNumber", "dwPlatformId", "szCSDVersion"}); + } + + public OSVERSIONINFO() { + szCSDVersion = new char[128]; + dwOSVersionInfoSize = new DWORD(size()); // sizeof(OSVERSIONINFO) + } + + public OSVERSIONINFO(Pointer memory) { + super(memory); + read(); + } + } + + /** + * Contains operating system version information. The information includes + * major and minor version numbers, a build number, a platform identifier, + * and information about product suites and the latest Service Pack + * installed on the system. + */ + public static class OSVERSIONINFOEX extends Structure { + + /** + * The size of this data structure, in bytes. + */ + public DWORD dwOSVersionInfoSize; + /** + * The major version number of the operating system. + */ + public DWORD dwMajorVersion; + /** + * The minor version number of the operating system. + */ + public DWORD dwMinorVersion; + /** + * The build number of the operating system. + */ + public DWORD dwBuildNumber; + /** + * The operating system platform. This member can be + * VER_PLATFORM_WIN32_NT. + */ + public DWORD dwPlatformId; + /** + * A null-terminated string, such as "Service Pack 3", that indicates + * the latest Service Pack installed on the system. If no Service Pack + * has been installed, the string is empty. + */ + public char[] szCSDVersion; + /** + * The major version number of the latest Service Pack installed on the + * system. For example, for Service Pack 3, the major version number is + * 3. If no Service Pack has been installed, the value is zero. + */ + public WORD wServicePackMajor; + /** + * The minor version number of the latest Service Pack installed on the + * system. For example, for Service Pack 3, the minor version number is + * 0. + */ + public WORD wServicePackMinor; + /** + * A bit mask that identifies the product suites available on the + * system. + */ + public WORD wSuiteMask; + /** + * Any additional information about the system. + */ + public byte wProductType; + /** + * Reserved for future use. + */ + public byte wReserved; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"dwOSVersionInfoSize", "dwMajorVersion", "dwMinorVersion", "dwBuildNumber", "dwPlatformId", "szCSDVersion", "wServicePackMajor", "wServicePackMinor", "wSuiteMask", "wProductType", "wReserved"}); + } + + public OSVERSIONINFOEX() { + szCSDVersion = new char[128]; + dwOSVersionInfoSize = new DWORD(size()); // sizeof(OSVERSIONINFOEX) + } + + public OSVERSIONINFOEX(Pointer memory) { + super(memory); + read(); + } + } + int VER_EQUAL = 1; + int VER_GREATER = 2; + int VER_GREATER_EQUAL = 3; + int VER_LESS = 4; + int VER_LESS_EQUAL = 5; + int VER_AND = 6; + int VER_OR = 7; + int VER_CONDITION_MASK = 7; + int VER_NUM_BITS_PER_CONDITION_MASK = 3; + int VER_MINORVERSION = 0x0000001; + int VER_MAJORVERSION = 0x0000002; + int VER_BUILDNUMBER = 0x0000004; + int VER_PLATFORMID = 0x0000008; + int VER_SERVICEPACKMINOR = 0x0000010; + int VER_SERVICEPACKMAJOR = 0x0000020; + int VER_SUITENAME = 0x0000040; + int VER_PRODUCT_TYPE = 0x0000080; + int VER_NT_WORKSTATION = 0x0000001; + int VER_NT_DOMAIN_CONTROLLER = 0x0000002; + int VER_NT_SERVER = 0x0000003; + int VER_PLATFORM_WIN32s = 0; + int VER_PLATFORM_WIN32_WINDOWS = 1; + int VER_PLATFORM_WIN32_NT = 2; + /** + * Read the records sequentially. If this is the first read operation, the + * EVENTLOG_FORWARDS_READ EVENTLOG_BACKWARDS_READ flags determines which + * record is read first. + */ + int EVENTLOG_SEQUENTIAL_READ = 0x0001; + /** + * Begin reading from the record specified in the dwRecordOffset parameter. + * This option may not work with large log files if the function cannot + * determine the log file's size. For details, see Knowledge Base article, + * 177199. + */ + int EVENTLOG_SEEK_READ = 0x0002; + /** + * The log is read in chronological order (oldest to newest). The default. + */ + int EVENTLOG_FORWARDS_READ = 0x0004; + /** + * The log is read in reverse chronological order (newest to oldest). + */ + int EVENTLOG_BACKWARDS_READ = 0x0008; + /** + * Information event + */ + int EVENTLOG_SUCCESS = 0x0000; + /** + * Error event + */ + int EVENTLOG_ERROR_TYPE = 0x0001; + /** + * Warning event + */ + int EVENTLOG_WARNING_TYPE = 0x0002; + /** + * Information event + */ + int EVENTLOG_INFORMATION_TYPE = 0x0004; + /** + * Success Audit event + */ + int EVENTLOG_AUDIT_SUCCESS = 0x0008; + /** + * Failure Audit event + */ + int EVENTLOG_AUDIT_FAILURE = 0x0010; + + /** + * The EVENTLOGRECORD structure contains information about an event record + * returned by the ReadEventLog function. + */ + public static class EVENTLOGRECORD extends Structure { + + /** + * Size of this event record, in bytes. Note that this value is stored + * at both ends of the entry to ease moving forward or backward through + * the log. The length includes any pad bytes inserted at the end of the + * record for DWORD alignment. + */ + public DWORD Length; + /** + * Reserved. + */ + public DWORD Reserved; + /** + * Record number of the record. This value can be used with the + * EVENTLOG_SEEK_READ flag in the ReadEventLog function to begin reading + * at a specified record. + */ + public DWORD RecordNumber; + /** + * Time at which this entry was submitted. This time is measured in the + * number of seconds elapsed since 00:00:00 January 1, 1970, Universal + * Coordinated Time. + */ + public DWORD TimeGenerated; + /** + * Time at which this entry was received by the service to be written to + * the log. This time is measured in the number of seconds elapsed since + * 00:00:00 January 1, 1970, Universal Coordinated Time. + */ + public DWORD TimeWritten; + /** + * Event identifier. The value is specific to the event source for the + * event, and is used with source name to locate a description string in + * the message file for the event source. + */ + public DWORD EventID; + /** + * Type of event. + */ + public WORD EventType; + /** + * Number of strings present in the log (at the position indicated by + * StringOffset). These strings are merged into the message before it is + * displayed to the user. + */ + public WORD NumStrings; + /** + * Category for this event. The meaning of this value depends on the + * event source. + */ + public WORD EventCategory; + /** + * Reserved. + */ + public WORD ReservedFlags; + /** + * Reserved. + */ + public DWORD ClosingRecordNumber; + /** + * Offset of the description strings within this event log record. + */ + public DWORD StringOffset; + /** + * Size of the UserSid member, in bytes. This value can be zero if no + * security identifier was provided. + */ + public DWORD UserSidLength; + /** + * Offset of the security identifier (SID) within this event log record. + * To obtain the user name for this SID, use the LookupAccountSid + * function. + */ + public DWORD UserSidOffset; + /** + * Size of the event-specific data (at the position indicated by + * DataOffset), in bytes. + */ + public DWORD DataLength; + /** + * Offset of the event-specific information within this event log + * record, in bytes. This information could be something specific (a + * disk driver might log the number of retries, for example), followed + * by binary information specific to the event being logged and to the + * source that generated the entry. + */ + public DWORD DataOffset; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"Length", "Reserved", "RecordNumber", "TimeGenerated", "TimeWritten", "EventID", "EventType", "NumStrings", "EventCategory", "ReservedFlags", "ClosingRecordNumber", "StringOffset", "UserSidLength", "UserSidOffset", "DataLength", "DataOffset"}); + } + + public EVENTLOGRECORD() { + } + + public EVENTLOGRECORD(Pointer p) { + super(p); + read(); + } + } + // + // Service Types (Bit Mask) + // + int SERVICE_KERNEL_DRIVER = 0x00000001; + int SERVICE_FILE_SYSTEM_DRIVER = 0x00000002; + int SERVICE_ADAPTER = 0x00000004; + int SERVICE_RECOGNIZER_DRIVER = 0x00000008; + int SERVICE_DRIVER = SERVICE_KERNEL_DRIVER | SERVICE_FILE_SYSTEM_DRIVER + | SERVICE_RECOGNIZER_DRIVER; + int SERVICE_WIN32_OWN_PROCESS = 0x00000010; + int SERVICE_WIN32_SHARE_PROCESS = 0x00000020; + int SERVICE_WIN32 = SERVICE_WIN32_OWN_PROCESS | SERVICE_WIN32_SHARE_PROCESS; + int SERVICE_INTERACTIVE_PROCESS = 0x00000100; + int SERVICE_TYPE_ALL = SERVICE_WIN32 | SERVICE_ADAPTER | SERVICE_DRIVER + | SERVICE_INTERACTIVE_PROCESS; + int STATUS_PENDING = 0x00000103; + // Privilege Constants + String SE_CREATE_TOKEN_NAME = "SeCreateTokenPrivilege"; + String SE_ASSIGNPRIMARYTOKEN_NAME = "SeAssignPrimaryTokenPrivilege"; + String SE_LOCK_MEMORY_NAME = "SeLockMemoryPrivilege"; + String SE_INCREASE_QUOTA_NAME = "SeIncreaseQuotaPrivilege"; + String SE_UNSOLICITED_INPUT_NAME = "SeUnsolicitedInputPrivilege"; + String SE_MACHINE_ACCOUNT_NAME = "SeMachineAccountPrivilege"; + String SE_TCB_NAME = "SeTcbPrivilege"; + String SE_SECURITY_NAME = "SeSecurityPrivilege"; + String SE_TAKE_OWNERSHIP_NAME = "SeTakeOwnershipPrivilege"; + String SE_LOAD_DRIVER_NAME = "SeLoadDriverPrivilege"; + String SE_SYSTEM_PROFILE_NAME = "SeSystemProfilePrivilege"; + String SE_SYSTEMTIME_NAME = "SeSystemtimePrivilege"; + String SE_PROF_SINGLE_PROCESS_NAME = "SeProfileSingleProcessPrivilege"; + String SE_INC_BASE_PRIORITY_NAME = "SeIncreaseBasePriorityPrivilege"; + String SE_CREATE_PAGEFILE_NAME = "SeCreatePagefilePrivilege"; + String SE_CREATE_PERMANENT_NAME = "SeCreatePermanentPrivilege"; + String SE_BACKUP_NAME = "SeBackupPrivilege"; + String SE_RESTORE_NAME = "SeRestorePrivilege"; + String SE_SHUTDOWN_NAME = "SeShutdownPrivilege"; + String SE_DEBUG_NAME = "SeDebugPrivilege"; + String SE_AUDIT_NAME = "SeAuditPrivilege"; + String SE_SYSTEM_ENVIRONMENT_NAME = "SeSystemEnvironmentPrivilege"; + String SE_CHANGE_NOTIFY_NAME = "SeChangeNotifyPrivilege"; + String SE_REMOTE_SHUTDOWN_NAME = "SeRemoteShutdownPrivilege"; + String SE_UNDOCK_NAME = "SeUndockPrivilege"; + String SE_SYNC_AGENT_NAME = "SeSyncAgentPrivilege"; + String SE_ENABLE_DELEGATION_NAME = "SeEnableDelegationPrivilege"; + String SE_MANAGE_VOLUME_NAME = "SeManageVolumePrivilege"; + String SE_IMPERSONATE_NAME = "SeImpersonatePrivilege"; + String SE_CREATE_GLOBAL_NAME = "SeCreateGlobalPrivilege"; + int SE_PRIVILEGE_ENABLED_BY_DEFAULT = 0x00000001; + int SE_PRIVILEGE_ENABLED = 0x00000002; + int SE_PRIVILEGE_REMOVED = 0X00000004; + int SE_PRIVILEGE_USED_FOR_ACCESS = 0x80000000; + int PROCESS_TERMINATE = 0x00000001; + int PROCESS_SYNCHRONIZE = 0x00100000; + + /* Security information types */ + int OWNER_SECURITY_INFORMATION = 0x00000001; + int GROUP_SECURITY_INFORMATION = 0x00000002; + int DACL_SECURITY_INFORMATION = 0x00000004; + int SACL_SECURITY_INFORMATION = 0x00000008; + int LABEL_SECURITY_INFORMATION = 0x00000010; + int PROTECTED_DACL_SECURITY_INFORMATION = 0x80000000; + int PROTECTED_SACL_SECURITY_INFORMATION = 0x40000000; + int UNPROTECTED_DACL_SECURITY_INFORMATION = 0x20000000; + int UNPROTECTED_SACL_SECURITY_INFORMATION = 0x10000000; + + public static class SECURITY_DESCRIPTOR extends Structure { + + public static class ByReference extends SECURITY_DESCRIPTOR implements + Structure.ByReference { + } + + public SECURITY_DESCRIPTOR() { + } + + public SECURITY_DESCRIPTOR(byte[] data) { + super(); + this.data = data; + useMemory(new Memory(data.length)); + } + + public SECURITY_DESCRIPTOR(Pointer memory) { + super(memory); + read(); + } + public byte[] data; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"data"}); + } + } + /* ACE types */ + byte ACCESS_ALLOWED_ACE_TYPE = 0x00; + byte ACCESS_DENIED_ACE_TYPE = 0x01; + byte SYSTEM_AUDIT_ACE_TYPE = 0x02; + byte SYSTEM_ALARM_ACE_TYPE = 0x03; + byte ACCESS_ALLOWED_COMPOUND_ACE_TYPE = 0x04; + byte ACCESS_ALLOWED_OBJECT_ACE_TYPE = 0x05; + byte ACCESS_DENIED_OBJECT_ACE_TYPE = 0x06; + byte SYSTEM_AUDIT_OBJECT_ACE_TYPE = 0x07; + byte SYSTEM_ALARM_OBJECT_ACE_TYPE = 0x08; + byte ACCESS_ALLOWED_CALLBACK_ACE_TYPE = 0x09; + byte ACCESS_DENIED_CALLBACK_ACE_TYPE = 0x0A; + byte ACCESS_ALLOWED_CALLBACK_OBJECT_ACE_TYPE = 0x0B; + byte ACCESS_DENIED_CALLBACK_OBJECT_ACE_TYPE = 0x0C; + byte SYSTEM_AUDIT_CALLBACK_ACE_TYPE = 0x0D; + byte SYSTEM_ALARM_CALLBACK_ACE_TYPE = 0x0E; + byte SYSTEM_AUDIT_CALLBACK_OBJECT_ACE_TYPE = 0x0F; + byte SYSTEM_ALARM_CALLBACK_OBJECT_ACE_TYPE = 0x10; + byte SYSTEM_MANDATORY_LABEL_ACE_TYPE = 0x11; + + /* ACE inherit flags */ + byte OBJECT_INHERIT_ACE = 0x01; + byte CONTAINER_INHERIT_ACE = 0x02; + byte NO_PROPAGATE_INHERIT_ACE = 0x04; + byte INHERIT_ONLY_ACE = 0x08; + byte INHERITED_ACE = 0x10; + byte VALID_INHERIT_FLAGS = 0x1F; + + // TODO: figure out how OVERLAPPED is used and apply an appropriate mapping + interface OVERLAPPED_COMPLETION_ROUTINE extends StdCallCallback { + + void callback(int errorCode, int nBytesTransferred, + WinBase.OVERLAPPED overlapped); + } +} diff --git a/src/com/jpexs/javactivex/jna/WinReg.java b/src/com/jpexs/javactivex/jna/WinReg.java new file mode 100644 index 0000000..3934151 --- /dev/null +++ b/src/com/jpexs/javactivex/jna/WinReg.java @@ -0,0 +1,80 @@ +/* Copyright (c) 2010 Daniel Doubrovkine, All Rights Reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + */ +package com.jpexs.javactivex.jna; + +import com.sun.jna.Pointer; +import com.jpexs.javactivex.jna.WinNT.HANDLE; +import com.sun.jna.ptr.ByReference; +import com.sun.jna.win32.StdCallLibrary; + +/** + * This module contains the function prototypes and constant, type and structure + * definitions for the Windows 32-Bit Registry API. Ported from WinReg.h + * Microsoft Windows SDK 6.0A. + * + * @author dblock[at]dblock.org + */ +public interface WinReg extends StdCallLibrary { + + public static class HKEY extends HANDLE { + + public HKEY() { + } + + public HKEY(Pointer p) { + super(p); + } + + public HKEY(int value) { + super(new Pointer(value)); + } + } + + public static final class HKEYByReference extends ByReference { + + public HKEYByReference() { + this(null); + } + + public HKEYByReference(HKEY h) { + super(Pointer.SIZE); + setValue(h); + } + + public void setValue(HKEY h) { + getPointer().setPointer(0, h != null ? h.getPointer() : null); + } + + public HKEY getValue() { + Pointer p = getPointer().getPointer(0); + if (p == null) { + return null; + } + if (WinBase.INVALID_HANDLE_VALUE.getPointer().equals(p)) { + return (HKEY) WinBase.INVALID_HANDLE_VALUE; + } + HKEY h = new HKEY(); + h.setPointer(p); + return h; + } + } + HKEY HKEY_CLASSES_ROOT = new HKEY(0x80000000); + HKEY HKEY_CURRENT_USER = new HKEY(0x80000001); + HKEY HKEY_LOCAL_MACHINE = new HKEY(0x80000002); + HKEY HKEY_USERS = new HKEY(0x80000003); + HKEY HKEY_PERFORMANCE_DATA = new HKEY(0x80000004); + HKEY HKEY_PERFORMANCE_TEXT = new HKEY(0x80000050); + HKEY HKEY_PERFORMANCE_NLSTEXT = new HKEY(0x80000060); + HKEY HKEY_CURRENT_CONFIG = new HKEY(0x80000005); + HKEY HKEY_DYN_DATA = new HKEY(0x80000006); +} diff --git a/src/com/jpexs/javactivex/jna/WinUser.java b/src/com/jpexs/javactivex/jna/WinUser.java new file mode 100644 index 0000000..acf1039 --- /dev/null +++ b/src/com/jpexs/javactivex/jna/WinUser.java @@ -0,0 +1,894 @@ +/* Copyright (c) 2010 Daniel Doubrovkine, All Rights Reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the GNU + * Lesser General Public License for more details. + */ +package com.jpexs.javactivex.jna; + +import com.sun.jna.Callback; +import com.sun.jna.Pointer; +import com.sun.jna.Structure; +import com.sun.jna.Union; +import com.sun.jna.WString; +import com.jpexs.javactivex.jna.BaseTSD.ULONG_PTR; +import com.jpexs.javactivex.jna.WinDef.HBRUSH; +import com.jpexs.javactivex.jna.WinDef.HCURSOR; +import com.jpexs.javactivex.jna.WinDef.HICON; +import com.jpexs.javactivex.jna.WinDef.HINSTANCE; +import com.jpexs.javactivex.jna.WinDef.HWND; +import com.jpexs.javactivex.jna.WinDef.LPARAM; +import com.jpexs.javactivex.jna.WinDef.LRESULT; +import com.jpexs.javactivex.jna.WinDef.WPARAM; +import com.jpexs.javactivex.jna.WinNT.HANDLE; +import com.sun.jna.win32.StdCallLibrary; +import java.util.Arrays; +import java.util.List; + +/** + * Ported from WinUser.h Microsoft Windows SDK 6.0A. + * + * @author dblock[at]dblock.org + */ +public interface WinUser extends StdCallLibrary, WinDef { + + HWND HWND_BROADCAST = new HWND(Pointer.createConstant(0xFFFF)); + HWND HWND_MESSAGE = new HWND(Pointer.createConstant(-3)); + + /* RegisterDeviceNotification stuff */ + public static class HDEVNOTIFY extends PVOID { + + public HDEVNOTIFY() { + } + + public HDEVNOTIFY(Pointer p) { + super(p); + } + } + int FLASHW_STOP = 0; + int FLASHW_CAPTION = 1; + int FLASHW_TRAY = 2; + int FLASHW_ALL = (FLASHW_CAPTION | FLASHW_TRAY); + int FLASHW_TIMER = 4; + int FLASHW_TIMERNOFG = 12; + int IMAGE_BITMAP = 0; + int IMAGE_ICON = 1; + int IMAGE_CURSOR = 2; + int IMAGE_ENHMETAFILE = 3; + int LR_DEFAULTCOLOR = 0x0000; + int LR_MONOCHROME = 0x0001; + int LR_COLOR = 0x0002; + int LR_COPYRETURNORG = 0x0004; + int LR_COPYDELETEORG = 0x0008; + int LR_LOADFROMFILE = 0x0010; + int LR_LOADTRANSPARENT = 0x0020; + int LR_DEFAULTSIZE = 0x0040; + int LR_VGACOLOR = 0x0080; + int LR_LOADMAP3DCOLORS = 0x1000; + int LR_CREATEDIBSECTION = 0x2000; + int LR_COPYFROMRESOURCE = 0x4000; + int LR_SHARED = 0x8000; + + public class GUITHREADINFO extends Structure { + + public int cbSize = size(); + public int flags; + public HWND hwndActive; + public HWND hwndFocus; + public HWND hwndCapture; + public HWND hwndMenuOwner; + public HWND hwndMoveSize; + public HWND hwndCaret; + public RECT rcCaret; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"cbSize", "flags", + "hwndActive", "hwndFocus", "hwndCapture", "hwndMenuOwner", + "hwndMoveSize", "hwndCaret", "rcCaret"}); + } + } + + public class WINDOWINFO extends Structure { + + public int cbSize = size(); + public RECT rcWindow; + public RECT rcClient; + public int dwStyle; + public int dwExStyle; + public int dwWindowStatus; + public int cxWindowBorders; + public int cyWindowBorders; + public short atomWindowType; + public short wCreatorVersion; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"cbSize", "rcWindow", + "rcClient", "dwStyle", "dwExStyle", "dwWindowStatus", + "cxWindowBorders", "cyWindowBorders", "atomWindowType", + "wCreatorVersion"}); + } + } + int GWL_EXSTYLE = -20; + int GWL_STYLE = -16; + int GWL_WNDPROC = -4; + int GWL_HINSTANCE = -6; + int GWL_ID = -12; + int GWL_USERDATA = -21; + int DWL_DLGPROC = 4; + int DWL_MSGRESULT = 0; + int DWL_USER = 8; + int WS_MAXIMIZE = 0x01000000; + int WS_VISIBLE = 0x10000000; + int WS_MINIMIZE = 0x20000000; + int WS_CHILD = 0x40000000; + int WS_POPUP = 0x80000000; + int WS_EX_COMPOSITED = 0x20000000; + int WS_EX_LAYERED = 0x80000; + int WS_EX_TRANSPARENT = 32; + int LWA_COLORKEY = 1; + int LWA_ALPHA = 2; + int ULW_COLORKEY = 1; + int ULW_ALPHA = 2; + int ULW_OPAQUE = 4; + + /** + * Defines the x- and y-coordinates of a point. + */ + public class POINT extends Structure { + + public int x, y; + + public POINT() { + } + + public POINT(int x, int y) { + this.x = x; + this.y = y; + } + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"x", "y"}); + } + } + + public class MSG extends Structure { + + public HWND hWnd; + public int message; + public WPARAM wParam; + public LPARAM lParam; + public int time; + public POINT pt; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"hWnd", "message", "wParam", + "lParam", "time", "pt"}); + } + } + + public class FLASHWINFO extends Structure { + + public int cbSize; + public HANDLE hWnd; + public int dwFlags; + public int uCount; + public int dwTimeout; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"cbSize", "hWnd", "dwFlags", + "uCount", "dwTimeout"}); + } + } + + public interface WNDENUMPROC extends StdCallCallback { + + /** + * Return whether to continue enumeration. + * + * @param hWnd + * @param data + * @return + */ + boolean callback(HWND hWnd, Pointer data); + } + + public interface LowLevelKeyboardProc extends HOOKPROC { + + LRESULT callback(int nCode, WPARAM wParam, KBDLLHOOKSTRUCT lParam); + } + + /** + * Specifies the width and height of a rectangle. + */ + public class SIZE extends Structure { + + public int cx, cy; + + public SIZE() { + } + + public SIZE(int w, int h) { + this.cx = w; + this.cy = h; + } + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"cx", "cy"}); + } + } + int AC_SRC_OVER = 0x00; + int AC_SRC_ALPHA = 0x01; + int AC_SRC_NO_PREMULT_ALPHA = 0x01; + int AC_SRC_NO_ALPHA = 0x02; + + public class BLENDFUNCTION extends Structure { + + public byte BlendOp = AC_SRC_OVER; // only valid value + public byte BlendFlags = 0; // only valid value + public byte SourceConstantAlpha; + public byte AlphaFormat; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"BlendOp", "BlendFlags", + "SourceConstantAlpha", "AlphaFormat"}); + } + } + int VK_SHIFT = 16; + int VK_LSHIFT = 0xA0; + int VK_RSHIFT = 0xA1; + int VK_CONTROL = 17; + int VK_LCONTROL = 0xA2; + int VK_RCONTROL = 0xA3; + int VK_MENU = 18; + int VK_LMENU = 0xA4; + int VK_RMENU = 0xA5; + int MOD_ALT = 0x0001; + int MOD_CONTROL = 0x0002; + int MOD_NOREPEAT = 0x4000; + int MOD_SHIFT = 0x0004; + int MOD_WIN = 0x0008; + int WH_KEYBOARD = 2; + int WH_MOUSE = 7; + int WH_KEYBOARD_LL = 13; + int WH_MOUSE_LL = 14; + + public class HHOOK extends HANDLE { + } + + public interface HOOKPROC extends StdCallCallback { + } + /** + * The WM_PAINT message is sent when the system or another application makes + * a request to paint a portion of an \ application's window. + */ + int WM_PAINT = 0x000F; + /** + * Sent as a signal that a window or an application should terminate. + */ + int WM_CLOSE = 0x0010; + /** + * Indicates a request to terminate an application, and is generated when + * the application calls the PostQuitMessage function. + */ + int WM_QUIT = 0x0012; + /** + * Sent to a window when the window is about to be hidden or shown. + */ + int WM_SHOWWINDOW = 0x0018; + /** + * Sent to the parent window of an owner-drawn button, combo box, list box, + * or menu when a visual aspect of the button, combo box, list box, or menu + * has changed. + */ + int WM_DRAWITEM = 0x002B; + /** + * Posted to the window with the keyboard focus when a nonsystem key is + * pressed. A nonsystem key is a key that is pressed when the ALT key is not + * pressed. + */ + int WM_KEYDOWN = 0x0100; + /** + * Posted to the window with the keyboard focus when a WM_KEYDOWN message is + * translated by the TranslateMessage function. The WM_CHAR message contains + * the character code of the key that was pressed. + */ + int WM_CHAR = 0x0102; + /** + * A window receives this message when the user chooses a command from the + * Window menu (formerly known as the system or control menu) or when the + * user chooses the maximize button, minimize button, restore button, or + * close button. + */ + int WM_SYSCOMMAND = 0x0112; + /** + * An application sends the WM_MDIMAXIMIZE message to a multiple-document + * interface (MDI) client window to maximize an MDI child window. + */ + int WM_MDIMAXIMIZE = 0x0225; + /** + * Posted when the user presses a hot key registered by the RegisterHotKey + * function. The message is placed at the top of the message queue + * associated with the thread that registered the hot key. + */ + int WM_HOTKEY = 0x0312; + int WM_KEYUP = 257; + int WM_SYSKEYDOWN = 260; + int WM_SYSKEYUP = 261; + int WM_SESSION_CHANGE = 0x2b1; + int WM_CREATE = 0x0001; + int WM_SIZE = 0x0005; + int WM_DESTROY = 0x0002; + public static final int WM_DEVICECHANGE = 0x0219; + + public class KBDLLHOOKSTRUCT extends Structure { + + public int vkCode; + public int scanCode; + public int flags; + public int time; + public ULONG_PTR dwExtraInfo; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"vkCode", "scanCode", "flags", + "time", "dwExtraInfo"}); + } + } + int SM_CXSCREEN = 0; + int SM_CYSCREEN = 1; + int SM_CXVSCROLL = 2; + int SM_CYHSCROLL = 3; + int SM_CYCAPTION = 4; + int SM_CXBORDER = 5; + int SM_CYBORDER = 6; + int SM_CXDLGFRAME = 7; + int SM_CYDLGFRAME = 8; + int SM_CYVTHUMB = 9; + int SM_CXHTHUMB = 10; + int SM_CXICON = 11; + int SM_CYICON = 12; + int SM_CXCURSOR = 13; + int SM_CYCURSOR = 14; + int SM_CYMENU = 15; + int SM_CXFULLSCREEN = 16; + int SM_CYFULLSCREEN = 17; + int SM_CYKANJIWINDOW = 18; + int SM_MOUSEPRESENT = 19; + int SM_CYVSCROLL = 20; + int SM_CXHSCROLL = 21; + int SM_DEBUG = 22; + int SM_SWAPBUTTON = 23; + int SM_RESERVED1 = 24; + int SM_RESERVED2 = 25; + int SM_RESERVED3 = 26; + int SM_RESERVED4 = 27; + int SM_CXMIN = 28; + int SM_CYMIN = 29; + int SM_CXSIZE = 30; + int SM_CYSIZE = 31; + int SM_CXFRAME = 32; + int SM_CYFRAME = 33; + int SM_CXMINTRACK = 34; + int SM_CYMINTRACK = 35; + int SM_CXDOUBLECLK = 36; + int SM_CYDOUBLECLK = 37; + int SM_CXICONSPACING = 38; + int SM_CYICONSPACING = 39; + int SM_MENUDROPALIGNMENT = 40; + int SM_PENWINDOWS = 41; + int SM_DBCSENABLED = 42; + int SM_CMOUSEBUTTONS = 43; + int SM_CXFIXEDFRAME = SM_CXDLGFRAME; /* ;win40 name change */ + + int SM_CYFIXEDFRAME = SM_CYDLGFRAME; /* ;win40 name change */ + + int SM_CXSIZEFRAME = SM_CXFRAME; /* ;win40 name change */ + + int SM_CYSIZEFRAME = SM_CYFRAME; /* ;win40 name change */ + + int SM_SECURE = 44; + int SM_CXEDGE = 45; + int SM_CYEDGE = 46; + int SM_CXMINSPACING = 47; + int SM_CYMINSPACING = 48; + int SM_CXSMICON = 49; + int SM_CYSMICON = 50; + int SM_CYSMCAPTION = 51; + int SM_CXSMSIZE = 52; + int SM_CYSMSIZE = 53; + int SM_CXMENUSIZE = 54; + int SM_CYMENUSIZE = 55; + int SM_ARRANGE = 56; + int SM_CXMINIMIZED = 57; + int SM_CYMINIMIZED = 58; + int SM_CXMAXTRACK = 59; + int SM_CYMAXTRACK = 60; + int SM_CXMAXIMIZED = 61; + int SM_CYMAXIMIZED = 62; + int SM_NETWORK = 63; + int SM_CLEANBOOT = 67; + int SM_CXDRAG = 68; + int SM_CYDRAG = 69; + int SM_SHOWSOUNDS = 70; + int SM_CXMENUCHECK = 71; + int SM_CYMENUCHECK = 72; + int SM_SLOWMACHINE = 73; + int SM_MIDEASTENABLED = 74; + int SM_MOUSEWHEELPRESENT = 75; + int SM_XVIRTUALSCREEN = 76; + int SM_YVIRTUALSCREEN = 77; + int SM_CXVIRTUALSCREEN = 78; + int SM_CYVIRTUALSCREEN = 79; + int SM_CMONITORS = 80; + int SM_SAMEDISPLAYFORMAT = 81; + int SM_IMMENABLED = 82; + int SM_CXFOCUSBORDER = 83; + int SM_CYFOCUSBORDER = 84; + int SM_TABLETPC = 86; + int SM_MEDIACENTER = 87; + int SM_STARTER = 88; + int SM_SERVERR2 = 89; + int SM_MOUSEHORIZONTALWHEELPRESENT = 91; + int SM_CXPADDEDBORDER = 92; + int SM_REMOTESESSION = 0x1000; + int SM_SHUTTINGDOWN = 0x2000; + int SM_REMOTECONTROL = 0x2001; + int SM_CARETBLINKINGENABLED = 0x2002; + int SW_HIDE = 0; + int SW_SHOWNORMAL = 1; + int SW_NORMAL = 1; + int SW_SHOWMINIMIZED = 2; + int SW_SHOWMAXIMIZED = 3; + int SW_MAXIMIZE = 3; + int SW_SHOWNOACTIVATE = 4; + int SW_SHOW = 5; + int SW_MINIMIZE = 6; + int SW_SHOWMINNOACTIVE = 7; + int SW_SHOWNA = 8; + int SW_RESTORE = 9; + int SW_SHOWDEFAULT = 10; + int SW_FORCEMINIMIZE = 11; + int SW_MAX = 11; + int RDW_INVALIDATE = 0x0001; + int RDW_INTERNALPAINT = 0x0002; + int RDW_ERASE = 0x0004; + int RDW_VALIDATE = 0x0008; + int RDW_NOINTERNALPAINT = 0x0010; + int RDW_NOERASE = 0x0020; + int RDW_NOCHILDREN = 0x0040; + int RDW_ALLCHILDREN = 0x0080; + int RDW_UPDATENOW = 0x0100; + int RDW_ERASENOW = 0x0200; + int RDW_FRAME = 0x0400; + int RDW_NOFRAME = 0x0800; + /** + * The retrieved handle identifies the window of the same type that is + * highest in the Z order. + * + * If the specified window is a topmost window, the handle identifies a + * topmost window. If the specified window is a top-level window, the handle + * identifies a top-level window. If the specified window is a child window, + * the handle identifies a sibling window. + */ + int GW_HWNDFIRST = 0; + /** + * The retrieved handle identifies the window of the same type that is + * lowest in the Z order. + * + * If the specified window is a topmost window, the handle identifies a + * topmost window. If the specified window is a top-level window, the handle + * identifies a top-level window. If the specified window is a child window, + * the handle identifies a sibling window. + */ + int GW_HWNDLAST = 1; + /** + * The retrieved handle identifies the window below the specified window in + * the Z order. + * + * If the specified window is a topmost window, the handle identifies a + * topmost window. If the specified window is a top-level window, the handle + * identifies a top-level window. If the specified window is a child window, + * the handle identifies a sibling window. + */ + int GW_HWNDNEXT = 2; + /** + * The retrieved handle identifies the window above the specified window in + * the Z order. + * + * If the specified window is a topmost window, the handle identifies a + * topmost window. If the specified window is a top-level window, the handle + * identifies a top-level window. If the specified window is a child window, + * the handle identifies a sibling window. + */ + int GW_HWNDPREV = 3; + /** + * The retrieved handle identifies the specified window's owner window, if + * any. For more information, see Owned Windows. + */ + int GW_OWNER = 4; + /** + * The retrieved handle identifies the child window at the top of the Z + * order, if the specified window is a parent window; otherwise, the + * retrieved handle is NULL. The function examines only child windows of the + * specified window. It does not examine descendant windows. + */ + int GW_CHILD = 5; + /** + * The retrieved handle identifies the enabled popup window owned by the + * specified window (the search uses the first such window found using + * GW_HWNDNEXT); otherwise, if there are no enabled popup windows, the + * retrieved handle is that of the specified window. + */ + int GW_ENABLEDPOPUP = 6; + /** + * Retains the current Z order (ignores the hWndInsertAfter parameter). + */ + int SWP_NOZORDER = 0x0004; + /** + * Minimizes the window. + */ + int SC_MINIMIZE = 0xF020; + /** + * Maximizes the window. + */ + int SC_MAXIMIZE = 0xF030; + + /** + * Contains information about a simulated message generated by an input + * device other than a keyboard or mouse. + */ + public static class HARDWAREINPUT extends Structure { + + public static class ByReference extends HARDWAREINPUT implements + Structure.ByReference { + + public ByReference() { + } + + public ByReference(Pointer memory) { + super(memory); + } + } + + public HARDWAREINPUT() { + } + + public HARDWAREINPUT(Pointer memory) { + super(memory); + read(); + } + public WinDef.DWORD uMsg; + public WinDef.WORD wParamL; + public WinDef.WORD wParamH; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"uMsg", "wParamL", "wParamH"}); + } + } + + /** + * Used by SendInput to store information for synthesizing input events such + * as keystrokes, mouse movement, and mouse clicks. + */ + public static class INPUT extends Structure { + + public static final int INPUT_MOUSE = 0; + public static final int INPUT_KEYBOARD = 1; + public static final int INPUT_HARDWARE = 2; + + public static class ByReference extends INPUT implements + Structure.ByReference { + + public ByReference() { + } + + public ByReference(Pointer memory) { + super(memory); + } + } + + public INPUT() { + } + + public INPUT(Pointer memory) { + super(memory); + read(); + } + public WinDef.DWORD type; + public INPUT_UNION input = new INPUT_UNION(); + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"type", "input"}); + } + + public static class INPUT_UNION extends Union { + + public INPUT_UNION() { + } + + public INPUT_UNION(Pointer memory) { + super(memory); + read(); + } + public MOUSEINPUT mi; + public KEYBDINPUT ki; + public HARDWAREINPUT hi; + } + } + + /** + * Contains information about a simulated keyboard event. + */ + public static class KEYBDINPUT extends Structure { + + /** + * If specified, the scan code was preceded by a prefix byte that has + * the value 0xE0 (224). + */ + public static final int KEYEVENTF_EXTENDEDKEY = 0x0001; + /** + * If specified, the key is being released. If not specified, the key is + * being pressed. + */ + public static final int KEYEVENTF_KEYUP = 0x0002; + /** + * If specified, the system synthesizes a VK_PACKET keystroke. The wVk + * parameter must be zero. This flag can only be combined with the + * KEYEVENTF_KEYUP flag. For more information, see the Remarks section. + */ + public static final int KEYEVENTF_UNICODE = 0x0004; + /** + * If specified, wScan identifies the key and wVk is ignored. + */ + public static final int KEYEVENTF_SCANCODE = 0x0008; + + public static class ByReference extends KEYBDINPUT implements + Structure.ByReference { + + public ByReference() { + } + + public ByReference(Pointer memory) { + super(memory); + } + } + + public KEYBDINPUT() { + } + + public KEYBDINPUT(Pointer memory) { + super(memory); + read(); + } + /** + * A virtual-key code. The code must be a value in the range 1 to 254. + * If the dwFlags member specifies KEYEVENTF_UNICODE, wVk must be 0. + */ + public WinDef.WORD wVk; + /** + * A hardware scan code for the key. If dwFlags specifies + * KEYEVENTF_UNICODE, wScan specifies a Unicode character which is to be + * sent to the foreground application. + */ + public WinDef.WORD wScan; + /** + * Specifies various aspects of a keystroke. This member can be certain + * combinations of the following values. + */ + public WinDef.DWORD dwFlags; + /** + * The time stamp for the event, in milliseconds. If this parameter is + * zero, the system will provide its own time stamp. + */ + public WinDef.DWORD time; + /** + * An additional value associated with the keystroke. Use the + * GetMessageExtraInfo function to obtain this information. + */ + public BaseTSD.ULONG_PTR dwExtraInfo; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"wVk", "wScan", "dwFlags", + "time", "dwExtraInfo"}); + } + } + + /** + * Contains information about a simulated mouse event. + */ + public static class MOUSEINPUT extends Structure { + + public static class ByReference extends MOUSEINPUT implements + Structure.ByReference { + + public ByReference() { + } + + public ByReference(Pointer memory) { + super(memory); + } + } + + public MOUSEINPUT() { + } + + public MOUSEINPUT(Pointer memory) { + super(memory); + read(); + } + public WinDef.LONG dx; + public WinDef.LONG dy; + public WinDef.DWORD mouseData; + public WinDef.DWORD dwFlags; + public WinDef.DWORD time; + public BaseTSD.ULONG_PTR dwExtraInfo; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"dx", "dy", "mouseData", + "dwFlags", "time", "dwExtraInfo"}); + } + } + + /** + * Contains the time of the last input. + */ + public static class LASTINPUTINFO extends Structure { + + public int cbSize = size(); + // Tick count of when the last input event was received. + public int dwTime; + + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"cbSize", "dwTime"}); + } + } + + /** + * Contains window class information. It is used with the RegisterClassEx + * and GetClassInfoEx functions. + * + * The WNDCLASSEX structure is similar to the WNDCLASS structure. There are + * two differences. WNDCLASSEX includes the cbSize member, which specifies + * the size of the structure, and the hIconSm member, which contains a + * handle to a small icon associated with the window class. + */ + public class WNDCLASSEX extends Structure { + + /** + * The Class ByReference. + */ + public static class ByReference extends WNDCLASSEX implements + Structure.ByReference { + } + + /** + * Instantiates a new wndclassex. + */ + public WNDCLASSEX() { + } + + /** + * Instantiates a new wndclassex. + * + * @param memory the memory + */ + public WNDCLASSEX(Pointer memory) { + super(memory); + read(); + } + /** + * The cb size. + */ + public int cbSize = this.size(); + /** + * The style. + */ + public int style; + /** + * The lpfn wnd proc. + */ + public Callback lpfnWndProc; + /** + * The cb cls extra. + */ + public int cbClsExtra; + /** + * The cb wnd extra. + */ + public int cbWndExtra; + /** + * The h instance. + */ + public HINSTANCE hInstance; + /** + * The h icon. + */ + public HICON hIcon; + /** + * The h cursor. + */ + public HCURSOR hCursor; + /** + * The hbr background. + */ + public HBRUSH hbrBackground; + /** + * The lpsz menu name. + */ + public String lpszMenuName; + /** + * The lpsz class name. + */ + public WString lpszClassName; + /** + * The h icon sm. + */ + public HICON hIconSm; + + /* + * (non-Javadoc) + * + * @see com.sun.jna.Structure#getFieldOrder() + */ + @Override + protected List getFieldOrder() { + return Arrays.asList(new String[]{"cbSize", "style", + "lpfnWndProc", "cbClsExtra", "cbWndExtra", "hInstance", + "hIcon", "hCursor", "hbrBackground", "lpszMenuName", + "lpszClassName", "hIconSm"}); + } + } + + /** + * An application-defined function that processes messages sent to a window. + * The WNDPROC type defines a pointer to this callback function. + * + * WindowProc is a placeholder for the application-defined function name. + */ + public interface WindowProc extends Callback { + + /** + * @param hwnd [in] Type: HWND + * + * A handle to the window. + * + * @param uMsg [in] Type: UINT + * + * The message. + * + * For lists of the system-provided messages, see System-Defined + * Messages. + * + * @param wParam [in] Type: WPARAM + * + * Additional message information. The contents of this parameter depend + * on the value of the uMsg parameter. + * + * @param lParam [in] Type: LPARAM + * + * Additional message information. The contents of this parameter depend + * on the value of the uMsg parameter. + * + * @return the lresult + */ + LRESULT callback(HWND hwnd, int uMsg, WPARAM wParam, LPARAM lParam); + } +} diff --git a/testdata/sampleflash/sample.html b/testdata/sampleflash/sample.html new file mode 100644 index 0000000..127cc1f --- /dev/null +++ b/testdata/sampleflash/sample.html @@ -0,0 +1,49 @@ + + + + sample + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + Get Adobe Flash player + + + + + +
+ + diff --git a/testdata/sampleflash/sample.swf b/testdata/sampleflash/sample.swf new file mode 100644 index 0000000..c667661 Binary files /dev/null and b/testdata/sampleflash/sample.swf differ diff --git a/testdata/sampleflash/sample/DOMDocument.xml b/testdata/sampleflash/sample/DOMDocument.xml new file mode 100644 index 0000000..8489078 --- /dev/null +++ b/testdata/sampleflash/sample/DOMDocument.xml @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/testdata/sampleflash/sample/LIBRARY/Symbol 1.xml b/testdata/sampleflash/sample/LIBRARY/Symbol 1.xml new file mode 100644 index 0000000..060fb8d --- /dev/null +++ b/testdata/sampleflash/sample/LIBRARY/Symbol 1.xml @@ -0,0 +1,94 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/testdata/sampleflash/sample/LIBRARY/Tween 1.xml b/testdata/sampleflash/sample/LIBRARY/Tween 1.xml new file mode 100644 index 0000000..e3a630c --- /dev/null +++ b/testdata/sampleflash/sample/LIBRARY/Tween 1.xml @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/testdata/sampleflash/sample/LIBRARY/Tween 2.xml b/testdata/sampleflash/sample/LIBRARY/Tween 2.xml new file mode 100644 index 0000000..eb9e444 --- /dev/null +++ b/testdata/sampleflash/sample/LIBRARY/Tween 2.xml @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/testdata/sampleflash/sample/LIBRARY/Tween 3.xml b/testdata/sampleflash/sample/LIBRARY/Tween 3.xml new file mode 100644 index 0000000..5027bff --- /dev/null +++ b/testdata/sampleflash/sample/LIBRARY/Tween 3.xml @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/testdata/sampleflash/sample/LIBRARY/circle.xml b/testdata/sampleflash/sample/LIBRARY/circle.xml new file mode 100644 index 0000000..4e78ead --- /dev/null +++ b/testdata/sampleflash/sample/LIBRARY/circle.xml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/testdata/sampleflash/sample/LIBRARY/head.xml b/testdata/sampleflash/sample/LIBRARY/head.xml new file mode 100644 index 0000000..fff06e6 --- /dev/null +++ b/testdata/sampleflash/sample/LIBRARY/head.xml @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/testdata/sampleflash/sample/LIBRARY/mouth.xml b/testdata/sampleflash/sample/LIBRARY/mouth.xml new file mode 100644 index 0000000..cc20924 --- /dev/null +++ b/testdata/sampleflash/sample/LIBRARY/mouth.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/testdata/sampleflash/sample/META-INF/metadata.xml b/testdata/sampleflash/sample/META-INF/metadata.xml new file mode 100644 index 0000000..d286e11 --- /dev/null +++ b/testdata/sampleflash/sample/META-INF/metadata.xml @@ -0,0 +1,55 @@ + + + + + Adobe Flash Professional CS6 - build 537 + 2014-10-04T15:25:40+02:00 + 2014-10-04T15:34:17+02:00 + 2014-10-04T15:34:17+02:00 + + + application/vnd.adobe.fla + + + xmp.iid:EE83DA23CB4BE4119705DBC1440EDD5F + xmp.did:EE83DA23CB4BE4119705DBC1440EDD5F + xmp.did:EE83DA23CB4BE4119705DBC1440EDD5F + + + + created + xmp.iid:EE83DA23CB4BE4119705DBC1440EDD5F + 2014-10-04T15:25:40+02:00 + Adobe Flash Professional CS6 - build 537 + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/testdata/sampleflash/sample/MobileSettings.xml b/testdata/sampleflash/sample/MobileSettings.xml new file mode 100644 index 0000000..e69de29 diff --git a/testdata/sampleflash/sample/PublishSettings.xml b/testdata/sampleflash/sample/PublishSettings.xml new file mode 100644 index 0000000..8507265 --- /dev/null +++ b/testdata/sampleflash/sample/PublishSettings.xml @@ -0,0 +1,206 @@ + + + + 1 + 1 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + sample.swf + sample.exe + sample.app + sample.html + sample.gif + sample.jpg + sample.png + sample.mov + sample.smil + sample.swc + + + 0 + 11,4,0,0;11,3,0,0;11,2,0,0;11,1,0,0;10,3,0,0;10,2,153,0;10,1,52,0;9,0,124,0;8,0,24,0;7,0,14,0;6,0,79,0;5,0,58,0;4,0,32,0;3,0,8,0;2,0,1,12;1,0,0,1; + 1 + 1 + sample_content.html + sample_alternate.html + 0 + + 550 + 400 + 0 + 0 + 1 + 0 + 0 + 1 + 1 + 4 + 0 + 0 + 1 + 0 + C:\Users\Jindra\AppData\Local\Adobe\Flash CS6\en_US\Configuration\HTML\Default.html + 1 + + + + + 0 + 0 + 0 + 80 + 0 + 0 + 7 + 0 + 7 + 0 + 17 + FlashPlayer11.4 + 2 + 1 + + . + CONFIG::FLASH_AUTHORING="true"; + 0 + + 1 + 0 + 1 + 0 + 0 + 0 + 0 + + 2 + 4 + 4096 + AS3 + 1 + 1 + 0 + 15 + 1 + 0 + 4102 + rsl + wrap + $(AppConfig)/ActionScript 3.0/rsls/loader_animation.swf + + + $(AppConfig)/ActionScript 3.0/libs + merge + + + $(AppConfig)/ActionScript 3.0/libs/11.0/textLayout.swc + rsl + http://fpdownload.adobe.com/pub/swz/tlf/2.0.0.232/textLayout_2.0.0.232.swz + http://fpdownload.adobe.com/pub/swz/crossdomain.xml + textLayout_2.0.0.232.swz + + + + + $(AppConfig)/ActionScript 3.0/libs/11.0/textLayout.swc + + http://fpdownload.adobe.com/pub/swz/tlf/2.0.0.232/textLayout_2.0.0.232.swz + http://fpdownload.adobe.com/pub/swz/crossdomain.xml + textLayout_2.0.0.232.swz + + + + + 550 + 400 + 0 + 4718592 + 0 + 80 + 1 + + + 1 + 0 + 1 + 0 + 0 + 100000 + 1 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + + + 550 + 400 + 0 + 1 + 1 + + 1 + 0 + 1 + 0 + 0 + + 128 + + + 255 + + + + 550 + 400 + 1 + 0 + 0 + 1 + 0 + 0 + 1 + + + + 24-bit with Alpha + 255 + + + + 550 + 400 + 1 + 0 + + + 00000000 + 0 + 0 + 0 + 0 + 1 + + + \ No newline at end of file diff --git a/testdata/sampleflash/sample/bin/SymDepend.cache b/testdata/sampleflash/sample/bin/SymDepend.cache new file mode 100644 index 0000000..20edf5e Binary files /dev/null and b/testdata/sampleflash/sample/bin/SymDepend.cache differ diff --git a/testdata/sampleflash/sample/sample.xfl b/testdata/sampleflash/sample/sample.xfl new file mode 100644 index 0000000..860a820 --- /dev/null +++ b/testdata/sampleflash/sample/sample.xfl @@ -0,0 +1 @@ +PROXY-CS5 \ No newline at end of file