📄 jwawbemcli.pas
字号:
{******************************************************************************}
{ }
{ WBEM Client interface Unit for Object Pascal }
{ }
{ Portions created by Microsoft are Copyright (C) 1995-2001 Microsoft }
{ Corporation. All Rights Reserved. }
{ }
{ The original file is: wbemcli.idl, released Nov 2002. The original Pascal }
{ code is: WbemCli.pas, released April 2002. The initial developer of the }
{ Pascal code is Marcel van Brakel (brakelm@chello.nl). }
{ }
{ Portions created by Marcel van Brakel are Copyright (C) 1999-2001 }
{ Marcel van Brakel. All Rights Reserved. }
{ }
{ Obtained through: Joint Endeavour of Delphi Innovators (Project JEDI) }
{ }
{ You may retrieve the latest version of this file at the Project JEDI home }
{ page, located at http://delphi-jedi.org or my personal homepage located at }
{ http://members.chello.nl/m.vanbrakel2 }
{ }
{ The contents of this file are used with permission, subject to the Mozilla }
{ Public License Version 1.1 (the "License"); you may not use this file except }
{ in compliance with the License. You may obtain a copy of the License at }
{ http://www.mozilla.org/MPL/MPL-1.1.html }
{ }
{ Software distributed under the License is distributed on an "AS IS" basis, }
{ WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for }
{ the specific language governing rights and limitations under the License. }
{ }
{ Alternatively, the contents of this file may be used under the terms of the }
{ GNU Lesser General Public License (the "LGPL License"), in which case the }
{ provisions of the LGPL License are applicable instead of those above. }
{ If you wish to allow use of your version of this file only under the terms }
{ of the LGPL License and not to allow others to use your version of this file }
{ under the MPL, indicate your decision by deleting the provisions above and }
{ replace them with the notice and other provisions required by the LGPL }
{ License. If you do not delete the provisions above, a recipient may use }
{ your version of this file under either the MPL or the LGPL License. }
{ }
{ For more information about the LGPL: http://www.gnu.org/copyleft/lesser.html }
{ }
{******************************************************************************}
unit JwaWbemCli;
{$WEAKPACKAGEUNIT}
{$HPPEMIT ''}
{$HPPEMIT '#include "wbemcli.h"'}
{$HPPEMIT ''}
{$I WINDEFINES.INC}
interface
uses
ActiveX, JwaWinType;
type
tag_WBEM_GENUS_TYPE = DWORD;
{$EXTERNALSYM tag_WBEM_GENUS_TYPE}
WBEM_GENUS_TYPE = tag_WBEM_GENUS_TYPE;
{$EXTERNALSYM WBEM_GENUS_TYPE}
TWbemGenusType = WBEM_GENUS_TYPE;
{$EXTERNALSYM TWbemGenusType}
const
WBEM_GENUS_CLASS = 1;
{$EXTERNALSYM WBEM_GENUS_CLASS}
WBEM_GENUS_INSTANCE = 2;
{$EXTERNALSYM WBEM_GENUS_INSTANCE}
type
tag_WBEM_CHANGE_FLAG_TYPE = DWORD;
{$EXTERNALSYM tag_WBEM_CHANGE_FLAG_TYPE}
WBEM_CHANGE_FLAG_TYPE = tag_WBEM_CHANGE_FLAG_TYPE;
{$EXTERNALSYM WBEM_CHANGE_FLAG_TYPE}
TWbemChangeFlagType = WBEM_CHANGE_FLAG_TYPE;
{$EXTERNALSYM TWbemChangeFlagType}
const
WBEM_FLAG_CREATE_OR_UPDATE = $0;
{$EXTERNALSYM WBEM_FLAG_CREATE_OR_UPDATE}
WBEM_FLAG_UPDATE_ONLY = $1;
{$EXTERNALSYM WBEM_FLAG_UPDATE_ONLY}
WBEM_FLAG_CREATE_ONLY = $2;
{$EXTERNALSYM WBEM_FLAG_CREATE_ONLY}
WBEM_FLAG_UPDATE_COMPATIBLE = $0;
{$EXTERNALSYM WBEM_FLAG_UPDATE_COMPATIBLE}
WBEM_FLAG_UPDATE_SAFE_MODE = $20;
{$EXTERNALSYM WBEM_FLAG_UPDATE_SAFE_MODE}
WBEM_FLAG_UPDATE_FORCE_MODE = $40;
{$EXTERNALSYM WBEM_FLAG_UPDATE_FORCE_MODE}
WBEM_MASK_UPDATE_MODE = $60;
{$EXTERNALSYM WBEM_MASK_UPDATE_MODE}
WBEM_FLAG_ADVISORY = $10000;
{$EXTERNALSYM WBEM_FLAG_ADVISORY}
type
tag_WBEM_GENERIC_FLAG_TYPE = DWORD;
{$EXTERNALSYM tag_WBEM_GENERIC_FLAG_TYPE}
WBEM_GENERIC_FLAG_TYPE = tag_WBEM_GENERIC_FLAG_TYPE;
{$EXTERNALSYM WBEM_GENERIC_FLAG_TYPE}
TWbemGenericFlagType = WBEM_GENERIC_FLAG_TYPE;
{$EXTERNALSYM TWbemGenericFlagType}
const
WBEM_FLAG_RETURN_IMMEDIATELY = $10;
{$EXTERNALSYM WBEM_FLAG_RETURN_IMMEDIATELY}
WBEM_FLAG_RETURN_WBEM_COMPLETE = $0;
{$EXTERNALSYM WBEM_FLAG_RETURN_WBEM_COMPLETE}
WBEM_FLAG_BIDIRECTIONAL = $0;
{$EXTERNALSYM WBEM_FLAG_BIDIRECTIONAL}
WBEM_FLAG_FORWARD_ONLY = $20;
{$EXTERNALSYM WBEM_FLAG_FORWARD_ONLY}
WBEM_FLAG_NO_ERROR_OBJECT = $40;
{$EXTERNALSYM WBEM_FLAG_NO_ERROR_OBJECT}
WBEM_FLAG_RETURN_ERROR_OBJECT = $0;
{$EXTERNALSYM WBEM_FLAG_RETURN_ERROR_OBJECT}
WBEM_FLAG_SEND_STATUS = $80;
{$EXTERNALSYM WBEM_FLAG_SEND_STATUS}
WBEM_FLAG_DONT_SEND_STATUS = $0;
{$EXTERNALSYM WBEM_FLAG_DONT_SEND_STATUS}
WBEM_FLAG_ENSURE_LOCATABLE = $100;
{$EXTERNALSYM WBEM_FLAG_ENSURE_LOCATABLE}
WBEM_FLAG_DIRECT_READ = $200;
{$EXTERNALSYM WBEM_FLAG_DIRECT_READ}
WBEM_FLAG_SEND_ONLY_SELECTED = $0;
{$EXTERNALSYM WBEM_FLAG_SEND_ONLY_SELECTED}
WBEM_RETURN_WHEN_COMPLETE = $0;
{$EXTERNALSYM WBEM_RETURN_WHEN_COMPLETE}
WBEM_RETURN_IMMEDIATELY = $10;
{$EXTERNALSYM WBEM_RETURN_IMMEDIATELY}
WBEM_MASK_RESERVED_FLAGS = $1f000;
{$EXTERNALSYM WBEM_MASK_RESERVED_FLAGS}
WBEM_FLAG_USE_AMENDED_QUALIFIERS = $20000;
{$EXTERNALSYM WBEM_FLAG_USE_AMENDED_QUALIFIERS}
WBEM_FLAG_STRONG_VALIDATION = $100000;
{$EXTERNALSYM WBEM_FLAG_STRONG_VALIDATION}
type
tag_WBEM_STATUS_TYPE = DWORD;
{$EXTERNALSYM tag_WBEM_STATUS_TYPE}
WBEM_STATUS_TYPE = tag_WBEM_STATUS_TYPE;
{$EXTERNALSYM WBEM_STATUS_TYPE}
TWbemStatusType = WBEM_STATUS_TYPE;
{$EXTERNALSYM TWbemStatusType}
const
WBEM_STATUS_COMPLETE = 0;
{$EXTERNALSYM WBEM_STATUS_COMPLETE}
WBEM_STATUS_REQUIREMENTS = 1;
{$EXTERNALSYM WBEM_STATUS_REQUIREMENTS}
WBEM_STATUS_PROGRESS = 2;
{$EXTERNALSYM WBEM_STATUS_PROGRESS}
type
tag_WBEM_TIMEOUT_TYPE = DWORD;
{$EXTERNALSYM tag_WBEM_TIMEOUT_TYPE}
WBEM_TIMEOUT_TYPE = tag_WBEM_TIMEOUT_TYPE;
{$EXTERNALSYM WBEM_TIMEOUT_TYPE}
TWbemTimeoutType = WBEM_TIMEOUT_TYPE;
{$EXTERNALSYM TWbemTimeoutType}
const
WBEM_NO_WAIT = 0;
{$EXTERNALSYM WBEM_NO_WAIT}
WBEM_INFINITE = DWORD($ffffffff);
{$EXTERNALSYM WBEM_INFINITE}
type
tag_WBEM_CONDITION_FLAG_TYPE = DWORD;
{$EXTERNALSYM tag_WBEM_CONDITION_FLAG_TYPE}
WBEM_CONDITION_FLAG_TYPE = tag_WBEM_CONDITION_FLAG_TYPE;
{$EXTERNALSYM WBEM_CONDITION_FLAG_TYPE}
TWbemConditionFlagType = WBEM_CONDITION_FLAG_TYPE;
{$EXTERNALSYM TWbemConditionFlagType}
const
WBEM_FLAG_ALWAYS = $0;
{$EXTERNALSYM WBEM_FLAG_ALWAYS}
WBEM_FLAG_ONLY_IF_TRUE = $1;
{$EXTERNALSYM WBEM_FLAG_ONLY_IF_TRUE}
WBEM_FLAG_ONLY_IF_FALSE = $2;
{$EXTERNALSYM WBEM_FLAG_ONLY_IF_FALSE}
WBEM_FLAG_ONLY_IF_IDENTICAL = $3;
{$EXTERNALSYM WBEM_FLAG_ONLY_IF_IDENTICAL}
WBEM_MASK_PRIMARY_CONDITION = $3;
{$EXTERNALSYM WBEM_MASK_PRIMARY_CONDITION}
WBEM_FLAG_KEYS_ONLY = $4;
{$EXTERNALSYM WBEM_FLAG_KEYS_ONLY}
WBEM_FLAG_REFS_ONLY = $8;
{$EXTERNALSYM WBEM_FLAG_REFS_ONLY}
WBEM_FLAG_LOCAL_ONLY = $10;
{$EXTERNALSYM WBEM_FLAG_LOCAL_ONLY}
WBEM_FLAG_PROPAGATED_ONLY = $20;
{$EXTERNALSYM WBEM_FLAG_PROPAGATED_ONLY}
WBEM_FLAG_SYSTEM_ONLY = $30;
{$EXTERNALSYM WBEM_FLAG_SYSTEM_ONLY}
WBEM_FLAG_NONSYSTEM_ONLY = $40;
{$EXTERNALSYM WBEM_FLAG_NONSYSTEM_ONLY}
WBEM_MASK_CONDITION_ORIGIN = $70;
{$EXTERNALSYM WBEM_MASK_CONDITION_ORIGIN}
WBEM_FLAG_CLASS_OVERRIDES_ONLY = $100;
{$EXTERNALSYM WBEM_FLAG_CLASS_OVERRIDES_ONLY}
WBEM_FLAG_CLASS_LOCAL_AND_OVERRIDES = $200;
{$EXTERNALSYM WBEM_FLAG_CLASS_LOCAL_AND_OVERRIDES}
WBEM_MASK_CLASS_CONDITION = $300;
{$EXTERNALSYM WBEM_MASK_CLASS_CONDITION}
type
tag_WBEM_FLAVOR_TYPE = DWORD;
{$EXTERNALSYM tag_WBEM_FLAVOR_TYPE}
WBEM_FLAVOR_TYPE = tag_WBEM_FLAVOR_TYPE;
{$EXTERNALSYM WBEM_FLAVOR_TYPE}
TWbemFlavorType = WBEM_FLAVOR_TYPE;
{$EXTERNALSYM TWbemFlavorType}
const
WBEM_FLAVOR_DONT_PROPAGATE = $0;
{$EXTERNALSYM WBEM_FLAVOR_DONT_PROPAGATE}
WBEM_FLAVOR_FLAG_PROPAGATE_TO_INSTANCE = $1;
{$EXTERNALSYM WBEM_FLAVOR_FLAG_PROPAGATE_TO_INSTANCE}
WBEM_FLAVOR_FLAG_PROPAGATE_TO_DERIVED_CLASS = $2;
{$EXTERNALSYM WBEM_FLAVOR_FLAG_PROPAGATE_TO_DERIVED_CLASS}
WBEM_FLAVOR_MASK_PROPAGATION = $f;
{$EXTERNALSYM WBEM_FLAVOR_MASK_PROPAGATION}
WBEM_FLAVOR_OVERRIDABLE = $0;
{$EXTERNALSYM WBEM_FLAVOR_OVERRIDABLE}
WBEM_FLAVOR_NOT_OVERRIDABLE = $10;
{$EXTERNALSYM WBEM_FLAVOR_NOT_OVERRIDABLE}
WBEM_FLAVOR_MASK_PERMISSIONS = $10;
{$EXTERNALSYM WBEM_FLAVOR_MASK_PERMISSIONS}
WBEM_FLAVOR_ORIGIN_LOCAL = $0;
{$EXTERNALSYM WBEM_FLAVOR_ORIGIN_LOCAL}
WBEM_FLAVOR_ORIGIN_PROPAGATED = $20;
{$EXTERNALSYM WBEM_FLAVOR_ORIGIN_PROPAGATED}
WBEM_FLAVOR_ORIGIN_SYSTEM = $40;
{$EXTERNALSYM WBEM_FLAVOR_ORIGIN_SYSTEM}
WBEM_FLAVOR_MASK_ORIGIN = $60;
{$EXTERNALSYM WBEM_FLAVOR_MASK_ORIGIN}
WBEM_FLAVOR_NOT_AMENDED = $0;
{$EXTERNALSYM WBEM_FLAVOR_NOT_AMENDED}
WBEM_FLAVOR_AMENDED = $80;
{$EXTERNALSYM WBEM_FLAVOR_AMENDED}
WBEM_FLAVOR_MASK_AMENDED = $80;
{$EXTERNALSYM WBEM_FLAVOR_MASK_AMENDED}
type
tag_WBEM_QUERY_FLAG_TYPE = DWORD;
{$EXTERNALSYM tag_WBEM_QUERY_FLAG_TYPE}
WBEM_QUERY_FLAG_TYPE = tag_WBEM_QUERY_FLAG_TYPE;
{$EXTERNALSYM WBEM_QUERY_FLAG_TYPE}
TWbemQueryFlagType = WBEM_QUERY_FLAG_TYPE;
{$EXTERNALSYM TWbemQueryFlagType}
const
WBEM_FLAG_DEEP = 0;
{$EXTERNALSYM WBEM_FLAG_DEEP}
WBEM_FLAG_SHALLOW = 1;
{$EXTERNALSYM WBEM_FLAG_SHALLOW}
WBEM_FLAG_PROTOTYPE = 2;
{$EXTERNALSYM WBEM_FLAG_PROTOTYPE}
type
tag_WBEM_SECURITY_FLAGS = DWORD;
{$EXTERNALSYM tag_WBEM_SECURITY_FLAGS}
WBEM_SECURITY_FLAGS = tag_WBEM_SECURITY_FLAGS;
{$EXTERNALSYM WBEM_SECURITY_FLAGS}
TWbemSecurityFlags = WBEM_SECURITY_FLAGS;
{$EXTERNALSYM TWbemSecurityFlags}
const
WBEM_ENABLE = $1;
{$EXTERNALSYM WBEM_ENABLE}
WBEM_METHOD_EXECUTE = $2;
{$EXTERNALSYM WBEM_METHOD_EXECUTE}
WBEM_FULL_WRITE_REP = $4;
{$EXTERNALSYM WBEM_FULL_WRITE_REP}
WBEM_PARTIAL_WRITE_REP = $8;
{$EXTERNALSYM WBEM_PARTIAL_WRITE_REP}
WBEM_WRITE_PROVIDER = $10;
{$EXTERNALSYM WBEM_WRITE_PROVIDER}
WBEM_REMOTE_ACCESS = $20;
{$EXTERNALSYM WBEM_REMOTE_ACCESS}
WBEM_RIGHT_SUBSCRIBE = $40;
{$EXTERNALSYM WBEM_RIGHT_SUBSCRIBE}
WBEM_RIGHT_PUBLISH = $80;
{$EXTERNALSYM WBEM_RIGHT_PUBLISH}
type
tag_WBEM_LIMITATION_FLAG_TYPE = DWORD;
{$EXTERNALSYM tag_WBEM_LIMITATION_FLAG_TYPE}
WBEM_LIMITATION_FLAG_TYPE = tag_WBEM_LIMITATION_FLAG_TYPE;
{$EXTERNALSYM WBEM_LIMITATION_FLAG_TYPE}
TWbemLimitationFlagType = WBEM_LIMITATION_FLAG_TYPE;
{$EXTERNALSYM TWbemLimitationFlagType}
const
WBEM_FLAG_EXCLUDE_OBJECT_QUALIFIERS = $10;
{$EXTERNALSYM WBEM_FLAG_EXCLUDE_OBJECT_QUALIFIERS}
WBEM_FLAG_EXCLUDE_PROPERTY_QUALIFIERS = $20;
{$EXTERNALSYM WBEM_FLAG_EXCLUDE_PROPERTY_QUALIFIERS}
type
tag_WBEM_TEXT_FLAG_TYPE = DWORD;
{$EXTERNALSYM tag_WBEM_TEXT_FLAG_TYPE}
WBEM_TEXT_FLAG_TYPE = tag_WBEM_TEXT_FLAG_TYPE;
{$EXTERNALSYM WBEM_TEXT_FLAG_TYPE}
TWbemTextFlagType = WBEM_TEXT_FLAG_TYPE;
{$EXTERNALSYM TWbemTextFlagType}
const
WBEM_FLAG_NO_FLAVORS = $1;
{$EXTERNALSYM WBEM_FLAG_NO_FLAVORS}
type
tag_WBEM_COMPARISON_FLAG = DWORD;
{$EXTERNALSYM tag_WBEM_COMPARISON_FLAG}
WBEM_COMPARISON_FLAG = tag_WBEM_COMPARISON_FLAG;
{$EXTERNALSYM WBEM_COMPARISON_FLAG}
TWbemComparisonFlag = WBEM_COMPARISON_FLAG;
{$EXTERNALSYM TWbemComparisonFlag}
const
WBEM_COMPARISON_INCLUDE_ALL = $0;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -