mirror of
https://github.com/ultimatepp/ultimatepp.git
synced 2026-07-11 22:03:01 -06:00
.SysInfo: Added GetMacAddress and details for new users
git-svn-id: svn://ultimatepp.org/upp/trunk@2465 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
parent
3e4b386ea8
commit
50ecc51c78
16 changed files with 15580 additions and 189 deletions
|
|
@ -7,8 +7,8 @@
|
|||
#include <Winioctl.h>
|
||||
#define CY tagCY
|
||||
// To compile in MinGW copy files Rpcsal.h, DispEx.h, WbemCli.h, WbemDisp.h, Wbemidl.h,
|
||||
// WbemProv.h and WbemTran.h from \Microsoft SDKs\Windows\v6.1\Include to MinGW/include and
|
||||
// wbemuuid.lib from \Microsoft SDKs\Windows\v6.1\Lib to MinGW/lib
|
||||
// WbemProv.h and WbemTran.h from /plugin to MinGW/include and
|
||||
// wbemuuid.lib from /plugin to MinGW/lib
|
||||
#include <rpcsal.h>
|
||||
#include <Wbemidl.h>
|
||||
#include <winnls.h>
|
||||
|
|
@ -227,19 +227,23 @@ bool GetProcessorInfo(int number, String &vendor, String &identifier, String &ar
|
|||
|
||||
return true;
|
||||
}
|
||||
bool GetMacAddress(String &mac) {
|
||||
String GetMacAddress() {
|
||||
Value vmac;
|
||||
if (!GetWMIInfo("Win32_NetworkAdapterConfiguration", "MacAddress", vmac))
|
||||
return false;
|
||||
mac = TrimBoth(vmac);
|
||||
return true;
|
||||
String mac = TrimBoth(vmac);
|
||||
if (mac.GetCount() == 17)
|
||||
return mac;
|
||||
return Null;
|
||||
}
|
||||
bool GetHDSerial(String &serial) {
|
||||
String GetHDSerial() {
|
||||
Value vmbSerial;
|
||||
if (!GetWMIInfo("Win32_PhysicalMedia", "SerialNumber", vmbSerial))
|
||||
return false;
|
||||
serial = TrimBoth(vmbSerial);
|
||||
return true;
|
||||
String serial = TrimBoth(vmbSerial);
|
||||
if (serial.GetCount() > 0)
|
||||
return serial;
|
||||
return Null;
|
||||
}
|
||||
|
||||
bool GetVideoInfo(Array <Value> &name, Array <Value> &description, Array <Value> &videoProcessor, Array <Value> &ram, Array <Value> &videoMode) {
|
||||
|
|
@ -385,6 +389,16 @@ double GetCpuTemperature() {
|
|||
}
|
||||
return Null;
|
||||
}
|
||||
String GetMacAddress() {
|
||||
StringParse data = Sys("ifconfig -a");
|
||||
|
||||
data.GoAfter("eth0");
|
||||
data.GoAfter("HWaddr");
|
||||
String ret = data.GetText(" ");
|
||||
if (ret.GetCount() == 17)
|
||||
return ret;
|
||||
return Null;
|
||||
}
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
|
|
|
|||
|
|
@ -1,147 +1,147 @@
|
|||
#ifndef _SysInfo_SysInfo_h
|
||||
#define _SysInfo_SysInfo_h
|
||||
|
||||
#include "Functions4U/Functions4U.h"
|
||||
|
||||
using namespace Upp;
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
// Processor Info
|
||||
void GetSystemInfo(String &manufacturer, String &productName, String &version, int &numberOfProcessors, String &mbSerial);
|
||||
void GetBiosInfo(String &biosVersion, Date &biosReleaseDate, String &biosSerial);
|
||||
bool GetProcessorInfo(int number, String &vendor, String &identifier, String &architecture, int &speed);
|
||||
// Gets the real CPU speed in MHz
|
||||
int GetCpuSpeed();
|
||||
double GetCpuTemperature();
|
||||
|
||||
#if defined(PLATFORM_WIN32)
|
||||
bool GetVideoInfo(Array <Value> &name, Array <Value> &description, Array <Value> &videoProcessor,
|
||||
Array <Value> &ram, Array <Value> &videoMode);
|
||||
bool GetPackagesInfo(Array <Value> &name, Array <Value> &version, Array <Value> &vendor,
|
||||
Array <Value> &installDate, Array <Value> &caption, Array <Value> &description, Array <Value> &state);
|
||||
bool GetMacAddress(String &mac);
|
||||
bool GetHDSerial(String &serial);
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
// Memory Info
|
||||
bool GetMemoryInfo(int &memoryLoad, uint64 &totalPhys, uint64 &freePhys, uint64 &totalPageFile, uint64 &freePageFile, uint64 &totalVirtual, uint64 &freeVirtual);
|
||||
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
// Windows list
|
||||
// They get arrays with handles to all the opened windows with additional info as
|
||||
// pid: Handle to the process that manages the window
|
||||
// name: Window name
|
||||
// fileName: Window process program file name
|
||||
// title: Window title (caption)
|
||||
void GetWindowsList(Array<long> &wid, Array<long> &pid, Array<String> &name, Array<String> &fileName, Array<String> &title);
|
||||
Array<long> GetWindowsList();
|
||||
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
// Process list
|
||||
// They get arrays with handles to all the opened processes and process names
|
||||
bool GetProcessList(Array<long> &pid, Array<String> &pNames);
|
||||
Array<long> GetProcessList();
|
||||
String GetProcessName(long pid);
|
||||
// Gets the program file name of a process
|
||||
String GetProcessFileName(long processID);
|
||||
|
||||
// Gets the process id of a program with a window with certain title
|
||||
long GetProcessIdFromWindowCaption(String windowCaption, bool exactMatch = false);
|
||||
|
||||
long GetWindowIdFromCaption(String windowCaption, bool exactMatch = false);
|
||||
|
||||
long GetProcessIdFromWindowId(long wid);
|
||||
long GetWindowIdFromProcessId(long pid);
|
||||
|
||||
// Ends a process by any means
|
||||
bool ProcessTerminate(long pid, int timeout = 500);
|
||||
|
||||
// Gets the process priority as a number from 0 (minimum) to 10 (maximum)
|
||||
int GetProcessPriority(long pid);
|
||||
bool SetProcessPriority(long pid, int priority);
|
||||
|
||||
// True if a process with handle pid exists
|
||||
bool ProcessExists(long pid);
|
||||
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
// Os Info
|
||||
bool GetOsInfo(String &kernel, String &kerVersion, String &kerArchitecture, String &distro, String &distVersion, String &desktop, String &deskVersion);
|
||||
String GetDesktopManagerNew();
|
||||
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
// Get drives info
|
||||
// Return false if drive is not mounted or it is not accesible
|
||||
bool GetDriveSpace(String drive, uint64 &freeBytesUser, uint64 &totalBytesUser, uint64 &totalFreeBytes);
|
||||
bool GetDriveInformation(String drive, String &type, String &volume, /*uint64 &serial, */int &maxName, String &fileSystem);
|
||||
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
// Others
|
||||
// Gets process id
|
||||
long GetProcessId();
|
||||
|
||||
// I tries to "logoff", "reboot" or "shutdown"
|
||||
bool Shutdown(String action);
|
||||
|
||||
// It gets compiler info
|
||||
void GetCompilerInfo(String &name, int &version, String &date);
|
||||
|
||||
// It gets info about the battery status
|
||||
bool GetBatteryStatus(bool &discharging, int &percentage, int &remainingMin);
|
||||
// Get if there is battery
|
||||
bool GetBatteryInfo(bool &present/*, int &designCapacity, int &lastFullCapacity, String &vendor, String &type, String &model, String &serial*/);
|
||||
|
||||
bool OpenCDTray(String drive);
|
||||
bool CloseCDTray(String drive);
|
||||
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
// Key and mouse keys
|
||||
|
||||
bool Window_GetRect(long windowId, long &left, long &top, long &right, long &bottom);
|
||||
bool Window_SetRect(long windowId, long left, long top, long right, long bottom);
|
||||
|
||||
bool Mouse_GetPos(long &x, long &y);
|
||||
bool Mouse_SetPos(long x, long y, long windowId);
|
||||
|
||||
void Mouse_LeftClick();
|
||||
void Mouse_LeftDown();
|
||||
void Mouse_LeftUp();
|
||||
void Mouse_MiddleClick();
|
||||
void Mouse_MiddleDown();
|
||||
void Mouse_MiddleUp();
|
||||
void Mouse_RightClick();
|
||||
void Mouse_RightDown();
|
||||
void Mouse_RightUp();
|
||||
void Mouse_LeftDblClick();
|
||||
void Mouse_MiddleDblClick();
|
||||
void Mouse_RightDblClick();
|
||||
|
||||
void Keyb_SendKeys(String text, long finalDelay = 100, long delayBetweenKeys = 50);
|
||||
|
||||
bool Window_SaveCapture(long windowId, String fileName, int left = -1, int top = -1, int width = -1, int height = -1);
|
||||
|
||||
bool Snap_Desktop(String fileName);
|
||||
bool Snap_DesktopRectangle(String fileName, int left, int top, int width, int height);
|
||||
bool Snap_Window(String fileName, long handle);
|
||||
|
||||
bool GetKeyLockStatus(bool &caps, bool &num, bool &scroll);
|
||||
bool SetKeyLockStatus(bool caps, bool num, bool scroll);
|
||||
|
||||
#if defined(PLATFORM_WIN32)
|
||||
|
||||
bool Record_Desktop(String fileName, int duration, int secsFrame = 1, bool viewMouse = true);
|
||||
bool Record_DesktopRectangle(String fileName, int duration, int left, int top, int width, int height, int secsFrame = 1, bool viewMouse = true);
|
||||
bool Record_Window(String fileName, int duration, long handle, int secsFrame = 1, bool viewMouse = true);
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
void SetDesktopWallPaper(const char *path);
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
// Known bugs
|
||||
// GetWindowsList does not get the window title in Kde
|
||||
// Shutdown in Linux only works with option "logoff", probably because of user permissions
|
||||
#ifndef _SysInfo_SysInfo_h
|
||||
#define _SysInfo_SysInfo_h
|
||||
|
||||
#include "Functions4U/Functions4U.h"
|
||||
|
||||
using namespace Upp;
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
// Processor Info
|
||||
void GetSystemInfo(String &manufacturer, String &productName, String &version, int &numberOfProcessors, String &mbSerial);
|
||||
void GetBiosInfo(String &biosVersion, Date &biosReleaseDate, String &biosSerial);
|
||||
bool GetProcessorInfo(int number, String &vendor, String &identifier, String &architecture, int &speed);
|
||||
// Gets the real CPU speed in MHz
|
||||
int GetCpuSpeed();
|
||||
double GetCpuTemperature();
|
||||
String GetMacAddress();
|
||||
|
||||
#if defined(PLATFORM_WIN32)
|
||||
bool GetVideoInfo(Array <Value> &name, Array <Value> &description, Array <Value> &videoProcessor,
|
||||
Array <Value> &ram, Array <Value> &videoMode);
|
||||
bool GetPackagesInfo(Array <Value> &name, Array <Value> &version, Array <Value> &vendor,
|
||||
Array <Value> &installDate, Array <Value> &caption, Array <Value> &description, Array <Value> &state);
|
||||
String GetHDSerial();
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
// Memory Info
|
||||
bool GetMemoryInfo(int &memoryLoad, uint64 &totalPhys, uint64 &freePhys, uint64 &totalPageFile, uint64 &freePageFile, uint64 &totalVirtual, uint64 &freeVirtual);
|
||||
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
// Windows list
|
||||
// They get arrays with handles to all the opened windows with additional info as
|
||||
// pid: Handle to the process that manages the window
|
||||
// name: Window name
|
||||
// fileName: Window process program file name
|
||||
// title: Window title (caption)
|
||||
void GetWindowsList(Array<long> &wid, Array<long> &pid, Array<String> &name, Array<String> &fileName, Array<String> &title);
|
||||
Array<long> GetWindowsList();
|
||||
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
// Process list
|
||||
// They get arrays with handles to all the opened processes and process names
|
||||
bool GetProcessList(Array<long> &pid, Array<String> &pNames);
|
||||
Array<long> GetProcessList();
|
||||
String GetProcessName(long pid);
|
||||
// Gets the program file name of a process
|
||||
String GetProcessFileName(long processID);
|
||||
|
||||
// Gets the process id of a program with a window with certain title
|
||||
long GetProcessIdFromWindowCaption(String windowCaption, bool exactMatch = false);
|
||||
|
||||
long GetWindowIdFromCaption(String windowCaption, bool exactMatch = false);
|
||||
|
||||
long GetProcessIdFromWindowId(long wid);
|
||||
long GetWindowIdFromProcessId(long pid);
|
||||
|
||||
// Ends a process by any means
|
||||
bool ProcessTerminate(long pid, int timeout = 500);
|
||||
|
||||
// Gets the process priority as a number from 0 (minimum) to 10 (maximum)
|
||||
int GetProcessPriority(long pid);
|
||||
bool SetProcessPriority(long pid, int priority);
|
||||
|
||||
// True if a process with handle pid exists
|
||||
bool ProcessExists(long pid);
|
||||
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
// Os Info
|
||||
bool GetOsInfo(String &kernel, String &kerVersion, String &kerArchitecture, String &distro, String &distVersion, String &desktop, String &deskVersion);
|
||||
String GetDesktopManagerNew();
|
||||
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
// Get drives info
|
||||
// Return false if drive is not mounted or it is not accesible
|
||||
bool GetDriveSpace(String drive, uint64 &freeBytesUser, uint64 &totalBytesUser, uint64 &totalFreeBytes);
|
||||
bool GetDriveInformation(String drive, String &type, String &volume, /*uint64 &serial, */int &maxName, String &fileSystem);
|
||||
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
// Others
|
||||
// Gets process id
|
||||
long GetProcessId();
|
||||
|
||||
// I tries to "logoff", "reboot" or "shutdown"
|
||||
bool Shutdown(String action);
|
||||
|
||||
// It gets compiler info
|
||||
void GetCompilerInfo(String &name, int &version, String &date);
|
||||
|
||||
// It gets info about the battery status
|
||||
bool GetBatteryStatus(bool &discharging, int &percentage, int &remainingMin);
|
||||
// Get if there is battery
|
||||
bool GetBatteryInfo(bool &present/*, int &designCapacity, int &lastFullCapacity, String &vendor, String &type, String &model, String &serial*/);
|
||||
|
||||
bool OpenCDTray(String drive);
|
||||
bool CloseCDTray(String drive);
|
||||
|
||||
/////////////////////////////////////////////////////////////////////
|
||||
// Key and mouse keys
|
||||
|
||||
bool Window_GetRect(long windowId, long &left, long &top, long &right, long &bottom);
|
||||
bool Window_SetRect(long windowId, long left, long top, long right, long bottom);
|
||||
|
||||
bool Mouse_GetPos(long &x, long &y);
|
||||
bool Mouse_SetPos(long x, long y, long windowId);
|
||||
|
||||
void Mouse_LeftClick();
|
||||
void Mouse_LeftDown();
|
||||
void Mouse_LeftUp();
|
||||
void Mouse_MiddleClick();
|
||||
void Mouse_MiddleDown();
|
||||
void Mouse_MiddleUp();
|
||||
void Mouse_RightClick();
|
||||
void Mouse_RightDown();
|
||||
void Mouse_RightUp();
|
||||
void Mouse_LeftDblClick();
|
||||
void Mouse_MiddleDblClick();
|
||||
void Mouse_RightDblClick();
|
||||
|
||||
void Keyb_SendKeys(String text, long finalDelay = 100, long delayBetweenKeys = 50);
|
||||
|
||||
bool Window_SaveCapture(long windowId, String fileName, int left = -1, int top = -1, int width = -1, int height = -1);
|
||||
|
||||
bool Snap_Desktop(String fileName);
|
||||
bool Snap_DesktopRectangle(String fileName, int left, int top, int width, int height);
|
||||
bool Snap_Window(String fileName, long handle);
|
||||
|
||||
bool GetKeyLockStatus(bool &caps, bool &num, bool &scroll);
|
||||
bool SetKeyLockStatus(bool caps, bool num, bool scroll);
|
||||
|
||||
#if defined(PLATFORM_WIN32)
|
||||
|
||||
bool Record_Desktop(String fileName, int duration, int secsFrame = 1, bool viewMouse = true);
|
||||
bool Record_DesktopRectangle(String fileName, int duration, int left, int top, int width, int height, int secsFrame = 1, bool viewMouse = true);
|
||||
bool Record_Window(String fileName, int duration, long handle, int secsFrame = 1, bool viewMouse = true);
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
void SetDesktopWallPaper(const char *path);
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
// Known bugs
|
||||
// GetWindowsList does not get the window title in Kde
|
||||
// Shutdown in Linux only works with option "logoff", probably because of user permissions
|
||||
|
|
|
|||
889
bazaar/SysInfo/plugin/DispEx.h
Normal file
889
bazaar/SysInfo/plugin/DispEx.h
Normal file
|
|
@ -0,0 +1,889 @@
|
|||
|
||||
|
||||
/* this ALWAYS GENERATED file contains the definitions for the interfaces */
|
||||
|
||||
|
||||
/* File created by MIDL compiler version 7.00.0499 */
|
||||
/* Compiler settings for dispex.idl:
|
||||
Oicf, W1, Zp8, env=Win32 (32b run)
|
||||
protocol : dce , ms_ext, c_ext, robust
|
||||
error checks: allocation ref bounds_check enum stub_data
|
||||
VC __declspec() decoration level:
|
||||
__declspec(uuid()), __declspec(selectany), __declspec(novtable)
|
||||
DECLSPEC_UUID(), MIDL_INTERFACE()
|
||||
*/
|
||||
//@@MIDL_FILE_HEADING( )
|
||||
|
||||
#pragma warning( disable: 4049 ) /* more than 64k source lines */
|
||||
|
||||
|
||||
/* verify that the <rpcndr.h> version is high enough to compile this file*/
|
||||
#ifndef __REQUIRED_RPCNDR_H_VERSION__
|
||||
#define __REQUIRED_RPCNDR_H_VERSION__ 475
|
||||
#endif
|
||||
|
||||
/* verify that the <rpcsal.h> version is high enough to compile this file*/
|
||||
#ifndef __REQUIRED_RPCSAL_H_VERSION__
|
||||
#define __REQUIRED_RPCSAL_H_VERSION__ 100
|
||||
#endif
|
||||
|
||||
#include "rpc.h"
|
||||
#include "rpcndr.h"
|
||||
|
||||
#ifndef __RPCNDR_H_VERSION__
|
||||
#error this stub requires an updated version of <rpcndr.h>
|
||||
#endif // __RPCNDR_H_VERSION__
|
||||
|
||||
#ifndef COM_NO_WINDOWS_H
|
||||
#include "windows.h"
|
||||
#include "ole2.h"
|
||||
#endif /*COM_NO_WINDOWS_H*/
|
||||
|
||||
#ifndef __dispex_h__
|
||||
#define __dispex_h__
|
||||
|
||||
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
|
||||
#pragma once
|
||||
#endif
|
||||
|
||||
/* Forward Declarations */
|
||||
|
||||
#ifndef __IDispatchEx_FWD_DEFINED__
|
||||
#define __IDispatchEx_FWD_DEFINED__
|
||||
typedef interface IDispatchEx IDispatchEx;
|
||||
#endif /* __IDispatchEx_FWD_DEFINED__ */
|
||||
|
||||
|
||||
#ifndef __IDispError_FWD_DEFINED__
|
||||
#define __IDispError_FWD_DEFINED__
|
||||
typedef interface IDispError IDispError;
|
||||
#endif /* __IDispError_FWD_DEFINED__ */
|
||||
|
||||
|
||||
#ifndef __IVariantChangeType_FWD_DEFINED__
|
||||
#define __IVariantChangeType_FWD_DEFINED__
|
||||
typedef interface IVariantChangeType IVariantChangeType;
|
||||
#endif /* __IVariantChangeType_FWD_DEFINED__ */
|
||||
|
||||
|
||||
#ifndef __IObjectIdentity_FWD_DEFINED__
|
||||
#define __IObjectIdentity_FWD_DEFINED__
|
||||
typedef interface IObjectIdentity IObjectIdentity;
|
||||
#endif /* __IObjectIdentity_FWD_DEFINED__ */
|
||||
|
||||
|
||||
#ifndef __IProvideRuntimeContext_FWD_DEFINED__
|
||||
#define __IProvideRuntimeContext_FWD_DEFINED__
|
||||
typedef interface IProvideRuntimeContext IProvideRuntimeContext;
|
||||
#endif /* __IProvideRuntimeContext_FWD_DEFINED__ */
|
||||
|
||||
|
||||
/* header files for imported files */
|
||||
#include "ocidl.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C"{
|
||||
#endif
|
||||
|
||||
|
||||
/* interface __MIDL_itf_dispex_0000_0000 */
|
||||
/* [local] */
|
||||
|
||||
//=--------------------------------------------------------------------------=
|
||||
// DispEx.h
|
||||
//=--------------------------------------------------------------------------=
|
||||
// (C) Copyright 1997 Microsoft Corporation. All Rights Reserved.
|
||||
//
|
||||
// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
|
||||
// ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
|
||||
// THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
|
||||
// PARTICULAR PURPOSE.
|
||||
//=--------------------------------------------------------------------------=
|
||||
|
||||
#pragma comment(lib,"uuid.lib")
|
||||
|
||||
//---------------------------------------------------------------------------=
|
||||
// IDispatchEx Interfaces.
|
||||
//
|
||||
|
||||
#ifndef DISPEX_H_
|
||||
#define DISPEX_H_
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#include "servprov.h"
|
||||
|
||||
#ifndef _NO_DISPATCHEX_GUIDS
|
||||
|
||||
// {A6EF9860-C720-11d0-9337-00A0C90DCAA9}
|
||||
DEFINE_GUID(IID_IDispatchEx, 0xa6ef9860, 0xc720, 0x11d0, 0x93, 0x37, 0x0, 0xa0, 0xc9, 0xd, 0xca, 0xa9);
|
||||
|
||||
// {A6EF9861-C720-11d0-9337-00A0C90DCAA9}
|
||||
DEFINE_GUID(IID_IDispError, 0xa6ef9861, 0xc720, 0x11d0, 0x93, 0x37, 0x0, 0xa0, 0xc9, 0xd, 0xca, 0xa9);
|
||||
|
||||
// {A6EF9862-C720-11d0-9337-00A0C90DCAA9}
|
||||
DEFINE_GUID(IID_IVariantChangeType, 0xa6ef9862, 0xc720, 0x11d0, 0x93, 0x37, 0x0, 0xa0, 0xc9, 0xd, 0xca, 0xa9);
|
||||
|
||||
// {1F101481-BCCD-11d0-9336-00A0C90DCAA9}
|
||||
DEFINE_GUID(SID_VariantConversion, 0x1f101481, 0xbccd, 0x11d0, 0x93, 0x36, 0x0, 0xa0, 0xc9, 0xd, 0xca, 0xa9);
|
||||
|
||||
// {4717CC40-BCB9-11d0-9336-00A0C90DCAA9}
|
||||
DEFINE_GUID(SID_GetCaller, 0x4717cc40, 0xbcb9, 0x11d0, 0x93, 0x36, 0x0, 0xa0, 0xc9, 0xd, 0xca, 0xa9);
|
||||
|
||||
// {74A5040C-DD0C-48f0-AC85-194C3259180A}
|
||||
DEFINE_GUID(SID_ProvideRuntimeContext, 0x74a5040c, 0xdd0c, 0x48f0, 0xac, 0x85, 0x19, 0x4c, 0x32, 0x59, 0x18, 0xa);
|
||||
|
||||
// {10E2414A-EC59-49d2-BC51-5ADD2C36FEBC}
|
||||
DEFINE_GUID(IID_IProvideRuntimeContext, 0x10e2414a, 0xec59, 0x49d2, 0xbc, 0x51, 0x5a, 0xdd, 0x2c, 0x36, 0xfe, 0xbc);
|
||||
|
||||
// {CA04B7E6-0D21-11d1-8CC5-00C04FC2B085}
|
||||
DEFINE_GUID(IID_IObjectIdentity, 0xca04b7e6, 0xd21, 0x11d1, 0x8c, 0xc5, 0x0, 0xc0, 0x4f, 0xc2, 0xb0, 0x85);
|
||||
|
||||
#define SID_GetScriptSite IID_IActiveScriptSite
|
||||
|
||||
#endif // _NO_DISPATCHEX_GUIDS
|
||||
|
||||
|
||||
#ifndef _NO_DISPATCHEX_CONSTS
|
||||
|
||||
// Input flags for GetDispID
|
||||
#define fdexNameCaseSensitive 0x00000001L
|
||||
#define fdexNameEnsure 0x00000002L
|
||||
#define fdexNameImplicit 0x00000004L
|
||||
#define fdexNameCaseInsensitive 0x00000008L
|
||||
#define fdexNameInternal 0x00000010L
|
||||
#define fdexNameNoDynamicProperties 0x00000020L
|
||||
|
||||
// Output flags for GetMemberProperties
|
||||
#define fdexPropCanGet 0x00000001L
|
||||
#define fdexPropCannotGet 0x00000002L
|
||||
#define fdexPropCanPut 0x00000004L
|
||||
#define fdexPropCannotPut 0x00000008L
|
||||
#define fdexPropCanPutRef 0x00000010L
|
||||
#define fdexPropCannotPutRef 0x00000020L
|
||||
#define fdexPropNoSideEffects 0x00000040L
|
||||
#define fdexPropDynamicType 0x00000080L
|
||||
#define fdexPropCanCall 0x00000100L
|
||||
#define fdexPropCannotCall 0x00000200L
|
||||
#define fdexPropCanConstruct 0x00000400L
|
||||
#define fdexPropCannotConstruct 0x00000800L
|
||||
#define fdexPropCanSourceEvents 0x00001000L
|
||||
#define fdexPropCannotSourceEvents 0x00002000L
|
||||
|
||||
#define grfdexPropCanAll \
|
||||
(fdexPropCanGet | fdexPropCanPut | fdexPropCanPutRef | \
|
||||
fdexPropCanCall | fdexPropCanConstruct | fdexPropCanSourceEvents)
|
||||
#define grfdexPropCannotAll \
|
||||
(fdexPropCannotGet | fdexPropCannotPut | fdexPropCannotPutRef | \
|
||||
fdexPropCannotCall | fdexPropCannotConstruct | fdexPropCannotSourceEvents)
|
||||
#define grfdexPropExtraAll \
|
||||
(fdexPropNoSideEffects | fdexPropDynamicType)
|
||||
#define grfdexPropAll \
|
||||
(grfdexPropCanAll | grfdexPropCannotAll | grfdexPropExtraAll)
|
||||
|
||||
// Input flags for GetNextDispID
|
||||
#define fdexEnumDefault 0x00000001L
|
||||
#define fdexEnumAll 0x00000002L
|
||||
|
||||
// Additional flags for Invoke - when object member is
|
||||
// used as a constructor.
|
||||
#define DISPATCH_CONSTRUCT 0x4000
|
||||
|
||||
// Standard DISPIDs
|
||||
#define DISPID_THIS (-613)
|
||||
#define DISPID_STARTENUM DISPID_UNKNOWN
|
||||
|
||||
#endif //_NO_DISPATCHEX_CONSTS
|
||||
|
||||
|
||||
|
||||
extern RPC_IF_HANDLE __MIDL_itf_dispex_0000_0000_v0_0_c_ifspec;
|
||||
extern RPC_IF_HANDLE __MIDL_itf_dispex_0000_0000_v0_0_s_ifspec;
|
||||
|
||||
#ifndef __IDispatchEx_INTERFACE_DEFINED__
|
||||
#define __IDispatchEx_INTERFACE_DEFINED__
|
||||
|
||||
/* interface IDispatchEx */
|
||||
/* [unique][uuid][object] */
|
||||
|
||||
|
||||
EXTERN_C const IID IID_IDispatchEx;
|
||||
|
||||
#if defined(__cplusplus) && !defined(CINTERFACE)
|
||||
|
||||
MIDL_INTERFACE("A6EF9860-C720-11d0-9337-00A0C90DCAA9")
|
||||
IDispatchEx : public IDispatch
|
||||
{
|
||||
public:
|
||||
virtual HRESULT STDMETHODCALLTYPE GetDispID(
|
||||
/* [in] */ __RPC__in BSTR bstrName,
|
||||
/* [in] */ DWORD grfdex,
|
||||
/* [out] */ __RPC__out DISPID *pid) = 0;
|
||||
|
||||
virtual /* [local] */ HRESULT STDMETHODCALLTYPE InvokeEx(
|
||||
/* [in] */ DISPID id,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [in] */ WORD wFlags,
|
||||
/* [in] */ DISPPARAMS *pdp,
|
||||
/* [out] */ VARIANT *pvarRes,
|
||||
/* [out] */ EXCEPINFO *pei,
|
||||
/* [unique][in] */ IServiceProvider *pspCaller) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE DeleteMemberByName(
|
||||
/* [in] */ __RPC__in BSTR bstrName,
|
||||
/* [in] */ DWORD grfdex) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE DeleteMemberByDispID(
|
||||
/* [in] */ DISPID id) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE GetMemberProperties(
|
||||
/* [in] */ DISPID id,
|
||||
/* [in] */ DWORD grfdexFetch,
|
||||
/* [out] */ __RPC__out DWORD *pgrfdex) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE GetMemberName(
|
||||
/* [in] */ DISPID id,
|
||||
/* [out] */ __RPC__deref_out_opt BSTR *pbstrName) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE GetNextDispID(
|
||||
/* [in] */ DWORD grfdex,
|
||||
/* [in] */ DISPID id,
|
||||
/* [out] */ __RPC__out DISPID *pid) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE GetNameSpaceParent(
|
||||
/* [out] */ __RPC__deref_out_opt IUnknown **ppunk) = 0;
|
||||
|
||||
};
|
||||
|
||||
#else /* C style interface */
|
||||
|
||||
typedef struct IDispatchExVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IDispatchEx * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IDispatchEx * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IDispatchEx * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
|
||||
IDispatchEx * This,
|
||||
/* [out] */ __RPC__out UINT *pctinfo);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
|
||||
IDispatchEx * This,
|
||||
/* [in] */ UINT iTInfo,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [out] */ __RPC__deref_out_opt ITypeInfo **ppTInfo);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
|
||||
IDispatchEx * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [size_is][in] */ __RPC__in_ecount_full(cNames) LPOLESTR *rgszNames,
|
||||
/* [range][in] */ UINT cNames,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [size_is][out] */ __RPC__out_ecount_full(cNames) DISPID *rgDispId);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
|
||||
IDispatchEx * This,
|
||||
/* [in] */ DISPID dispIdMember,
|
||||
/* [in] */ REFIID riid,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [in] */ WORD wFlags,
|
||||
/* [out][in] */ DISPPARAMS *pDispParams,
|
||||
/* [out] */ VARIANT *pVarResult,
|
||||
/* [out] */ EXCEPINFO *pExcepInfo,
|
||||
/* [out] */ UINT *puArgErr);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetDispID )(
|
||||
IDispatchEx * This,
|
||||
/* [in] */ __RPC__in BSTR bstrName,
|
||||
/* [in] */ DWORD grfdex,
|
||||
/* [out] */ __RPC__out DISPID *pid);
|
||||
|
||||
/* [local] */ HRESULT ( STDMETHODCALLTYPE *InvokeEx )(
|
||||
IDispatchEx * This,
|
||||
/* [in] */ DISPID id,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [in] */ WORD wFlags,
|
||||
/* [in] */ DISPPARAMS *pdp,
|
||||
/* [out] */ VARIANT *pvarRes,
|
||||
/* [out] */ EXCEPINFO *pei,
|
||||
/* [unique][in] */ IServiceProvider *pspCaller);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DeleteMemberByName )(
|
||||
IDispatchEx * This,
|
||||
/* [in] */ __RPC__in BSTR bstrName,
|
||||
/* [in] */ DWORD grfdex);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *DeleteMemberByDispID )(
|
||||
IDispatchEx * This,
|
||||
/* [in] */ DISPID id);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetMemberProperties )(
|
||||
IDispatchEx * This,
|
||||
/* [in] */ DISPID id,
|
||||
/* [in] */ DWORD grfdexFetch,
|
||||
/* [out] */ __RPC__out DWORD *pgrfdex);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetMemberName )(
|
||||
IDispatchEx * This,
|
||||
/* [in] */ DISPID id,
|
||||
/* [out] */ __RPC__deref_out_opt BSTR *pbstrName);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetNextDispID )(
|
||||
IDispatchEx * This,
|
||||
/* [in] */ DWORD grfdex,
|
||||
/* [in] */ DISPID id,
|
||||
/* [out] */ __RPC__out DISPID *pid);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetNameSpaceParent )(
|
||||
IDispatchEx * This,
|
||||
/* [out] */ __RPC__deref_out_opt IUnknown **ppunk);
|
||||
|
||||
END_INTERFACE
|
||||
} IDispatchExVtbl;
|
||||
|
||||
interface IDispatchEx
|
||||
{
|
||||
CONST_VTBL struct IDispatchExVtbl *lpVtbl;
|
||||
};
|
||||
|
||||
|
||||
|
||||
#ifdef COBJMACROS
|
||||
|
||||
|
||||
#define IDispatchEx_QueryInterface(This,riid,ppvObject) \
|
||||
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
||||
|
||||
#define IDispatchEx_AddRef(This) \
|
||||
( (This)->lpVtbl -> AddRef(This) )
|
||||
|
||||
#define IDispatchEx_Release(This) \
|
||||
( (This)->lpVtbl -> Release(This) )
|
||||
|
||||
|
||||
#define IDispatchEx_GetTypeInfoCount(This,pctinfo) \
|
||||
( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) )
|
||||
|
||||
#define IDispatchEx_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
|
||||
( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) )
|
||||
|
||||
#define IDispatchEx_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
|
||||
( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) )
|
||||
|
||||
#define IDispatchEx_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
|
||||
( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) )
|
||||
|
||||
|
||||
#define IDispatchEx_GetDispID(This,bstrName,grfdex,pid) \
|
||||
( (This)->lpVtbl -> GetDispID(This,bstrName,grfdex,pid) )
|
||||
|
||||
#define IDispatchEx_InvokeEx(This,id,lcid,wFlags,pdp,pvarRes,pei,pspCaller) \
|
||||
( (This)->lpVtbl -> InvokeEx(This,id,lcid,wFlags,pdp,pvarRes,pei,pspCaller) )
|
||||
|
||||
#define IDispatchEx_DeleteMemberByName(This,bstrName,grfdex) \
|
||||
( (This)->lpVtbl -> DeleteMemberByName(This,bstrName,grfdex) )
|
||||
|
||||
#define IDispatchEx_DeleteMemberByDispID(This,id) \
|
||||
( (This)->lpVtbl -> DeleteMemberByDispID(This,id) )
|
||||
|
||||
#define IDispatchEx_GetMemberProperties(This,id,grfdexFetch,pgrfdex) \
|
||||
( (This)->lpVtbl -> GetMemberProperties(This,id,grfdexFetch,pgrfdex) )
|
||||
|
||||
#define IDispatchEx_GetMemberName(This,id,pbstrName) \
|
||||
( (This)->lpVtbl -> GetMemberName(This,id,pbstrName) )
|
||||
|
||||
#define IDispatchEx_GetNextDispID(This,grfdex,id,pid) \
|
||||
( (This)->lpVtbl -> GetNextDispID(This,grfdex,id,pid) )
|
||||
|
||||
#define IDispatchEx_GetNameSpaceParent(This,ppunk) \
|
||||
( (This)->lpVtbl -> GetNameSpaceParent(This,ppunk) )
|
||||
|
||||
#endif /* COBJMACROS */
|
||||
|
||||
|
||||
#endif /* C style interface */
|
||||
|
||||
|
||||
|
||||
/* [call_as] */ HRESULT STDMETHODCALLTYPE IDispatchEx_RemoteInvokeEx_Proxy(
|
||||
IDispatchEx * This,
|
||||
/* [in] */ DISPID id,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [in] */ DWORD dwFlags,
|
||||
/* [in] */ __RPC__in DISPPARAMS *pdp,
|
||||
/* [out] */ __RPC__out VARIANT *pvarRes,
|
||||
/* [out] */ __RPC__out EXCEPINFO *pei,
|
||||
/* [unique][in] */ __RPC__in_opt IServiceProvider *pspCaller,
|
||||
/* [in] */ UINT cvarRefArg,
|
||||
/* [size_is][in] */ __RPC__in_ecount_full(cvarRefArg) UINT *rgiRefArg,
|
||||
/* [size_is][out][in] */ __RPC__inout_ecount_full(cvarRefArg) VARIANT *rgvarRefArg);
|
||||
|
||||
|
||||
void __RPC_STUB IDispatchEx_RemoteInvokeEx_Stub(
|
||||
IRpcStubBuffer *This,
|
||||
IRpcChannelBuffer *_pRpcChannelBuffer,
|
||||
PRPC_MESSAGE _pRpcMessage,
|
||||
DWORD *_pdwStubPhase);
|
||||
|
||||
|
||||
|
||||
#endif /* __IDispatchEx_INTERFACE_DEFINED__ */
|
||||
|
||||
|
||||
#ifndef __IDispError_INTERFACE_DEFINED__
|
||||
#define __IDispError_INTERFACE_DEFINED__
|
||||
|
||||
/* interface IDispError */
|
||||
/* [unique][uuid][object] */
|
||||
|
||||
|
||||
EXTERN_C const IID IID_IDispError;
|
||||
|
||||
#if defined(__cplusplus) && !defined(CINTERFACE)
|
||||
|
||||
MIDL_INTERFACE("A6EF9861-C720-11d0-9337-00A0C90DCAA9")
|
||||
IDispError : public IUnknown
|
||||
{
|
||||
public:
|
||||
virtual HRESULT STDMETHODCALLTYPE QueryErrorInfo(
|
||||
/* [in] */ GUID guidErrorType,
|
||||
/* [out] */ __RPC__deref_out_opt IDispError **ppde) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE GetNext(
|
||||
/* [out] */ __RPC__deref_out_opt IDispError **ppde) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE GetHresult(
|
||||
/* [out] */ __RPC__out HRESULT *phr) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE GetSource(
|
||||
/* [out] */ __RPC__deref_out_opt BSTR *pbstrSource) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE GetHelpInfo(
|
||||
/* [out] */ __RPC__deref_out_opt BSTR *pbstrFileName,
|
||||
/* [out] */ __RPC__out DWORD *pdwContext) = 0;
|
||||
|
||||
virtual HRESULT STDMETHODCALLTYPE GetDescription(
|
||||
/* [out] */ __RPC__deref_out_opt BSTR *pbstrDescription) = 0;
|
||||
|
||||
};
|
||||
|
||||
#else /* C style interface */
|
||||
|
||||
typedef struct IDispErrorVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IDispError * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IDispError * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IDispError * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryErrorInfo )(
|
||||
IDispError * This,
|
||||
/* [in] */ GUID guidErrorType,
|
||||
/* [out] */ __RPC__deref_out_opt IDispError **ppde);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetNext )(
|
||||
IDispError * This,
|
||||
/* [out] */ __RPC__deref_out_opt IDispError **ppde);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetHresult )(
|
||||
IDispError * This,
|
||||
/* [out] */ __RPC__out HRESULT *phr);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetSource )(
|
||||
IDispError * This,
|
||||
/* [out] */ __RPC__deref_out_opt BSTR *pbstrSource);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetHelpInfo )(
|
||||
IDispError * This,
|
||||
/* [out] */ __RPC__deref_out_opt BSTR *pbstrFileName,
|
||||
/* [out] */ __RPC__out DWORD *pdwContext);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetDescription )(
|
||||
IDispError * This,
|
||||
/* [out] */ __RPC__deref_out_opt BSTR *pbstrDescription);
|
||||
|
||||
END_INTERFACE
|
||||
} IDispErrorVtbl;
|
||||
|
||||
interface IDispError
|
||||
{
|
||||
CONST_VTBL struct IDispErrorVtbl *lpVtbl;
|
||||
};
|
||||
|
||||
|
||||
|
||||
#ifdef COBJMACROS
|
||||
|
||||
|
||||
#define IDispError_QueryInterface(This,riid,ppvObject) \
|
||||
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
||||
|
||||
#define IDispError_AddRef(This) \
|
||||
( (This)->lpVtbl -> AddRef(This) )
|
||||
|
||||
#define IDispError_Release(This) \
|
||||
( (This)->lpVtbl -> Release(This) )
|
||||
|
||||
|
||||
#define IDispError_QueryErrorInfo(This,guidErrorType,ppde) \
|
||||
( (This)->lpVtbl -> QueryErrorInfo(This,guidErrorType,ppde) )
|
||||
|
||||
#define IDispError_GetNext(This,ppde) \
|
||||
( (This)->lpVtbl -> GetNext(This,ppde) )
|
||||
|
||||
#define IDispError_GetHresult(This,phr) \
|
||||
( (This)->lpVtbl -> GetHresult(This,phr) )
|
||||
|
||||
#define IDispError_GetSource(This,pbstrSource) \
|
||||
( (This)->lpVtbl -> GetSource(This,pbstrSource) )
|
||||
|
||||
#define IDispError_GetHelpInfo(This,pbstrFileName,pdwContext) \
|
||||
( (This)->lpVtbl -> GetHelpInfo(This,pbstrFileName,pdwContext) )
|
||||
|
||||
#define IDispError_GetDescription(This,pbstrDescription) \
|
||||
( (This)->lpVtbl -> GetDescription(This,pbstrDescription) )
|
||||
|
||||
#endif /* COBJMACROS */
|
||||
|
||||
|
||||
#endif /* C style interface */
|
||||
|
||||
|
||||
|
||||
|
||||
#endif /* __IDispError_INTERFACE_DEFINED__ */
|
||||
|
||||
|
||||
#ifndef __IVariantChangeType_INTERFACE_DEFINED__
|
||||
#define __IVariantChangeType_INTERFACE_DEFINED__
|
||||
|
||||
/* interface IVariantChangeType */
|
||||
/* [unique][uuid][object] */
|
||||
|
||||
|
||||
EXTERN_C const IID IID_IVariantChangeType;
|
||||
|
||||
#if defined(__cplusplus) && !defined(CINTERFACE)
|
||||
|
||||
MIDL_INTERFACE("A6EF9862-C720-11d0-9337-00A0C90DCAA9")
|
||||
IVariantChangeType : public IUnknown
|
||||
{
|
||||
public:
|
||||
virtual HRESULT STDMETHODCALLTYPE ChangeType(
|
||||
/* [unique][out][in] */ __RPC__inout_opt VARIANT *pvarDst,
|
||||
/* [unique][in] */ __RPC__in_opt VARIANT *pvarSrc,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [in] */ VARTYPE vtNew) = 0;
|
||||
|
||||
};
|
||||
|
||||
#else /* C style interface */
|
||||
|
||||
typedef struct IVariantChangeTypeVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IVariantChangeType * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IVariantChangeType * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IVariantChangeType * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *ChangeType )(
|
||||
IVariantChangeType * This,
|
||||
/* [unique][out][in] */ __RPC__inout_opt VARIANT *pvarDst,
|
||||
/* [unique][in] */ __RPC__in_opt VARIANT *pvarSrc,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [in] */ VARTYPE vtNew);
|
||||
|
||||
END_INTERFACE
|
||||
} IVariantChangeTypeVtbl;
|
||||
|
||||
interface IVariantChangeType
|
||||
{
|
||||
CONST_VTBL struct IVariantChangeTypeVtbl *lpVtbl;
|
||||
};
|
||||
|
||||
|
||||
|
||||
#ifdef COBJMACROS
|
||||
|
||||
|
||||
#define IVariantChangeType_QueryInterface(This,riid,ppvObject) \
|
||||
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
||||
|
||||
#define IVariantChangeType_AddRef(This) \
|
||||
( (This)->lpVtbl -> AddRef(This) )
|
||||
|
||||
#define IVariantChangeType_Release(This) \
|
||||
( (This)->lpVtbl -> Release(This) )
|
||||
|
||||
|
||||
#define IVariantChangeType_ChangeType(This,pvarDst,pvarSrc,lcid,vtNew) \
|
||||
( (This)->lpVtbl -> ChangeType(This,pvarDst,pvarSrc,lcid,vtNew) )
|
||||
|
||||
#endif /* COBJMACROS */
|
||||
|
||||
|
||||
#endif /* C style interface */
|
||||
|
||||
|
||||
|
||||
|
||||
#endif /* __IVariantChangeType_INTERFACE_DEFINED__ */
|
||||
|
||||
|
||||
#ifndef __IObjectIdentity_INTERFACE_DEFINED__
|
||||
#define __IObjectIdentity_INTERFACE_DEFINED__
|
||||
|
||||
/* interface IObjectIdentity */
|
||||
/* [unique][uuid][object] */
|
||||
|
||||
|
||||
EXTERN_C const IID IID_IObjectIdentity;
|
||||
|
||||
#if defined(__cplusplus) && !defined(CINTERFACE)
|
||||
|
||||
MIDL_INTERFACE("CA04B7E6-0D21-11d1-8CC5-00C04FC2B085")
|
||||
IObjectIdentity : public IUnknown
|
||||
{
|
||||
public:
|
||||
virtual HRESULT STDMETHODCALLTYPE IsEqualObject(
|
||||
/* [in] */ __RPC__in_opt IUnknown *punk) = 0;
|
||||
|
||||
};
|
||||
|
||||
#else /* C style interface */
|
||||
|
||||
typedef struct IObjectIdentityVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IObjectIdentity * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IObjectIdentity * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IObjectIdentity * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *IsEqualObject )(
|
||||
IObjectIdentity * This,
|
||||
/* [in] */ __RPC__in_opt IUnknown *punk);
|
||||
|
||||
END_INTERFACE
|
||||
} IObjectIdentityVtbl;
|
||||
|
||||
interface IObjectIdentity
|
||||
{
|
||||
CONST_VTBL struct IObjectIdentityVtbl *lpVtbl;
|
||||
};
|
||||
|
||||
|
||||
|
||||
#ifdef COBJMACROS
|
||||
|
||||
|
||||
#define IObjectIdentity_QueryInterface(This,riid,ppvObject) \
|
||||
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
||||
|
||||
#define IObjectIdentity_AddRef(This) \
|
||||
( (This)->lpVtbl -> AddRef(This) )
|
||||
|
||||
#define IObjectIdentity_Release(This) \
|
||||
( (This)->lpVtbl -> Release(This) )
|
||||
|
||||
|
||||
#define IObjectIdentity_IsEqualObject(This,punk) \
|
||||
( (This)->lpVtbl -> IsEqualObject(This,punk) )
|
||||
|
||||
#endif /* COBJMACROS */
|
||||
|
||||
|
||||
#endif /* C style interface */
|
||||
|
||||
|
||||
|
||||
|
||||
#endif /* __IObjectIdentity_INTERFACE_DEFINED__ */
|
||||
|
||||
|
||||
#ifndef __IProvideRuntimeContext_INTERFACE_DEFINED__
|
||||
#define __IProvideRuntimeContext_INTERFACE_DEFINED__
|
||||
|
||||
/* interface IProvideRuntimeContext */
|
||||
/* [unique][uuid][object] */
|
||||
|
||||
|
||||
EXTERN_C const IID IID_IProvideRuntimeContext;
|
||||
|
||||
#if defined(__cplusplus) && !defined(CINTERFACE)
|
||||
|
||||
MIDL_INTERFACE("10E2414A-EC59-49d2-BC51-5ADD2C36FEBC")
|
||||
IProvideRuntimeContext : public IUnknown
|
||||
{
|
||||
public:
|
||||
virtual HRESULT STDMETHODCALLTYPE GetCurrentSourceContext(
|
||||
/* [out] */ __RPC__out DWORD_PTR *pdwContext,
|
||||
/* [out] */ __RPC__out VARIANT_BOOL *pfExecutingGlobalCode) = 0;
|
||||
|
||||
};
|
||||
|
||||
#else /* C style interface */
|
||||
|
||||
typedef struct IProvideRuntimeContextVtbl
|
||||
{
|
||||
BEGIN_INTERFACE
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||
IProvideRuntimeContext * This,
|
||||
/* [in] */ __RPC__in REFIID riid,
|
||||
/* [iid_is][out] */
|
||||
__RPC__deref_out void **ppvObject);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||
IProvideRuntimeContext * This);
|
||||
|
||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||
IProvideRuntimeContext * This);
|
||||
|
||||
HRESULT ( STDMETHODCALLTYPE *GetCurrentSourceContext )(
|
||||
IProvideRuntimeContext * This,
|
||||
/* [out] */ __RPC__out DWORD_PTR *pdwContext,
|
||||
/* [out] */ __RPC__out VARIANT_BOOL *pfExecutingGlobalCode);
|
||||
|
||||
END_INTERFACE
|
||||
} IProvideRuntimeContextVtbl;
|
||||
|
||||
interface IProvideRuntimeContext
|
||||
{
|
||||
CONST_VTBL struct IProvideRuntimeContextVtbl *lpVtbl;
|
||||
};
|
||||
|
||||
|
||||
|
||||
#ifdef COBJMACROS
|
||||
|
||||
|
||||
#define IProvideRuntimeContext_QueryInterface(This,riid,ppvObject) \
|
||||
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
||||
|
||||
#define IProvideRuntimeContext_AddRef(This) \
|
||||
( (This)->lpVtbl -> AddRef(This) )
|
||||
|
||||
#define IProvideRuntimeContext_Release(This) \
|
||||
( (This)->lpVtbl -> Release(This) )
|
||||
|
||||
|
||||
#define IProvideRuntimeContext_GetCurrentSourceContext(This,pdwContext,pfExecutingGlobalCode) \
|
||||
( (This)->lpVtbl -> GetCurrentSourceContext(This,pdwContext,pfExecutingGlobalCode) )
|
||||
|
||||
#endif /* COBJMACROS */
|
||||
|
||||
|
||||
#endif /* C style interface */
|
||||
|
||||
|
||||
|
||||
|
||||
#endif /* __IProvideRuntimeContext_INTERFACE_DEFINED__ */
|
||||
|
||||
|
||||
/* interface __MIDL_itf_dispex_0000_0005 */
|
||||
/* [local] */
|
||||
|
||||
#endif //DISPEX_H_
|
||||
|
||||
|
||||
extern RPC_IF_HANDLE __MIDL_itf_dispex_0000_0005_v0_0_c_ifspec;
|
||||
extern RPC_IF_HANDLE __MIDL_itf_dispex_0000_0005_v0_0_s_ifspec;
|
||||
|
||||
/* Additional Prototypes for ALL interfaces */
|
||||
|
||||
unsigned long __RPC_USER BSTR_UserSize( unsigned long *, unsigned long , BSTR * );
|
||||
unsigned char * __RPC_USER BSTR_UserMarshal( unsigned long *, unsigned char *, BSTR * );
|
||||
unsigned char * __RPC_USER BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * );
|
||||
void __RPC_USER BSTR_UserFree( unsigned long *, BSTR * );
|
||||
|
||||
unsigned long __RPC_USER VARIANT_UserSize( unsigned long *, unsigned long , VARIANT * );
|
||||
unsigned char * __RPC_USER VARIANT_UserMarshal( unsigned long *, unsigned char *, VARIANT * );
|
||||
unsigned char * __RPC_USER VARIANT_UserUnmarshal(unsigned long *, unsigned char *, VARIANT * );
|
||||
void __RPC_USER VARIANT_UserFree( unsigned long *, VARIANT * );
|
||||
|
||||
unsigned long __RPC_USER BSTR_UserSize64( unsigned long *, unsigned long , BSTR * );
|
||||
unsigned char * __RPC_USER BSTR_UserMarshal64( unsigned long *, unsigned char *, BSTR * );
|
||||
unsigned char * __RPC_USER BSTR_UserUnmarshal64(unsigned long *, unsigned char *, BSTR * );
|
||||
void __RPC_USER BSTR_UserFree64( unsigned long *, BSTR * );
|
||||
|
||||
unsigned long __RPC_USER VARIANT_UserSize64( unsigned long *, unsigned long , VARIANT * );
|
||||
unsigned char * __RPC_USER VARIANT_UserMarshal64( unsigned long *, unsigned char *, VARIANT * );
|
||||
unsigned char * __RPC_USER VARIANT_UserUnmarshal64(unsigned long *, unsigned char *, VARIANT * );
|
||||
void __RPC_USER VARIANT_UserFree64( unsigned long *, VARIANT * );
|
||||
|
||||
/* [local] */ HRESULT STDMETHODCALLTYPE IDispatchEx_InvokeEx_Proxy(
|
||||
IDispatchEx * This,
|
||||
/* [in] */ DISPID id,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [in] */ WORD wFlags,
|
||||
/* [in] */ DISPPARAMS *pdp,
|
||||
/* [out] */ VARIANT *pvarRes,
|
||||
/* [out] */ EXCEPINFO *pei,
|
||||
/* [unique][in] */ IServiceProvider *pspCaller);
|
||||
|
||||
|
||||
/* [call_as] */ HRESULT STDMETHODCALLTYPE IDispatchEx_InvokeEx_Stub(
|
||||
IDispatchEx * This,
|
||||
/* [in] */ DISPID id,
|
||||
/* [in] */ LCID lcid,
|
||||
/* [in] */ DWORD dwFlags,
|
||||
/* [in] */ __RPC__in DISPPARAMS *pdp,
|
||||
/* [out] */ __RPC__out VARIANT *pvarRes,
|
||||
/* [out] */ __RPC__out EXCEPINFO *pei,
|
||||
/* [unique][in] */ __RPC__in_opt IServiceProvider *pspCaller,
|
||||
/* [in] */ UINT cvarRefArg,
|
||||
/* [size_is][in] */ __RPC__in_ecount_full(cvarRefArg) UINT *rgiRefArg,
|
||||
/* [size_is][out][in] */ __RPC__inout_ecount_full(cvarRefArg) VARIANT *rgvarRefArg);
|
||||
|
||||
|
||||
|
||||
/* end of Additional Prototypes */
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
4149
bazaar/SysInfo/plugin/WbemCli.h
Normal file
4149
bazaar/SysInfo/plugin/WbemCli.h
Normal file
File diff suppressed because it is too large
Load diff
7170
bazaar/SysInfo/plugin/WbemDisp.h
Normal file
7170
bazaar/SysInfo/plugin/WbemDisp.h
Normal file
File diff suppressed because it is too large
Load diff
1735
bazaar/SysInfo/plugin/WbemProv.h
Normal file
1735
bazaar/SysInfo/plugin/WbemProv.h
Normal file
File diff suppressed because it is too large
Load diff
1022
bazaar/SysInfo/plugin/WbemTran.h
Normal file
1022
bazaar/SysInfo/plugin/WbemTran.h
Normal file
File diff suppressed because it is too large
Load diff
BIN
bazaar/SysInfo/plugin/WbemUuid.Lib
Normal file
BIN
bazaar/SysInfo/plugin/WbemUuid.Lib
Normal file
Binary file not shown.
26
bazaar/SysInfo/plugin/Wbemidl.h
Normal file
26
bazaar/SysInfo/plugin/Wbemidl.h
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
/*++
|
||||
|
||||
Copyright (c) Microsoft Corporation. All rights reserved.
|
||||
|
||||
Module Name:
|
||||
|
||||
WBEMIDL.H
|
||||
|
||||
Abstract:
|
||||
|
||||
Include file for all WBEM related interface definitions. To be included
|
||||
in projects that use any WBEM interfaces.
|
||||
|
||||
History:
|
||||
|
||||
--*/
|
||||
|
||||
#ifndef __WBEMIDL_H_
|
||||
#define __WBEMIDL_H_
|
||||
|
||||
#include "wbemcli.h"
|
||||
#include "wbemprov.h"
|
||||
#include "wbemtran.h"
|
||||
#include "wbemdisp.h"
|
||||
|
||||
#endif
|
||||
387
bazaar/SysInfo/plugin/rpcsal.h
Normal file
387
bazaar/SysInfo/plugin/rpcsal.h
Normal file
|
|
@ -0,0 +1,387 @@
|
|||
/****************************************************************\
|
||||
* *
|
||||
* rpcsal.h - markers for documenting the semantics of RPC APIs *
|
||||
* *
|
||||
* Version 1.0 *
|
||||
* *
|
||||
* Copyright (c) 2004 Microsoft Corporation. All rights reserved. *
|
||||
* *
|
||||
\****************************************************************/
|
||||
|
||||
// -------------------------------------------------------------------------------
|
||||
// Introduction
|
||||
//
|
||||
// rpcsal.h provides a set of annotations to describe how RPC functions use their
|
||||
// parameters - the assumptions it makes about them, adn the guarantees it makes
|
||||
// upon finishing. These annotations are similar to those found in specstrings.h,
|
||||
// but are designed to be used by the MIDL compiler when it generates annotations
|
||||
// enabled header files.
|
||||
//
|
||||
// IDL authors do not need to annotate their functions declarations. The MIDL compiler
|
||||
// will interpret the IDL directives and use one of the annotations contained
|
||||
// in this header. This documentation is intended to help those trying to understand
|
||||
// the MIDL-generated header files or those who maintain their own copies of these files.
|
||||
//
|
||||
// -------------------------------------------------------------------------------
|
||||
// Differences between rpcsal.h and specstrings.h
|
||||
//
|
||||
// There are a few important differences between the annotations found in rpcsal.h and
|
||||
// those in specstrings.h:
|
||||
//
|
||||
// 1. [in] parameters are not marked as read-only. They may be used for scratch space
|
||||
// at the server and changes will not affect the client.
|
||||
// 2. String versions of each macro alleviates the need for a special type definition
|
||||
//
|
||||
// -------------------------------------------------------------------------------
|
||||
// Interpreting RPC Annotations
|
||||
//
|
||||
// These annotations are interpreted precisely in the same way as those in specstrings.h.
|
||||
// Please refer to that header for information related to general usage in annotations.
|
||||
//
|
||||
// To construct an RPC annotation, concatenate the appropriate value from each category
|
||||
// along with a leading __RPC_. A typical annotation looks like "__RPC__in_string".
|
||||
//
|
||||
// |----------------------------------------------------------------------------------|
|
||||
// | RPC Annotations |
|
||||
// |------------|------------|---------|--------|----------|----------|---------------|
|
||||
// | Level | Usage | Size | Output | Optional | String | Parameters |
|
||||
// |------------|------------|---------|--------|----------|----------|---------------|
|
||||
// | <> | <> | <> | <> | <> | <> | <> |
|
||||
// | _deref | _in | _ecount | _full | _opt | _string | (size) |
|
||||
// | _deref_opt | _out | _bcount | _part | | | (size,length) |
|
||||
// | | _inout | | | | | |
|
||||
// | | | | | | | |
|
||||
// |------------|------------|---------|--------|----------|----------|---------------|
|
||||
//
|
||||
// Level: Describes the buffer pointer's level of indirection from the parameter or
|
||||
// return value 'p'.
|
||||
//
|
||||
// <> : p is the buffer pointer.
|
||||
// _deref : *p is the buffer pointer. p must not be NULL.
|
||||
// _deref_opt : *p may be the buffer pointer. p may be NULL, in which case the rest of
|
||||
// the annotation is ignored.
|
||||
//
|
||||
// Usage: Describes how the function uses the buffer.
|
||||
//
|
||||
// <> : The buffer is not accessed. If used on the return value or with _deref, the
|
||||
// function will provide the buffer, and it will be uninitialized at exit.
|
||||
// Otherwise, the caller must provide the buffer. This should only be used
|
||||
// for alloc and free functions.
|
||||
// _in : The function will only read from the buffer. The caller must provide the
|
||||
// buffer and initialize it. Cannot be used with _deref.
|
||||
// _out : The function will only write to the buffer. If used on the return value or
|
||||
// with _deref, the function will provide the buffer and initialize it.
|
||||
// Otherwise, the caller must provide the buffer, and the function will
|
||||
// initialize it.
|
||||
// _inout : The function may freely read from and write to the buffer. The caller must
|
||||
// provide the buffer and initialize it. If used with _deref, the buffer may
|
||||
// be reallocated by the function.
|
||||
//
|
||||
// Size: Describes the total size of the buffer. This may be less than the space actually
|
||||
// allocated for the buffer, in which case it describes the accessible amount.
|
||||
//
|
||||
// <> : No buffer size is given. If the type specifies the buffer size (such as
|
||||
// with LPSTR and LPWSTR), that amount is used. Otherwise, the buffer is one
|
||||
// element long. Must be used with _in, _out, or _inout.
|
||||
// _ecount : The buffer size is an explicit element count.
|
||||
// _bcount : The buffer size is an explicit byte count.
|
||||
//
|
||||
// Output: Describes how much of the buffer will be initialized by the function. For
|
||||
// _inout buffers, this also describes how much is initialized at entry. Omit this
|
||||
// category for _in buffers; they must be fully initialized by the caller.
|
||||
//
|
||||
// <> : The type specifies how much is initialized. For instance, a function initializing
|
||||
// an LPWSTR must NULL-terminate the string.
|
||||
// _full : The function initializes the entire buffer.
|
||||
// _part : The function initializes part of the buffer, and explicitly indicates how much.
|
||||
//
|
||||
// Optional: Describes if the buffer itself is optional.
|
||||
//
|
||||
// <> : The pointer to the buffer must not be NULL.
|
||||
// _opt : The pointer to the buffer might be NULL. It will be checked before being dereferenced.
|
||||
//
|
||||
// String: Describes if the buffer is NULL terminated
|
||||
//
|
||||
// <> : The buffer is not assumed to be NULL terminated
|
||||
// _string : The buffer is assumed to be NULL terminated once it has been initialized
|
||||
//
|
||||
// Parameters: Gives explicit counts for the size and length of the buffer.
|
||||
//
|
||||
// <> : There is no explicit count. Use when neither _ecount nor _bcount is used.
|
||||
// (size) : Only the buffer's total size is given. Use with _ecount or _bcount but not _part.
|
||||
// (size,length) : The buffer's total size and initialized length are given. Use with _ecount_part
|
||||
// and _bcount_part.
|
||||
//
|
||||
// Notes:
|
||||
//
|
||||
// 1. Specifying two buffer annotations on a single parameter results in unspecified behavior
|
||||
// (e.g. __RPC__in_bcount(5) __RPC__out_bcount(6)
|
||||
//
|
||||
// 2. The size of the buffer and the amount that has been initialized are separate concepts.
|
||||
// Specify the size using _ecount or _bcount. Specify the amount that is initialized using
|
||||
// _full, _part, or _string. As a special case, a single element buffer does not need
|
||||
// _ecount, _bcount, _full, or _part
|
||||
//
|
||||
// 3. The count may be less than the total size of the buffer in which case it describes the
|
||||
// accessible portion.
|
||||
//
|
||||
// 4. "__RPC__opt" and "__RPC_deref" are not valid annotations.
|
||||
//
|
||||
// 5. The placement of _opt when using _deref is important:
|
||||
// __RPC__deref_opt_... : Input may be NULL
|
||||
// __RPC__deref_..._opt : Output may be NULL
|
||||
// __RPC__deref_opt_..._opt : Both input and output may be NULL
|
||||
//
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "specstrings.h"
|
||||
|
||||
#ifndef __RPCSAL_H_VERSION__
|
||||
#define __RPCSAL_H_VERSION__ ( 100 )
|
||||
#endif // __RPCSAL_H_VERSION__
|
||||
|
||||
#ifdef __REQUIRED_RPCSAL_H_VERSION__
|
||||
#if ( __RPCSAL_H_VERSION__ < __REQUIRED_RPCSAL_H_VERSION__ )
|
||||
#error incorrect <rpcsal.h> version. Use the header that matches with the MIDL compiler.
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif // #ifdef __cplusplus
|
||||
|
||||
#if (_MSC_VER >= 1000) && !defined(__midl) && defined(_PREFAST_)
|
||||
|
||||
|
||||
// [in]
|
||||
#define __RPC__in __pre __valid
|
||||
#define __RPC__in_string __RPC__in __pre __nullterminated
|
||||
#define __RPC__in_ecount(size) __RPC__in __pre __elem_readableTo(size)
|
||||
#define __RPC__in_ecount_full(size) __RPC__in_ecount(size)
|
||||
#define __RPC__in_ecount_full_string(size) __RPC__in_ecount_full(size) __pre __nullterminated
|
||||
#define __RPC__in_ecount_part(size, length) __RPC__in_ecount(length) __pre __elem_writableTo(size)
|
||||
#define __RPC__in_ecount_full_opt(size) __RPC__in_ecount_full(size) __pre __exceptthat __maybenull
|
||||
#define __RPC__in_ecount_full_opt_string(size) __RPC__in_ecount_full_opt(size) __pre __nullterminated
|
||||
#define __RPC__in_ecount_part_opt(size, length) __RPC__in_ecount_part(size, length) __pre __exceptthat __maybenull
|
||||
|
||||
|
||||
#define __RPC__deref_in __RPC__in __deref __notnull
|
||||
#define __RPC__deref_in_string __RPC__in __pre __deref __nullterminated
|
||||
#define __RPC__deref_in_opt __RPC__deref_in __deref __exceptthat __maybenull
|
||||
#define __RPC__deref_opt_in __RPC__in __exceptthat __maybenull
|
||||
#define __RPC__deref_opt_in_opt __RPC__deref_opt_in __pre __deref __exceptthat __maybenull
|
||||
#define __RPC__deref_in_ecount(size) __RPC__in __pre __deref __elem_readableTo(size)
|
||||
#define __RPC__deref_in_ecount_part(size, length) __RPC__deref_in_ecount(size) __pre __deref __elem_readableTo(length)
|
||||
#define __RPC__deref_in_ecount_full(size) __RPC__deref_in_ecount_part(size, size)
|
||||
#define __RPC__deref_in_ecount_full_opt(size) __RPC__deref_in_ecount_full(size) __pre __deref __exceptthat __maybenull
|
||||
#define __RPC__deref_in_ecount_full_opt_string(size) __RPC__deref_in_ecount_full_opt(size) __pre __deref __nullterminated
|
||||
#define __RPC__deref_in_ecount_full_string(size) __RPC__deref_in_ecount_full(size) __pre __deref __nullterminated
|
||||
#define __RPC__deref_in_ecount_opt(size) __RPC__deref_in_ecount(size) __pre __deref __exceptthat __maybenull
|
||||
#define __RPC__deref_in_ecount_opt_string(size) __RPC__deref_in_ecount_opt(size) __pre __deref __nullterminated
|
||||
#define __RPC__deref_in_ecount_part_opt(size, length) __RPC__deref_in_ecount_opt(size) __pre __deref __elem_readableTo(length)
|
||||
|
||||
|
||||
// [out]
|
||||
#define __RPC__out __out
|
||||
#define __RPC__out_ecount(size) __out_ecount(size) __post __elem_writableTo(size)
|
||||
#define __RPC__out_ecount_string(size) __RPC__out_ecount(size) __post __nullterminated
|
||||
#define __RPC__out_ecount_part(size, length) __RPC__out_ecount(size) __post __elem_readableTo(length)
|
||||
#define __RPC__out_ecount_full(size) __RPC__out_ecount_part(size, size)
|
||||
#define __RPC__out_ecount_full_string(size) __RPC__out_ecount_full(size) __post __nullterminated
|
||||
|
||||
// [in,out]
|
||||
#define __RPC__inout __inout
|
||||
#define __RPC__inout_string __RPC__inout __pre __nullterminated __post __nullterminated
|
||||
#define __RPC__inout_ecount(size) __inout_ecount(size)
|
||||
#define __RPC__inout_ecount_part(size, length) __inout_ecount_part(size, length)
|
||||
#define __RPC__inout_ecount_full(size) __RPC__inout_ecount_part(size, size)
|
||||
#define __RPC__inout_ecount_full_string(size) __RPC__inout_ecount_full(size) __pre __nullterminated __post __nullterminated
|
||||
|
||||
// [in,unique]
|
||||
#define __RPC__in_opt __RPC__in __pre __exceptthat __maybenull
|
||||
#define __RPC__in_opt_string __RPC__in_opt __pre __nullterminated
|
||||
#define __RPC__in_ecount_opt(size) __RPC__in_ecount(size) __pre __exceptthat __maybenull
|
||||
#define __RPC__in_ecount_opt_string(size) __RPC__in_ecount_opt(size) __pre __nullterminated
|
||||
|
||||
// [in,out,unique]
|
||||
#define __RPC__inout_opt __inout_opt
|
||||
#define __RPC__inout_ecount_opt(size) __inout_ecount_opt(size)
|
||||
#define __RPC__inout_ecount_part_opt(size, length) __inout_ecount_part_opt(size, length)
|
||||
#define __RPC__inout_ecount_full_opt(size) __RPC__inout_ecount_part_opt(size, size)
|
||||
#define __RPC__inout_ecount_full_opt_string(size) __RPC__inout_ecount_full_opt(size) __pre __nullterminated __post __nullterminated
|
||||
|
||||
// [out] **
|
||||
#define __RPC__deref_out __deref_out
|
||||
#define __RPC__deref_out_string __RPC__deref_out __post __deref __nullterminated
|
||||
// Removed "__post __deref __exceptthat __maybenull" so return values from QueryInterface and the like can be trusted without an explicit NULL check.
|
||||
// This is a temporary fix until midl.exe can be rev'd to produce more accurate annotations.
|
||||
#define __RPC__deref_out_opt __RPC__deref_out
|
||||
#define __RPC__deref_out_opt_string __RPC__deref_out_opt __post __deref __nullterminated __pre __deref __null
|
||||
#define __RPC__deref_out_ecount(size) __deref_out_ecount(size) __post __deref __elem_writableTo(size)
|
||||
#define __RPC__deref_out_ecount_part(size, length) __RPC__deref_out_ecount(size) __post __deref __elem_readableTo(length)
|
||||
#define __RPC__deref_out_ecount_full(size) __RPC__deref_out_ecount_part(size,size)
|
||||
#define __RPC__deref_out_ecount_full_string(size) __RPC__deref_out_ecount_full(size) __post __deref __nullterminated
|
||||
|
||||
// [in,out] **, second pointer decoration.
|
||||
#define __RPC__deref_inout __deref_inout
|
||||
#define __RPC__deref_inout_string __RPC__deref_inout __pre __deref __nullterminated __post __deref __nullterminated
|
||||
#define __RPC__deref_inout_opt __deref_inout_opt
|
||||
#define __RPC__deref_inout_opt_string __RPC__deref_inout_opt __deref __nullterminated
|
||||
#define __RPC__deref_inout_ecount_opt(size) __deref_inout_ecount_opt(size)
|
||||
#define __RPC__deref_inout_ecount_part_opt(size, length) __deref_inout_ecount_part_opt(size , length)
|
||||
#define __RPC__deref_inout_ecount_full_opt(size) __RPC__deref_inout_ecount_part_opt(size, size)
|
||||
#define __RPC__deref_inout_ecount_full(size) __deref_inout_ecount_full(size)
|
||||
#define __RPC__deref_inout_ecount_full_string(size) __RPC__deref_inout_ecount_full(size) __post __deref __nullterminated
|
||||
#define __RPC__deref_inout_ecount_full_opt_string(size) __RPC__deref_inout_ecount_full_opt(size) __pre __deref __nullterminated __post __deref __nullterminated
|
||||
|
||||
|
||||
// #define __RPC_out_opt out_opt is not allowed in rpc
|
||||
|
||||
// [in,out,unique]
|
||||
#define __RPC__deref_opt_inout __deref_opt_inout
|
||||
#define __RPC__deref_opt_inout_ecount(size) __deref_opt_inout_ecount(size)
|
||||
#define __RPC__deref_opt_inout_string __RPC__deref_opt_inout __pre __deref __nullterminated __post __deref __nullterminated
|
||||
#define __RPC__deref_opt_inout_ecount_part(size, length) __deref_opt_inout_ecount_part(size, length)
|
||||
#define __RPC__deref_opt_inout_ecount_full(size) __deref_opt_inout_ecount_full(size)
|
||||
#define __RPC__deref_opt_inout_ecount_full_string(size) __RPC__deref_opt_inout_ecount_full(size) __pre __deref __nullterminated __post __deref __nullterminated
|
||||
|
||||
|
||||
// We don't need to specify __pre __deref __exceptthat __maybenull : this is default behavior. While this might not hold in SAL 1.1 syntax, SAL team
|
||||
// believes it's OK. We can revisit if SAL 1.1 can survive.
|
||||
#define __RPC__deref_out_ecount_opt(size) __RPC__out_ecount(size) __post __deref __exceptthat __maybenull __pre __deref __null
|
||||
#define __RPC__deref_out_ecount_part_opt(size, length) __RPC__deref_out_ecount_part(size, length) __post __deref __exceptthat __maybenull __pre __deref __null
|
||||
#define __RPC__deref_out_ecount_full_opt(size) __RPC__deref_out_ecount_part_opt(size, size) __pre __deref __null
|
||||
#define __RPC__deref_out_ecount_full_opt_string(size) __RPC__deref_out_ecount_part_opt(size, size) __post __deref __nullterminated __pre __deref __null
|
||||
|
||||
#define __RPC__deref_opt_inout_opt __deref_opt_inout_opt
|
||||
#define __RPC__deref_opt_inout_opt_string __RPC__deref_opt_inout_opt __pre __deref __nullterminated __post __deref __nullterminated
|
||||
#define __RPC__deref_opt_inout_ecount_opt(size) __deref_opt_inout_ecount_opt(size)
|
||||
#define __RPC__deref_opt_inout_ecount_part_opt(size, length) __deref_opt_inout_ecount_part_opt(size, length)
|
||||
#define __RPC__deref_opt_inout_ecount_full_opt(size) __RPC__deref_opt_inout_ecount_part_opt(size, size)
|
||||
#define __RPC__deref_opt_inout_ecount_full_opt_string(size) __RPC__deref_opt_inout_ecount_full_opt(size) __pre __deref __nullterminated __post __deref __nullterminated
|
||||
|
||||
#define __RPC_full_pointer __maybenull
|
||||
#define __RPC_unique_pointer __maybenull
|
||||
#define __RPC_ref_pointer __notnull
|
||||
#define __RPC_string __nullterminated
|
||||
|
||||
#else // not prefast
|
||||
|
||||
#define RPC_range(min,max)
|
||||
|
||||
#define __RPC__in
|
||||
#define __RPC__in_string
|
||||
#define __RPC__in_opt_string
|
||||
#define __RPC__deref_opt_in_opt
|
||||
#define __RPC__opt_in_opt_string
|
||||
#define __RPC__in_ecount(size)
|
||||
#define __RPC__in_ecount_full(size)
|
||||
#define __RPC__in_ecount_full_string(size)
|
||||
#define __RPC__in_ecount_part(size, length)
|
||||
#define __RPC__in_ecount_full_opt(size)
|
||||
#define __RPC__in_ecount_full_opt_string(size)
|
||||
#define __RPC__inout_ecount_full_opt_string(size)
|
||||
#define __RPC__in_ecount_part_opt(size, length)
|
||||
|
||||
#define __RPC__deref_in
|
||||
#define __RPC__deref_in_string
|
||||
#define __RPC__deref_opt_in
|
||||
#define __RPC__deref_in_opt
|
||||
#define __RPC__deref_in_ecount(size)
|
||||
#define __RPC__deref_in_ecount_part(size, length)
|
||||
#define __RPC__deref_in_ecount_full(size)
|
||||
#define __RPC__deref_in_ecount_full_opt(size)
|
||||
#define __RPC__deref_in_ecount_full_string(size)
|
||||
#define __RPC__deref_in_ecount_full_opt_string(size)
|
||||
#define __RPC__deref_in_ecount_opt(size)
|
||||
#define __RPC__deref_in_ecount_opt_string(size)
|
||||
#define __RPC__deref_in_ecount_part_opt(size, length)
|
||||
|
||||
// [out]
|
||||
#define __RPC__out
|
||||
#define __RPC__out_ecount(size)
|
||||
#define __RPC__out_ecount_part(size, length)
|
||||
#define __RPC__out_ecount_full(size)
|
||||
#define __RPC__out_ecount_full_string(size)
|
||||
|
||||
// [in,out]
|
||||
#define __RPC__inout
|
||||
#define __RPC__inout_string
|
||||
#define __RPC__opt_inout
|
||||
#define __RPC__inout_ecount(size)
|
||||
#define __RPC__inout_ecount_part(size, length)
|
||||
#define __RPC__inout_ecount_full(size)
|
||||
#define __RPC__inout_ecount_full_string(size)
|
||||
|
||||
// [in,unique]
|
||||
#define __RPC__in_opt
|
||||
#define __RPC__in_ecount_opt(size)
|
||||
|
||||
|
||||
// [in,out,unique]
|
||||
#define __RPC__inout_opt
|
||||
#define __RPC__inout_ecount_opt(size)
|
||||
#define __RPC__inout_ecount_part_opt(size, length)
|
||||
#define __RPC__inout_ecount_full_opt(size)
|
||||
#define __RPC__inout_ecount_full_string(size)
|
||||
|
||||
// [out] **
|
||||
#define __RPC__deref_out
|
||||
#define __RPC__deref_out_string
|
||||
#define __RPC__deref_out_opt
|
||||
#define __RPC__deref_out_opt_string
|
||||
#define __RPC__deref_out_ecount(size)
|
||||
#define __RPC__deref_out_ecount_part(size, length)
|
||||
#define __RPC__deref_out_ecount_full(size)
|
||||
#define __RPC__deref_out_ecount_full_string(size)
|
||||
|
||||
|
||||
// [in,out] **, second pointer decoration.
|
||||
#define __RPC__deref_inout
|
||||
#define __RPC__deref_inout_string
|
||||
#define __RPC__deref_inout_opt
|
||||
#define __RPC__deref_inout_opt_string
|
||||
#define __RPC__deref_inout_ecount_full(size)
|
||||
#define __RPC__deref_inout_ecount_full_string(size)
|
||||
#define __RPC__deref_inout_ecount_opt(size)
|
||||
#define __RPC__deref_inout_ecount_part_opt(size, length)
|
||||
#define __RPC__deref_inout_ecount_full_opt(size)
|
||||
#define __RPC__deref_inout_ecount_full_opt_string(size)
|
||||
|
||||
// #define __RPC_out_opt out_opt is not allowed in rpc
|
||||
|
||||
// [in,out,unique]
|
||||
#define __RPC__deref_opt_inout
|
||||
#define __RPC__deref_opt_inout_string
|
||||
#define __RPC__deref_opt_inout_ecount(size)
|
||||
#define __RPC__deref_opt_inout_ecount_part(size, length)
|
||||
#define __RPC__deref_opt_inout_ecount_full(size)
|
||||
#define __RPC__deref_opt_inout_ecount_full_string(size)
|
||||
|
||||
#define __RPC__deref_out_ecount_opt(size)
|
||||
#define __RPC__deref_out_ecount_part_opt(size, length)
|
||||
#define __RPC__deref_out_ecount_full_opt(size)
|
||||
#define __RPC__deref_out_ecount_full_opt_string(size)
|
||||
|
||||
#define __RPC__deref_opt_inout_opt
|
||||
#define __RPC__deref_opt_inout_opt_string
|
||||
#define __RPC__deref_opt_inout_ecount_opt(size)
|
||||
#define __RPC__deref_opt_inout_ecount_part_opt(size, length)
|
||||
#define __RPC__deref_opt_inout_ecount_full_opt(size)
|
||||
#define __RPC__deref_opt_inout_ecount_full_opt_string(size)
|
||||
|
||||
#define __RPC_full_pointer
|
||||
#define __RPC_unique_pointer
|
||||
#define __RPC_ref_pointer
|
||||
#define __RPC_string
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
|
|
@ -88,15 +88,12 @@ Array_<Value>_`&[*@3 state])&]
|
|||
[s2; Returns CPU temperature in degrees Celsius.&]
|
||||
[s3;%- &]
|
||||
[s4;%- &]
|
||||
[s5;:GetMacAddress`(String`&`):%- [@(0.0.255) bool]_[* GetMacAddress]([_^String^ String]_`&
|
||||
[*@3 mac])&]
|
||||
[s2; If true returns the [%-*@3 mac ]address.&]
|
||||
[s6; Only available in Windows&]
|
||||
[s5;:GetMacAddress`(`):%- [@(0.0.255) String]_[* GetMacAddress]()&]
|
||||
[s2; Returns the [%-@3 MAC ]address or Null.&]
|
||||
[s3; &]
|
||||
[s4;%- &]
|
||||
[s5;:GetHDSerial`(String`&`):%- [@(0.0.255) bool]_[* GetHDSerial]([_^String^ String]_`&[*@3 s
|
||||
erial])&]
|
||||
[s2; If true returns the hard disk physical [%-*@3 serial ]number.
|
||||
[s5;:GetHDSerial`(`):%- [@(0.0.255) String]_[* GetHDSerial]()&]
|
||||
[s2; Returns the hard disk physical [%-*@3 serial ]number or Null.
|
||||
This code is not affected by disk formatting.&]
|
||||
[s6; Only available in Windows&]
|
||||
[s3; &]
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ topic "News and changes log";
|
|||
[s0; [*R6 SysInfo. News and changes log]&]
|
||||
[s0;2 &]
|
||||
[s0;2 &]
|
||||
[s0; [2 2010/06/07-|Added GetMacAddress() for Linux]&]
|
||||
[s0; [2 2010/06/05-|Added GetCPUTemperature() and improved ACPI support]&]
|
||||
[s0; [2 2010/05/06-|Added GetMacAddress() and GetHDSerial() for Windows.
|
||||
Fixed GetBiosInfo() date bug]&]
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
TITLE("News and changes log")
|
||||
COMPRESSED
|
||||
120,156,141,84,97,79,26,65,16,253,43,147,212,54,74,4,118,143,3,17,63,169,212,74,138,214,244,36,77,74,136,44,119,3,108,224,118,47,187,123,42,169,253,239,157,61,192,82,160,181,124,97,217,188,121,111,222,204,91,250,112,112,192,142,217,59,246,198,167,213,198,177,200,231,110,208,23,205,218,89,233,107,131,234,56,213,213,120,141,51,222,8,194,147,48,96,53,22,132,60,168,243,102,51,228,39,245,102,237,180,209,104,197,34,115,82,171,65,255,199,195,207,247,31,111,203,189,8,250,150,157,65,223,115,68,11,219,81,99,93,129,91,124,178,32,84,2,241,84,168,9,90,152,235,201,224,195,192,35,3,248,243,27,250,1,4,140,179,42,107,84,89,189,252,114,158,36,152,192,39,116,151,119,189,123,76,51,52,194,229,6,15,143,10,62,153,102,70,63,18,224,252,242,174,3,54,207,50,109,220,96,155,169,78,100,27,76,55,34,166,179,65,107,87,44,116,119,221,142,208,72,49,167,155,177,54,240,77,170,68,63,217,10,92,201,231,101,209,133,212,133,25,2,36,194,33,
|
||||
140,242,201,142,78,88,229,225,90,103,68,248,37,37,56,189,69,224,53,83,237,166,104,70,90,152,4,236,38,142,134,230,48,93,34,119,20,120,49,19,66,181,209,206,156,206,110,132,18,19,52,52,95,34,244,115,32,142,171,92,197,126,39,54,236,253,165,254,222,8,59,133,11,169,32,209,113,158,162,114,194,23,188,77,193,78,171,60,168,6,167,229,151,174,32,200,244,74,206,241,247,12,219,70,62,98,87,90,71,87,255,75,85,43,191,116,214,59,148,202,161,81,69,43,52,141,213,50,233,22,62,227,98,52,124,136,80,37,116,178,91,99,89,18,113,90,240,54,236,24,134,37,58,117,117,60,139,200,97,190,94,247,141,206,45,14,31,134,37,250,189,82,41,212,161,43,85,254,188,143,60,32,195,90,36,222,46,9,136,49,194,184,200,5,133,160,82,169,64,199,103,102,162,157,247,235,141,131,116,111,91,231,124,187,227,162,185,72,137,204,247,6,227,117,181,239,108,149,71,80,250,233,117,48,61,37,99,157,248,86,230,8,74,164,104,247,168,48,106,61,210,41,110,208,189,174,
|
||||
70,81,106,50,17,207,40,65,255,236,149,87,3,98,241,230,239,117,17,29,74,206,225,81,107,245,54,28,61,233,153,245,124,223,71,139,120,186,167,154,133,69,100,191,172,226,223,130,229,11,89,251,160,202,181,189,8,31,81,237,48,176,34,38,151,6,133,43,244,228,230,255,7,12,126,1,173,129,137,139,
|
||||
120,156,141,84,109,111,218,48,16,254,43,39,173,155,218,170,128,29,2,165,244,83,91,214,13,141,118,213,82,52,105,8,21,147,28,96,65,236,200,118,250,162,117,255,125,231,16,58,6,116,29,95,112,172,123,94,238,238,73,6,176,183,199,142,216,59,246,198,175,221,193,137,200,23,110,56,16,173,250,233,225,183,38,225,56,225,234,188,206,25,111,6,225,113,24,176,58,11,66,30,52,120,171,21,242,227,70,171,126,210,108,182,99,145,57,169,213,112,240,243,238,215,251,143,215,149,126,4,3,203,78,97,224,57,162,39,219,85,19,93,133,107,124,176,32,84,2,241,76,168,41,90,88,232,233,240,195,208,87,6,240,247,63,12,2,8,24,103,53,214,172,177,227,202,243,89,146,96,2,159,208,93,137,152,206,6,173,221,63,128,137,54,208,147,42,127,28,238,64,53,214,80,23,55,253,91,76,51,52,194,229,6,9,233,93,200,52,51,250,158,10,206,46,110,186,96,243,44,211,198,109,49,53,136,236,53,125,207,66,119,159,59,17,26,41,22,165,163,239,82,37,250,193,86,225,82,
|
||||
62,46,65,231,82,23,35,160,130,68,56,132,113,62,221,210,9,107,60,92,233,140,169,126,73,9,78,111,16,120,205,84,187,25,154,177,22,38,1,187,94,71,163,118,152,46,43,183,20,120,49,19,170,234,160,157,59,157,93,9,37,166,104,104,43,68,232,231,64,28,151,185,138,253,38,109,216,127,5,127,107,132,157,193,185,84,144,232,56,79,81,57,225,1,111,83,176,147,26,15,106,193,73,229,185,39,168,100,118,41,23,248,103,134,29,35,239,177,39,173,163,171,255,165,170,87,158,187,171,29,74,229,208,168,194,10,77,163,92,38,221,194,23,124,26,143,238,34,84,9,157,236,198,88,150,68,156,22,188,89,118,4,163,67,58,245,116,60,143,168,195,124,181,238,43,157,91,28,221,141,14,233,185,84,41,212,119,228,176,36,15,168,97,45,18,223,46,9,136,9,194,164,200,5,133,160,90,173,66,215,103,102,170,157,239,215,55,14,210,189,221,58,231,155,142,11,115,145,18,153,247,6,147,21,218,59,43,243,8,74,63,188,12,166,175,100,172,19,111,101,129,160,68,138,118,135,
|
||||
10,35,235,145,78,113,141,238,101,53,138,82,147,137,120,78,9,250,167,87,94,11,136,197,55,127,171,139,232,80,114,246,15,218,229,187,225,232,67,48,183,158,239,199,248,41,158,237,64,179,176,136,236,215,50,254,109,88,190,33,171,62,8,185,106,47,194,123,84,91,12,172,136,201,133,65,225,10,61,185,254,213,129,225,111,127,238,153,217,
|
||||
|
||||
|
|
|
|||
|
|
@ -26,6 +26,10 @@ topic "General description";
|
|||
[s0; Functions to get information and handle Desktop, OS and hardware
|
||||
internals.&]
|
||||
[s0; &]
|
||||
[s0; [@6 IMPORTANT]: Before compiling please check [*/ 2. Compiler support
|
||||
and Requirements] in [^topic`:`/`/SysInfo`/srcimp`/SysInfo`$en`-us^ Implementation
|
||||
details.]&]
|
||||
[s0; &]
|
||||
[s0; It includes functions for:&]
|
||||
[s0; &]
|
||||
[s0;i150;O0; [^topic`:`/`/SysInfo`/src`/SysInfo`$en`-us`#GetDesktopFolder`(`)^ Obtainin
|
||||
|
|
@ -43,13 +47,11 @@ creen recording]&]
|
|||
[s0;i150;O0; [^topic`:`/`/SysInfo`/src`/SysInfo`$en`-us`#LoadFile`_Safe`(String`)^ Misc
|
||||
ellaneous functions]&]
|
||||
[s0; &]
|
||||
[s0; [^topic`:`/`/SysInfo`/srcimp`/SysInfo`$en`-us^ Implementation
|
||||
details]&]
|
||||
[s0; Other pages if interest are:&]
|
||||
[s0; &]
|
||||
[s0; [^topic`:`/`/SysInfo`/srcdoc`/SysInfoDemo`$en`-us^ SysInfo`_demo]
|
||||
review&]
|
||||
[s0; &]
|
||||
[s0; [^topic`:`/`/SysInfo`/srcdoc`/ChangesLog`$en`-us^ Changes log]&]
|
||||
[s0; &]
|
||||
[s0; [^topic`:`/`/SysInfo`/srcdoc`/ToDo`$en`-us^ ToDo list]&]
|
||||
[s0;i150;O0; [^topic`:`/`/SysInfo`/srcdoc`/SysInfoDemo`$en`-us^ SysInfo`_demo]
|
||||
reviews the demo package&]
|
||||
[s0;i150;O0; [^topic`:`/`/SysInfo`/srcdoc`/ChangesLog`$en`-us^ Changes
|
||||
log]&]
|
||||
[s0;i150;O0; [^topic`:`/`/SysInfo`/srcdoc`/ToDo`$en`-us^ ToDo list]&]
|
||||
[s0; ]
|
||||
|
|
@ -1,8 +1,9 @@
|
|||
TITLE("General description")
|
||||
COMPRESSED
|
||||
120,156,189,85,127,111,219,84,20,253,42,150,82,166,174,184,221,187,247,253,182,17,26,180,148,85,26,235,180,130,248,35,202,102,199,121,13,214,220,56,216,46,101,66,236,179,115,158,227,174,155,96,98,83,17,137,98,199,47,239,222,115,238,185,231,190,204,57,217,219,19,169,152,137,127,121,101,39,225,178,188,110,134,197,188,97,231,242,154,136,69,94,146,205,207,125,254,246,237,219,35,82,194,229,49,25,33,25,9,37,137,9,107,66,177,37,237,133,215,142,156,144,86,177,182,66,103,219,178,43,175,22,243,210,201,252,224,133,65,20,167,122,38,73,146,32,195,10,187,132,20,172,136,53,57,167,200,106,39,189,49,89,85,110,135,186,221,44,230,79,84,190,140,161,10,145,18,145,194,58,163,8,113,74,179,180,90,33,94,41,48,148,192,182,198,218,108,168,135,38,44,230,117,164,14,194,199,145,168,74,205,12,4,217,34,82,177,50,74,58,150,228,152,141,151,202,43,48,39,206,234,33,128,231,82,113,94,226,19,195,52,240,148,86,36,33,138,178,90,98,155,197,93,9,79,12,
|
||||
80,39,180,6,94,248,253,86,169,37,52,138,58,197,88,3,72,182,58,70,56,229,72,90,199,138,13,131,132,176,168,53,50,208,217,42,244,21,98,37,83,126,252,88,231,132,56,155,218,25,11,47,216,88,15,60,112,69,185,210,123,146,14,120,138,180,32,153,85,237,10,37,46,89,11,57,130,57,52,194,32,233,168,136,54,4,190,44,29,208,44,73,137,171,86,206,102,125,136,173,24,218,110,49,63,120,188,47,142,196,17,107,253,48,134,123,132,59,169,164,84,198,43,18,18,48,200,161,162,92,70,160,153,164,217,101,203,178,7,230,40,39,69,23,65,112,233,180,4,168,193,5,253,68,85,18,162,176,87,78,74,39,178,170,41,251,126,82,38,170,114,16,203,35,74,137,102,54,10,170,37,43,31,21,145,12,101,217,104,79,144,86,27,37,56,235,194,175,215,117,23,174,194,6,218,214,176,69,126,219,151,201,131,96,182,179,32,167,196,48,161,54,70,68,165,52,92,192,82,67,101,65,78,129,17,222,232,237,48,185,112,73,198,238,44,65,50,37,57,243,172,36,152,120,165,80,
|
||||
59,18,144,39,34,225,240,70,101,80,100,52,5,77,110,154,224,119,225,42,37,53,179,176,47,122,228,85,132,247,50,42,199,16,158,141,208,232,0,239,194,57,234,205,123,80,156,216,197,207,168,57,233,148,48,7,160,72,90,163,110,9,145,217,161,118,13,213,229,232,107,178,46,123,22,110,250,147,114,8,147,75,14,142,247,118,246,34,147,146,153,137,24,175,157,71,235,72,69,253,164,82,158,189,148,154,189,150,70,64,199,126,55,200,49,56,206,209,56,134,239,146,216,148,44,38,10,181,106,141,234,199,48,84,110,41,82,97,231,77,84,97,74,82,28,54,245,38,242,128,39,144,226,75,34,27,83,56,204,136,115,70,72,15,25,80,189,208,48,54,142,0,135,22,163,195,12,215,199,51,160,122,93,174,67,113,56,13,231,8,30,93,167,165,118,209,171,136,4,105,192,35,143,23,194,96,197,57,12,79,182,46,183,147,233,88,164,44,224,28,156,53,26,211,7,20,88,78,248,120,110,224,8,128,234,56,118,188,222,185,174,56,220,132,126,8,43,52,92,139,177,84,166,148,9,122,
|
||||
193,115,90,59,165,12,152,2,213,198,99,40,182,13,147,170,173,204,158,151,152,142,63,94,253,249,197,119,207,14,127,186,72,230,61,231,201,197,155,254,108,115,217,62,88,204,123,145,39,167,215,155,42,158,76,125,50,180,201,58,12,73,141,223,186,171,50,174,37,229,102,149,252,130,75,19,146,147,208,191,30,218,109,154,156,95,76,203,221,234,166,236,2,246,15,161,219,148,77,127,52,101,156,110,103,49,85,213,92,227,76,72,46,223,129,32,119,246,193,190,26,39,64,126,142,199,249,75,164,175,171,34,43,30,21,143,38,142,197,163,190,171,238,158,246,194,166,56,188,238,139,217,247,97,152,248,156,182,205,42,116,197,126,241,240,101,114,190,28,202,122,83,111,214,73,191,13,85,93,54,64,139,191,246,139,251,65,97,13,182,31,151,247,47,134,14,0,197,131,34,253,167,111,208,2,55,80,121,50,169,147,38,223,158,77,130,225,22,165,189,39,151,159,235,205,170,189,233,159,214,253,80,236,127,211,117,229,155,226,171,166,5,250,215,17,255,99,11,19,195,79,95,66,9,207,187,
|
||||
182,10,125,191,235,63,214,239,67,124,199,186,120,133,2,94,132,10,204,71,134,233,120,125,240,209,59,72,76,229,254,39,36,126,104,175,251,48,114,120,222,246,19,133,15,192,198,13,99,175,94,135,55,203,22,45,252,127,112,47,170,46,132,77,210,133,170,237,86,247,4,123,218,150,171,211,186,1,222,69,121,25,222,249,53,86,87,247,85,104,154,114,19,192,231,110,34,23,31,78,237,71,177,234,171,237,223,224,94,38,103,87,219,102,252,87,219,157,23,171,128,9,108,62,57,231,170,189,43,225,36,92,189,151,247,118,215,171,21,150,23,144,230,183,58,220,124,78,214,99,116,110,29,250,167,237,250,46,233,180,150,52,237,250,179,24,254,216,158,188,71,45,62,37,13,230,239,54,199,226,47,192,29,16,226,
|
||||
120,156,189,85,237,110,219,70,16,124,149,3,228,6,142,75,219,183,247,125,100,81,36,177,155,198,64,18,27,118,138,254,16,20,147,162,206,14,97,74,84,73,170,105,80,52,207,222,57,138,142,147,182,65,19,184,168,5,145,242,138,123,51,59,59,187,154,10,182,179,195,19,62,225,255,242,151,30,135,171,98,83,247,179,105,45,156,203,42,34,193,179,130,108,118,234,179,247,239,223,31,144,226,46,139,135,17,14,35,174,36,9,66,140,43,97,73,123,238,181,35,199,165,85,66,91,174,211,117,209,22,203,217,180,112,50,219,59,55,200,18,137,158,72,146,196,201,8,133,167,184,228,66,145,208,228,156,34,171,157,244,198,164,101,177,238,171,102,53,155,62,83,217,60,166,42,100,74,100,114,235,140,34,228,41,45,164,213,10,249,74,129,161,4,182,53,214,166,125,213,215,97,54,173,34,117,16,62,138,68,85,98,38,32,40,44,50,149,80,70,73,39,36,57,33,140,151,202,43,48,39,145,86,125,0,207,185,18,89,129,119,76,211,192,83,90,145,132,40,202,106,137,199,44,238,138,
|
||||
123,18,0,117,92,107,224,133,223,110,149,154,67,163,168,83,204,53,128,20,86,199,12,167,28,73,235,132,18,70,128,4,183,168,53,50,208,233,34,116,37,114,165,160,236,232,145,206,8,121,54,177,19,193,61,23,198,122,224,129,43,202,149,222,147,116,192,83,164,57,201,180,108,22,40,113,46,52,151,3,152,67,35,12,14,29,20,209,134,192,87,72,7,52,75,82,226,170,149,179,105,23,98,43,250,166,157,77,247,30,237,242,3,126,32,180,126,24,211,61,210,157,84,82,42,227,21,113,9,24,156,161,162,92,134,163,153,164,133,75,231,69,7,204,65,78,138,46,130,224,210,105,9,80,131,11,250,137,170,36,68,17,94,57,41,29,79,203,186,232,186,81,153,168,202,94,44,143,40,33,154,216,40,168,150,66,249,168,136,20,80,86,24,237,9,210,106,163,184,72,219,240,203,166,106,195,50,172,160,109,5,91,100,183,125,25,61,8,102,91,11,138,132,4,76,168,141,225,81,41,13,23,8,169,161,50,39,167,192,8,47,244,182,31,93,56,39,99,183,150,32,153,144,156,120,161,
|
||||
36,152,120,165,80,59,14,32,79,68,220,225,133,202,160,200,96,10,26,221,52,194,111,211,85,66,106,98,97,95,244,200,171,8,239,101,84,78,64,120,97,184,70,7,196,54,93,68,189,197,14,20,39,225,226,123,208,156,116,66,152,3,80,36,173,81,183,132,200,194,161,118,13,213,229,224,107,178,46,125,25,222,118,199,69,31,70,151,236,29,237,108,237,69,38,33,51,225,49,95,59,143,214,145,138,250,73,165,188,240,82,106,225,181,52,28,58,118,219,65,142,201,113,142,134,49,252,112,136,77,200,98,162,80,171,214,168,126,72,67,229,150,34,21,225,188,137,42,140,135,228,251,117,181,138,60,224,9,28,241,45,145,141,71,56,204,136,115,134,75,15,25,80,61,215,48,54,86,128,67,139,209,97,1,215,199,29,80,222,20,215,33,223,31,135,115,0,143,174,211,82,187,232,85,100,130,52,224,113,142,231,220,32,226,28,134,39,189,46,214,163,233,4,79,4,135,115,176,107,52,166,15,40,176,28,247,113,111,96,5,64,117,172,29,175,183,174,203,247,87,161,235,195,2,13,215,
|
||||
124,40,85,80,34,8,122,193,115,90,59,165,12,152,2,213,198,53,20,219,134,73,213,86,166,103,5,166,227,247,203,63,190,249,225,229,254,79,23,108,218,137,140,93,188,235,78,86,87,205,131,217,180,227,25,123,186,89,149,113,51,117,172,111,216,117,232,89,133,239,218,101,17,99,172,88,45,216,27,92,234,192,142,67,119,211,55,235,132,157,94,140,225,118,241,182,104,3,158,239,67,187,42,234,238,96,60,113,188,77,31,25,118,242,226,236,244,252,213,227,151,175,102,41,123,18,112,110,96,101,179,92,87,80,254,154,173,235,128,17,100,229,155,80,222,176,233,222,33,19,7,236,104,248,54,180,172,219,172,215,77,219,15,80,231,119,195,211,205,128,199,166,175,193,164,42,243,52,63,204,15,199,114,242,195,174,45,171,229,250,46,176,19,86,249,254,166,123,205,78,150,128,138,217,219,162,22,161,47,42,208,157,125,202,247,36,150,94,214,27,236,48,118,245,65,20,112,78,63,121,174,194,198,202,78,99,125,159,35,241,55,6,249,228,199,208,143,250,61,109,234,69,104,243,221,252,
|
||||
225,107,118,58,7,145,85,148,162,91,135,178,42,106,160,197,111,187,217,253,160,16,195,152,14,225,221,139,190,5,64,254,32,79,254,233,19,122,135,27,168,60,27,187,153,176,39,39,99,131,113,139,86,184,39,151,159,171,213,162,121,219,61,175,186,62,223,125,220,182,197,187,252,187,186,1,250,247,17,255,115,129,145,225,151,135,80,194,89,219,148,161,235,182,126,69,252,62,196,183,172,243,75,20,112,30,74,48,31,24,38,195,245,193,103,239,32,49,150,251,159,144,120,209,108,186,48,112,56,107,186,145,194,39,96,195,3,67,175,110,194,187,121,131,22,254,63,184,23,101,27,194,138,181,161,108,218,197,61,193,158,55,197,226,41,38,62,191,188,40,174,194,7,191,198,234,170,174,12,117,93,172,2,248,220,77,228,95,166,246,180,127,131,109,177,198,50,238,88,117,181,93,70,88,149,12,94,254,218,185,93,52,119,4,143,195,242,163,5,114,251,212,229,2,225,25,10,255,181,194,207,24,3,52,139,17,54,254,28,124,21,208,17,90,5,210,207,155,235,59,156,49,198,234,230,203,
|
||||
53,29,14,123,213,28,127,68,55,254,199,106,76,220,173,86,179,63,1,112,253,70,220,
|
||||
|
||||
|
|
|
|||
|
|
@ -41,21 +41,19 @@ in Ubuntu can run properly in Fedora without recompiling.&]
|
|||
[s0; [*+92 2. Compiler support and Requirements]&]
|
||||
[s0; &]
|
||||
[s0; SysInfo has been tested in Linux using Gcc and in Windows using
|
||||
MinGW and MSC 9.&]
|
||||
MinGW and MSC.&]
|
||||
[s0; &]
|
||||
[s0;~~~2048; [*@6 IMPORTANT][* :] To compile using MinGW it is required
|
||||
to copy the next files from the MSC install or from other sources:&]
|
||||
[s0;i150;O0; To Upp`\MinGW`\include: &]
|
||||
[s0;l96; `- Files [* Rpcsal.h, DispEx.h, WbemCli.h, WbemDisp.h, Wbemidl.h,
|
||||
WbemProv.h and WbemTran.h]&]
|
||||
[s0;l96; `- They can be taken from: `\Microsoft SDKs`\Windows`\v6.1`\Include&]
|
||||
to copy the next files from SysInfo/plugin:&]
|
||||
[s0;i150;O0; To `\MinGW`\include: &]
|
||||
[s0;l96; Files [* Rpcsal.h, DispEx.h, WbemCli.h, WbemDisp.h, Wbemidl.h,
|
||||
WbemProv.h and WbemTran.h.]&]
|
||||
[s0; &]
|
||||
[s0;i150;O0;%- To `\Upp`\MinGW`\lib: &]
|
||||
[s0;l96; `- File [* wbemuuid.lib]&]
|
||||
[s0;l96; `- It can be taken from `\Microsoft SDKs`\Windows`\v6.1`\Lib&]
|
||||
[s0;i150;O0;%- To `\MinGW`\lib: &]
|
||||
[s0;l96; File [* wbemuuid.lib]&]
|
||||
[s0; &]
|
||||
[s0; To compile it in Linux it is necessary to include package XTest.
|
||||
In Ubuntu the aptitude package name is [* libxtst`-dev].&]
|
||||
[s0; [*@6 IMPORTANT][* :] To compile it in Linux it is necessary to include
|
||||
package XTest. In Ubuntu the aptitude package name is [* libxtst`-dev].&]
|
||||
[s0; &]
|
||||
[s0; &]
|
||||
[s0; [*+92 3. OS and Desktop implementation]&]
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue