This repository has been archived on 2024-12-16. You can view files and clone it, but cannot push or open issues or pull requests.
CodeBlocksPortable/Borland/BCC55/Include/sqlnsdef.h

375 lines
13 KiB
C

#ifndef SQLNS_DEF_H_
#pragma option push -b -a8 -pc -A- /*P_O_Push*/
#ifdef DO_SQLNS_ODL_CONSTANTS_
#define DONE_SQLNS_ODL_CONSTANTS_
#ifndef SQLNSVersion_Major
#define SQLNSVersion_Major 7
#define SQLNSVersion_Minor 0
#endif // SQLNSVersion_Major
/////////////////////////////////////////////////////////////////////////////////////////
// Constant enumerations.
/////////////////////////////////////////////////////////////////////////////////////////
#define IID_ISQLNamespace 00026f20-EB1C-11cf-AE6E-00AA004A34D5
#define IID_ISQLNamespaceObject 00026f21-EB1C-11cf-AE6E-00AA004A34D5
#define IID_ISQLNamespaceCommand 00026f22-EB1C-11cf-AE6E-00AA004A34D5
#define IID_ISQLNamespaceCommands 00026f23-EB1C-11cf-AE6E-00AA004A34D5
#define IID_IReplicationCustomization 00026f24-EB1C-11cf-AE6E-00AA004A34D5
#define LIBID_SQLNamespace 00026f30-EB1C-11cf-AE6E-00AA004A34D5
#define CLSID_SQLNamespace 00026f00-EB1C-11cf-AE6E-00AA004A34D5
#define CLSID_SQLNamespaceInternal 00026f10-EB1C-11cf-AE6E-00AA004A34D5
#endif //DO_SQLNS_ODL_CONSTANTS_
#ifdef DO_HELP_CONSTANTS_
//interfaces
#define H_NamespaceLibrary 100
#define H_Namespace 200
#define H_NamespaceObject 400
#define H_NamespaceCommand 600
#define H_NamespaceCommands 800
//enums
#define H_SQLNSRootType 2000
#define H_SQLNSObjectType 2200
#define H_SQLNSModality 2400
#define H_SQLNSCommandID 2600
#define H_SQLNSErrors 2800
#endif //DO_HELP_CONSTANTS_
#ifdef DO_ODL_TYPDEFS_
// To avoid the need to cast on bitwise operations (which defeats typesafety anyway),
// define the datatype as DWORD for C/CPP. OleAut languages don't do typechecking
// and organize by the enum name.
#ifdef SQLNS_ODL_
#define SQLNS_ENUM_BEGIN(tdef, hstring) [helpcontext(H_##tdef), helpstring(hstring)] enum
// item = value, ...
#define SQLNS_ENUM_END(tdef) tdef, *LP##tdef
#else
#define SQLNS_ENUM_BEGIN(tdef, hstring) DWORD tdef, *LP##tdef; enum tag##tdef
// item = value, ...
#define SQLNS_ENUM_END(tdef)
#endif
typedef SQLNS_ENUM_BEGIN(SQLNSRootType, "The type of object to set as root")
{
SQLNSRootType_DefaultRoot = 0x0000,
SQLNSRootType_ServerGroup = 0x0001,
SQLNSRootType_Server = 0x0002,
SQLNSRootType_Database = 0x0003
} SQLNS_ENUM_END(SQLNSRootType);
typedef SQLNS_ENUM_BEGIN(SQLNSObjectType, "The type of object")
{
SQLNSOBJECTTYPE_ROOT = 0x0000,
SQLNSOBJECTTYPE_EMPTY,
SQLNSOBJECTTYPE_SERVER_GROUP,
SQLNSOBJECTTYPE_SERVER,
SQLNSOBJECTTYPE_DATABASES,
SQLNSOBJECTTYPE_DATABASE,
SQLNSOBJECTTYPE_MANAGEMENT,
SQLNSOBJECTTYPE_SECURITY,
SQLNSOBJECTTYPE_SERVICES,
SQLNSOBJECTTYPE_LOGINS,
SQLNSOBJECTTYPE_LOGIN,
SQLNSOBJECTTYPE_BACKUPDEVICES,
SQLNSOBJECTTYPE_BACKUPDEVICE,
SQLNSOBJECTTYPE_DATABASE_PUBLICATIONS,
SQLNSOBJECTTYPE_DATABASE_PUBLICATION,
SQLNSOBJECTTYPE_DATABASE_PUB_SUBSCRIPTION,
SQLNSOBJECTTYPE_DATABASE_PULL_SUBSCRIPTIONS,
SQLNSOBJECTTYPE_DATABASE_PULL_SUBSCRIPTION,
SQLNSOBJECTTYPE_DATABASE_USERS,
SQLNSOBJECTTYPE_DATABASE_USER,
SQLNSOBJECTTYPE_DATABASE_ROLES,
SQLNSOBJECTTYPE_DATABASE_ROLE,
SQLNSOBJECTTYPE_DATABASE_DIAGRAMS,
SQLNSOBJECTTYPE_DATABASE_DIAGRAM,
SQLNSOBJECTTYPE_DATABASE_TABLES,
SQLNSOBJECTTYPE_DATABASE_TABLE,
SQLNSOBJECTTYPE_DATABASE_VIEWS,
SQLNSOBJECTTYPE_DATABASE_VIEW,
SQLNSOBJECTTYPE_DATABASE_SPS,
SQLNSOBJECTTYPE_DATABASE_SP,
SQLNSOBJECTTYPE_DATABASE_EXTENDED_SPS,
SQLNSOBJECTTYPE_DATABASE_EXTENDED_SP,
SQLNSOBJECTTYPE_DATABASE_RULES,
SQLNSOBJECTTYPE_DATABASE_RULE,
SQLNSOBJECTTYPE_DATABASE_DEFAULTS,
SQLNSOBJECTTYPE_DATABASE_DEFAULT,
SQLNSOBJECTTYPE_DATABASE_UDDTS,
SQLNSOBJECTTYPE_DATABASE_UDDT,
SQLNSOBJECTTYPE_JOBSERVER,
SQLNSOBJECTTYPE_SQLMAIL,
SQLNSOBJECTTYPE_DTC,
SQLNSOBJECTTYPE_INDEXSERVER,
SQLNSOBJECTTYPE_INDEXSERVER_CATALOGS,
SQLNSOBJECTTYPE_INDEXSERVER_CATALOG,
SQLNSOBJECTTYPE_ERRORLOGS,
SQLNSOBJECTTYPE_ERRORLOG,
SQLNSOBJECTTYPE_ERRORLOGENTRY,
SQLNSOBJECTTYPE_ALERTS,
SQLNSOBJECTTYPE_OPERATORS,
SQLNSOBJECTTYPE_MSX_JOBS,
SQLNSOBJECTTYPE_LOCAL_JOBS,
SQLNSOBJECTTYPE_MULTI_JOBS,
SQLNSOBJECTTYPE_LOCAL_JOB,
SQLNSOBJECTTYPE_MULTI_JOB,
SQLNSOBJECTTYPE_REMOTESERVERS,
SQLNSOBJECTTYPE_LINKEDSERVERS,
SQLNSOBJECTTYPE_SERVERROLES,
SQLNSOBJECTTYPE_SERVERROLE,
SQLNSOBJECTTYPE_ALERT,
SQLNSOBJECTTYPE_OPERATOR,
SQLNSOBJECTTYPE_REMOTESERVER,
SQLNSOBJECTTYPE_LINKEDSERVER,
SQLNSOBJECTTYPE_LINKEDSERVER_TABLES,
SQLNSOBJECTTYPE_LINKEDSERVER_TABLE,
SQLNSOBJECTTYPE_REPLICATION,
SQLNSOBJECTTYPE_REPLICATION_PUBLISHERS,
SQLNSOBJECTTYPE_REPLICATION_PUBLISHER,
SQLNSOBJECTTYPE_REPLICATION_AGENTS,
SQLNSOBJECTTYPE_REPLICATION_REPORTS,
SQLNSOBJECTTYPE_REPLICATION_ALERTS,
SQLNSOBJECTTYPE_REPLICATION_SUBSCRIPTION,
// do not add between here and SQLNSOBJECTTYPE_REPLICATION_MERGE_AGENTS
SQLNSOBJECTTYPE_REPLICATION_PUBLICATION,
SQLNSOBJECTTYPE_REPLICATION_SNAPSHOT_AGENTS,
SQLNSOBJECTTYPE_REPLICATION_LOGREADER_AGENTS,
SQLNSOBJECTTYPE_REPLICATION_DISTRIBUTION_AGENTS,
SQLNSOBJECTTYPE_REPLICATION_MERGE_AGENTS,
SQLNSOBJECTTYPE_REPLICATION_MISC_AGENTS,
//
SQLNSOBJECTTYPE_REPLICATION_SNAPSHOT_AGENT,
SQLNSOBJECTTYPE_REPLICATION_LOGREADER_AGENT,
SQLNSOBJECTTYPE_REPLICATION_DISTRIBUTION_AGENT,
SQLNSOBJECTTYPE_REPLICATION_MERGE_AGENT,
SQLNSOBJECTTYPE_REPLICATION_MISC_AGENT,
SQLNSOBJECTTYPE_REPLICATION_REPORT,
SQLNSOBJECTTYPE_DTSPKGS,
SQLNSOBJECTTYPE_DTS_LOCALPKGS,
SQLNSOBJECTTYPE_DTS_REPOSPKGS,
SQLNSOBJECTTYPE_DTS_METADATA,
SQLNSOBJECTTYPE_DTSPKG,
SQLNSOBJECTTYPE_DB_MAINT_PLANS,
SQLNSOBJECTTYPE_DB_MAINT_PLAN,
SQLNSOBJECTTYPE_WEBASSISTANTJOBS,
SQLNSOBJECTTYPE_WEBASSISTANTJOB,
SQLNSOBJECTTYPE_CURRENTACTIVITY,
SQLNSOBJECTTYPE_CURRENTACTIVITY_PROCESSINFO,
SQLNSOBJECTTYPE_CURRENTACTIVITY_PROCESSINFO_INFO,
SQLNSOBJECTTYPE_CURRENTACTIVITY_LOCKEDPROCESSES,
SQLNSOBJECTTYPE_CURRENTACTIVITY_SPID,
SQLNSOBJECTTYPE_CURRENTACTIVITY_SPID_INFO,
SQLNSOBJECTTYPE_CURRENTACTIVITY_LOCKEDOBJECTS,
SQLNSOBJECTTYPE_CURRENTACTIVITY_LOCKEDOBJECT,
SQLNSOBJECTTYPE_CURRENTACTIVITY_LOCKEDOBJECT_INFO
//update SQLNSOBJECTTYPE_LAST is you add items at end
} SQLNS_ENUM_END(SQLNSObjectType);
#define SQLNSOBJECTTYPE_LAST SQLNSOBJECTTYPE_CURRENTACTIVITY_LOCKEDOBJECT_INFO
typedef SQLNS_ENUM_BEGIN(SQLNSModality, "Suggests the modality of the UI displayed")
{
SQLNamespace_DontCare = 0x0000,
SQLNamespace_PreferModal = 0x0001,
SQLNamespace_PreferModeless = 0x0002
} SQLNS_ENUM_END(SQLNSModality);
typedef SQLNS_ENUM_BEGIN(SQLNSCommandID, "Command IDs available in the SQLNamespace")
{
SQLNS_CmdID_WIZARD_CREATEDB = 1,
SQLNS_CmdID_WIZARD_CREATEINDEX ,
SQLNS_CmdID_WIZARD_DTSIMPORT ,
SQLNS_CmdID_WIZARD_DTSEXPORT ,
SQLNS_CmdID_WIZARD_CREATEJOB ,
SQLNS_CmdID_WIZARD_SECURITY ,
SQLNS_CmdID_WIZARD_SP ,
SQLNS_CmdID_WIZARD_VIEW ,
SQLNS_CmdID_WIZARD_INDEXTUNING ,
SQLNS_CmdID_WIZARD_ALERT ,
SQLNS_CmdID_WIZARD_MAINTPLAN ,
SQLNS_CmdID_WIZARD_WEBASST ,
SQLNS_CmdID_WIZARD_BACKUP ,
SQLNS_CmdID_WIZARD_CREATETRACE ,
SQLNS_CmdID_WIZARDS ,
SQLNS_CmdID_PROPERTIES ,
SQLNS_CmdID_DELETE ,
SQLNS_CmdID_NEW_SERVER ,
SQLNS_CmdID_NEW_JOB ,
SQLNS_CmdID_NEW_ALERT ,
SQLNS_CmdID_NEW_OPERATOR ,
SQLNS_CmdID_NEW_REMOTE_SERVER ,
SQLNS_CmdID_NEW_DATABASE ,
SQLNS_CmdID_NEW_TABLE ,
SQLNS_CmdID_NEW_VIEW ,
SQLNS_CmdID_NEW_STORED_PROCEDURE ,
SQLNS_CmdID_NEW_EXTENDED_STORED_PROCEDURE,
SQLNS_CmdID_NEW_RULE ,
SQLNS_CmdID_NEW_DEFAULT ,
SQLNS_CmdID_NEW_UDDT ,
SQLNS_CmdID_NEW_SERVER_GROUP ,
SQLNS_CmdID_NEW_DIAGRAM ,
SQLNS_CmdID_NEW_DATABASE_ROLE ,
SQLNS_CmdID_NEW_LOGIN ,
SQLNS_CmdID_NEW_DBUSER ,
SQLNS_CmdID_NEW_BACKUPDEVICE ,
SQLNS_CmdID_OPEN ,
SQLNS_CmdID_JOBSERVER_ERRORLOG ,
SQLNS_CmdID_JOB_START ,
SQLNS_CmdID_JOB_HISTORY ,
SQLNS_CmdID_JOB_STOP ,
SQLNS_CmdID_JOBSERVER_TARGET_SERVERS ,
SQLNS_CmdID_EDIT_SERVER ,
SQLNS_CmdID_OBJECT_PERMISSIONS ,
SQLNS_CmdID_OBJECT_DEPENDENCIES ,
SQLNS_CmdID_TABLE_INDEXES ,
SQLNS_CmdID_TABLE_TRIGGERS ,
//SQLNS_CmdID_JOB_STEPS ,
SQLNS_CmdID_SVC_STOP = 49,
SQLNS_CmdID_SVC_PAUSE ,
SQLNS_CmdID_SVC_START ,
SQLNS_CmdID_SERVER_SECURITY ,
//SQLNS_CmdID_CONNECT ,
//SQLNS_CmdID_SERVER_CONFIGURATION ,
SQLNS_CmdID_ENLIST = 55,
SQLNS_CmdID_DEFECT ,
SQLNS_CmdID_EXPORT_JOB ,
//SQLNS_CmdID_MULTI_SERVER_JOB_STATUS ,
SQLNS_CmdID_DTS_IMPORT = 59,
SQLNS_CmdID_DTS_EXPORT ,
SQLNS_CmdID_DTS_RUN ,
SQLNS_CmdID_ENLIST_REG_SERVERS ,
SQLNS_CmdID_TOOLS_MAINT_PLAN ,
SQLNS_CmdID_REPLICATION_PUBLISH ,
SQLNS_CmdID_REPLICATION_CONFIGURE ,
SQLNS_CmdID_REPLICATION_SUBSCRIBE ,
SQLNS_CmdID_REPLICATION_SCRIPT ,
SQLNS_CmdID_REPLICATION_UNINSTALL ,
SQLNS_CmdID_NEW_PUBLICATION ,
SQLNS_CmdID_PUSH_NEW_SUBSCRIPTION ,
SQLNS_CmdID_REPLICATION_RESOLVE_CONFLICTS,
SQLNS_CmdID_NEW_SUBSCRIPTION ,
SQLNS_CmdID_REINIT_SUBSCRIPTION ,
SQLNS_CmdID_SYNCHRONIZE_NOW ,
SQLNS_CmdID_STOP_SYNCHRONIZING ,
SQLNS_CmdID_AGENT_ERROR_DETAILS ,
SQLNS_CmdID_AGENT_HISTORY ,
SQLNS_CmdID_SECURITY_LIST ,
SQLNS_CmdID_GENERATE_SCRIPTS ,
SQLNS_CmdID_DATABASE_BACKUP ,
SQLNS_CmdID_DATABASE_RESTORE ,
SQLNS_CmdID_DATABASE_SHRINKDB ,
SQLNS_CmdID_PUBLISHING_PROPERTIES ,
SQLNS_CmdID_NEW_LINKED_SERVER ,
//more to come
} SQLNS_ENUM_END(SQLNSCommandID);
typedef SQLNS_ENUM_BEGIN(SQLNSErrors, "Error ranges available in the SQLNamespace")
{
SQLNS_E_NotImplemented = 1001,
SQLNS_E_OrdOutOfRange = 1002,
SQLNS_E_NameNotFound = 1003,
SQLNS_E_NameDup = 1004,
SQLNS_E_Already_Initialized = 1005,
SQLNS_E_InvalidRootType = 1006,
SQLNS_E_RequireAppName = 1007,
SQLNS_E_InvalidObjectHandle = 1008,
SQLNS_E_NoDMOObject = 1009,
SQLNS_E_InvalidCommandName = 1010,
SQLNS_E_InvalidCommandID = 1011,
SQLNS_E_InvalidRootInfo = 1012,
SQLNS_E_InvalidServerName = 1013,
SQLNS_E_InvalidLoginInfo = 1014,
SQLNS_E_InvalidDBName = 1015,
SQLNS_E_InvalidConnectString = 1016,
SQLNS_E_SrvGrpNotFound = 1017,
SQLNS_E_ServerNotFound = 1018,
SQLNS_E_DatabaseNotFound = 1019,
SQLNS_E_InvalidServerVersion = 1020,
SQLNS_E_ExternalError = 1100 //General, external error..we don't have a description for this error
//more to come
} SQLNS_ENUM_END(SQLNSErrors);
#ifndef SQLNS_ODL_
#define SIZE_SQLOBJ_NAMELEN 128
typedef struct
{
DWORD dwStructSize; // in Bytes
DWORD dwCreatePubAllowTypes;
DWORD dwPubPropPages;
DWORD dwConfigurePropPages;
TCHAR szDatabaseName[SIZE_SQLOBJ_NAMELEN + 2]; // database name should not be more than 128 TCHARs.
} REPLICATION_CUSTOMIZE_INFO, *PREPLICATION_CUSTOMIZE_INFO;
#endif
// These flag groups are used to control the Create Publication wizard,
// the publication property sheet, and Configure Publishing and
// Distribution property sheet
//
// the caller may not want to allow all types of publications to be created
const long fAllowSnapshotPubs = 0x01;
const long fAllowTransPubs = 0x02;
const long fAllowMergePubs = 0x04;
const long grfAllowAllPubTypes = 0x07;
// You can select which property pages to display in the publication property
// sheet. Note that some pages are dependent on the General page being displayed.
// General page is always displayed.
const long fPubPropArticles = 0x02;
const long fPubPropFilters = 0x04; // controls both Columns & Rows
const long fPubPropSubs = 0x08;
const long fPubPropSubOptions = 0x10;
const long fPubPropStatus = 0x20;
const long fPubPropScript = 0x40;
const long fPubPropACL = 0x80;
const long grfPubPropAllPages = 0xFF;
// You can select which property pages to display in the Configure Publishing
// and Distribution property sheet.
const long fConfigurePropDist = 0x01;
const long fConfigurePropDBs = 0x02;
const long fConfigurePropSubscribers = 0x04;
const long fConfigurePropPublishers = 0x08;
const long fConfigurePropAccessList = 0x10; // UNDONE: This page has been removed
const long grfConfigurePropAllPages = 0x1F;
#ifdef SQLNS_ODL_
typedef long HSQLNSITEM, *PHSQLNSITEM; //handle to a namespace item
#else
typedef DWORD HSQLNSITEM, *PHSQLNSITEM; //handle to a namespace item
#endif
#endif //DO_ODL_TYPDEFS_
#define SQLNS_DEF_H_
#pragma option pop /*P_O_Pop*/
#endif //SQLNS_DEF_H_