Document revision date: 19 July 1999

OpenVMS Connectivity Developer Guide


Previous Contents Index


Appendix E
Lists of Differences, APIs, and Interfaces

This appendix contains a list of implementation differences between COM for OpenVMS and Microsoft COM as well as a list of APIs and interfaces provided in this release of COM for OpenVMS.

E.1 Differences between COM for OpenVMS and Microsoft COM

The following sections list important implementation differences between COM for OpenVMS and Microsoft's COM.

E.1.1 Service Control Manager (SCM)

OpenVMS does not provide an equivalent to the Windows NT Service Control Manager. As a result, applications that depend on Server services (such as stop, start, pause, and resume) rely on the OpenVMS features that provide similar functionality (if the features are available).

For example, you would use the OpenVMS site-specific startup and shutdown command procedures to implement automatic starting of services at system startup and automatic shutdown of services at system shutdown. Service APIs such as RegisterServiceCtrlHandler, ChangeServiceConfig, and so on, are not provided on OpenVMS.

E.1.2 Server Application Stack Size

In COM for OpenVMS, server application functions run in the context of server threads. As a result, server functions have a limited stack space of 48 KB. If you require additional space for local variables or structures, you should allocate dynamic memory for local variables or structures.

E.1.3 Use of the "char" Datatype

OpenVMS and Windows NT translate the IDL base data type "char" differently.

OpenVMS translates the data type as MIDL_CHAR, which is defined to be CHAR, and further defined to be "char." The OpenVMS compiler by default takes this to be equivalent to "unsigned char;" in most cases they can be used interchangeably. The two are not the same---C++ treats them as different data types you specify them in class member definitions.

Windows NT translates the data type directly as "unsigned char." This causes conflicts with Visual C++, which treats the "char" datatype as equivalent to "signed char." As in OpenVMS, "char" is not the same as "signed char" in class member definitions.

There are two workarounds to this mismatch:

E.1.4 MIDL Compiler Version

The MIDL compiler supplied with COM for OpenVMS is based on Microsoft's MIDL compiler V3.00.44

E.1.5 Using DCOM$CNFG to Change Application Configuration Permission

Use the Application Security Submenu options 5 and 6 to change the OpenVMS Registry key permissions of some keys associated with an application. Option 5 and 6 affect the security settings of the following keys:

On Windows NT systems, the security settings of the subkeys under HKEY_CLASSES_ROOT\CLSID\{guid} are changed only if the existing security settings match the original settings of HKEY_CLASSES_ROOT\APPID\{guid}.

On OpenVMS systems, the settings of the subkeys are changed even if the existing settings do not match the original settings of HKEY_CLASSES_ROOT\APPID\{guid}.

Options 5 and 6 do not change the settings of all keys associated with an application. For example, options 5 and 6 do not affect the following keys:

To change the security settings of these keys, use the following procedure:

  1. From a Windows NT system, start RegEdt32.
  2. From the Registry menu, choose Select Computer and connect to the OpenVMS system that contains the OpenVMS Registry.
  3. Select the key associated with the application you want to change.
  4. From the Security menu, choose Permissions... and grant the user Full Control.
  5. Repeat the last two steps for each registry key associated with the application (see the list of keys described earlier in this section).

Note

HKEY_CLASSES_ROOT is an alias for HKEY_LOCAL_MACHINE\SOFTWARE\Classes. If you connect to the OpenVMS Registry from Windows NT using Regedt32 and you want to edit the HKEY_CLASSES_ROOT key, edit the HKEY_LOCAL_MACHINE\SOFTWARE\Classes key.

E.2 APIs

APIs that require security support are not supported in COM Version 1.0 for OpenVMS.

The APIs supported in this release are as follows:


BindMoniker 
BstrFromVector 
CLSIDFromProgID 
CLSIDFromString 
CoAddRefServerProcess 
CoCopyProxy 
CoCreateFreeThreadedMarshaler 
CoCreateGuid 
CoCreateInstance 
CoCreateInstanceEx 
CoDisconnectObject 
CoDosDateTimeToFileTime 
CoFileTimeNow 
CoFileTimeToDosDateTime 
CoFreeAllLibraries 
CoFreeLibrary 
CoFreeUnusedLibraries 
CoGetCallContext 
CoGetClassObject 
CoGetCurrentProcess 
CoGetInstanceFromFile 
CoGetInstanceFromIStorage 
CoGetInterfaceAndReleaseStream 
CoGetMalloc 
CoGetMarshalSizeMax 
CoGetPSClsid 
CoGetStandardMarshal 
CoGetTreatAsClass 
CoImpersonateClient 
CoInitialize 
CoInitializeEx 
CoInitializeSecurity 
CoIsHandlerConnected 
CoLoadLibrary 
CoLockObjectExternal 
CoMarshalInterface 
CoQueryAuthenticationServices 
CoQueryClientBlanket 
CoQueryProxyBlanket 
 
CoRegisterChannelHook 
 
CoRegisterClassObject 
CoRegisterMallocSpy 
CoRegisterMessageFilter 
CoRegisterPSClsid 
CoReleaseMarshalData 
CoReleaseServerProcess 
CoResumeClassObjects 
CoRevertToSelf 
CoRevokeClassObject 
CoRevokeMallocSpy 
CoSetProxyBlanket 
CoSuspendClassObjects 
CoTaskMemAlloc 
CoTaskMemFree 
CoTaskMemRealloc 
CoTreatAsClass 
CoUninitialize 
CoUnmarshalInterface 
CreateAntiMoniker 
CreateBindCtx 
CreateClassMoniker 
CreateDataAdviseHolder 
CreateDispTypeInfo 
CreateErrorInfo 
CreateGenericComposite 
CreateILockBytesOnHGlobal 
CreateItemMoniker 
CreatePointerMoniker 
CreateStdDispatch 
CreateStreamOnHGlobal 
CreateTypeLib 
DispGetIDsOfNames 
DispGetParam 
DispInvoke 
DllCanUnloadNow 
DllGetClassObject 
DllGetClassObject 
DllMain 
DllRegisterServer 
DllUnregisterServer 
DosDateTimeToVariantTime 
FreePropVariantArray 
GetActiveObject 
GetAltMonthNames 
GetClassFile 
GetConvertStg 
GetErrorInfo 
GetHGlobalFromILockBytes 
GetHGlobalFromStream 
GetRunningObjectTable 
IIDFromString 
IsEqualCLSID 
IsEqualGUID 
IsEqualIID 
IsValidIid 
IsValidInterface 
IsValidPtrIn 
IsValidPtrOut 
LHashValOfName 
LHashValOfNameSys 
LoadRegTypeLib 
LoadTypeLibEx 
MkParseDisplayName 
MonikerCommonPrefixWith 
MonikerRelativePathTo 
ProgIDFromCLSID 
PropStgNameToFmtId 
PropVariantClear 
PropVariantCopy 
QueryPathOfRegTypeLib 
ReadClassStg 
ReadClassStm 
ReadFmtUserTypeStg 
RegisterActiveObject 
RegisterTypeLib 
ReleaseStgMedium 
RevokeActiveObject 
SafeArrayAccessData 
SafeArrayAllocData 
SafeArrayAllocDescriptor 
SafeArrayCopy 
SafeArrayCopyData 
SafeArrayCreate 
SafeArrayCreateVector 
SafeArrayDestroy 
SafeArrayDestroyData 
SafeArrayDestroyDescriptor 
SafeArrayGetDim 
SafeArrayGetElement 
SafeArrayGetElemsize 
SafeArrayGetLBound 
SafeArrayGetUBound 
SafeArrayLock 
SafeArrayPtrOfIndex 
SafeArrayPutElement 
SafeArrayRedim 
SafeArrayUnaccessData 
SafeArrayUnlock 
SetConvertStg 
SetErrorInfo 
StgCreateDocfile 
StgCreateDocfileOnILockBytes 
StgCreatePropSetStg 
StgCreatePropStg 
StgIsStorageFile 
StgIsStorageILockBytes 
StgOpenPropStg 
StgOpenStorage 
StgOpenStorageOnILockBytes 
StgSetTimes 
StringFromCLSID 
StringFromGUID2 
StringFromIID 
SysAllocString 
SysAllocStringByteLen 
SysAllocStringLen 
SysFreeString 
SysReAllocString 
SysReAllocStringLen 
SysStringByteLen 
SysStringLen 
SystemTimeToVariantTime 
UnRegisterTypeLib 
VarDateFromUdate 
VarNumFromParseNum 
VarParseNumFromStr 
VarUdateFromDate 
VariantChangeType 
VariantChangeTypeEx 
VariantClear 
VariantCopy 
VariantCopyInd 
VariantInit 
VariantTimeToDosDateTime 
VariantTimeToSystemTime 
VectorFromBstr 
WriteClassStg 
WriteClassStm 
WriteFmtUserTypeStg 

E.3 Interfaces

The interfaces supported in this release are as follows:


IAdviseSink 
IBindCtx 
IClassActivator 
IClassFactory 
IConnectionPoint 
IConnectionPointContainer 
ICreateErrorInfo 
ICreateTypeInfo 
ICreateTypeLib 
IDataAdviseHolder 
IDataObject 
IDispatch 
IEnumCallBack 
IEnumConnectionPoints 
IEnumConnections 
IEnumFORMATETC 
IEnumMoniker 
IEnumOLEVerb 
IEnumSTATDATA 
IEnumSTATPROPSETSTG 
IEnumSTATSTG 
IEnumString 
IEnumUnknown 
IEnumVariant 
IErrorInfo 
IExternalConnection 
ILockBytes 
IMalloc 
IMallocSpy 
IMarshal 
IMessageFilter 
IMoniker 
IMultiQI 
IParseDisplayName 
IPersist 
IPersistFile 
IPersistStorage 
IPersistStream 
IPropertySetStorage 
IPropertyStorage 
IRootStorage 
IRunnableObject 
IRunningObjectTable 
IStdMarshalInfo 
IStorage 
IStream 
ISupportErrorInfo 
ITypeComp 
ITypeInfo 
ITypeInfo2 
ITypeLib 
ITypeLib2 
IUnknown 


Appendix F
List of Files Installed by COM for OpenVMS

F.1 Files Installed by COM for OpenVMS

The following files are installed as part of the COM for OpenVMS installation process:


[000000]DEC-AXPVMS-DCOM-V0101--1.PCSI$TLB 
[DCOM$LIBRARY]CDERR.H 
[DCOM$LIBRARY]CGUID.H 
[DCOM$LIBRARY]COGUID.H 
[DCOM$LIBRARY]COMMDLG.H 
[DCOM$LIBRARY]CONIO.H 
[DCOM$LIBRARY]DCOM$GUIDGEN.CLD 
[DCOM$LIBRARY]DCOM$REGDATA.REG 
[DCOM$LIBRARY]DCOM$RUNSHRLIB.CLD 
[DCOM$LIBRARY]DCOM.OPT 
[DCOM$LIBRARY]DDE.H 
[DCOM$LIBRARY]DDEML.H 
[DCOM$LIBRARY]DLGS.H 
[DCOM$LIBRARY]EXCPT.H 
[DCOM$LIBRARY]IMM.H 
[DCOM$LIBRARY]INITGUID.H 
[DCOM$LIBRARY]LZEXPAND.H 
[DCOM$LIBRARY]MCX.H 
[DCOM$LIBRARY]MIDLES.H 
[DCOM$LIBRARY]MIDL_STUB_TYPES.H 
[DCOM$LIBRARY]MMSYSTEM.H 
[DCOM$LIBRARY]NB30.H 
[DCOM$LIBRARY]NTA_MESSAGE.H 
[DCOM$LIBRARY]OAIDL.H 
[DCOM$LIBRARY]OAIDL.IDL 
[DCOM$LIBRARY]OBJBASE.H 
[DCOM$LIBRARY]OBJIDL.H 
[DCOM$LIBRARY]OBJIDL.IDL 
[DCOM$LIBRARY]OCIDL.H 
[DCOM$LIBRARY]OCIDL.IDL 
[DCOM$LIBRARY]OLE2.H 
[DCOM$LIBRARY]OLEAUTO.H 
[DCOM$LIBRARY]OLECTL.H 
[DCOM$LIBRARY]OLEIDL.H 
[DCOM$LIBRARY]OLEIDL.IDL 
[DCOM$LIBRARY]POPPACK.H 
[DCOM$LIBRARY]PRSHT.H 
[DCOM$LIBRARY]PSHPACK1.H 
[DCOM$LIBRARY]PSHPACK2.H 
[DCOM$LIBRARY]PSHPACK4.H 
[DCOM$LIBRARY]PSHPACK8.H 
[DCOM$LIBRARY]PTHREAD.H 
[DCOM$LIBRARY]PTHREAD_EXCEPTION.H 
[DCOM$LIBRARY]RPC.H 
[DCOM$LIBRARY]RPCDCE.H 
[DCOM$LIBRARY]RPCDCEP.H 
[DCOM$LIBRARY]RPCNDR.H 
[DCOM$LIBRARY]RPCNSI.H 
[DCOM$LIBRARY]RPCNSIP.H 
[DCOM$LIBRARY]RPCNTERR.H 
[DCOM$LIBRARY]RPCPROXY.H 
[DCOM$LIBRARY]SERVPROV.H 
[DCOM$LIBRARY]SERVPROV.IDL 
[DCOM$LIBRARY]SHELLAPI.H 
[DCOM$LIBRARY]STDOLE2.TLB 
[DCOM$LIBRARY]STDOLE32.TLB 
[DCOM$LIBRARY]TCHAR.H 
[DCOM$LIBRARY]UNKNWN.H 
[DCOM$LIBRARY]UNKNWN.IDL 
[DCOM$LIBRARY]URLMON.H 
[DCOM$LIBRARY]URLMON.IDL 
[DCOM$LIBRARY]UUID.OLB 
[DCOM$LIBRARY]VMS_DCOM.H 
[DCOM$LIBRARY]VMS_IOCTL.H 
[DCOM$LIBRARY]WCHAR.H 
[DCOM$LIBRARY]WINBASE.H 
[DCOM$LIBRARY]WINCON.H 
[DCOM$LIBRARY]WINDEF.H 
[DCOM$LIBRARY]WINDOWS.H 
[DCOM$LIBRARY]WINDU_PLATFORM.H 
[DCOM$LIBRARY]WINDU_STDLIB.H 
[DCOM$LIBRARY]WINDU_STRING.H 
[DCOM$LIBRARY]WINDU_VTBL.H 
[DCOM$LIBRARY]WINERROR.H 
[DCOM$LIBRARY]WINGDI.H 
[DCOM$LIBRARY]WINNETWK.H 
[DCOM$LIBRARY]WINNLS.H 
[DCOM$LIBRARY]WINNT.H 
[DCOM$LIBRARY]WINPERF.H 
[DCOM$LIBRARY]WINREG.H 
[DCOM$LIBRARY]WINSOCK.H 
[DCOM$LIBRARY]WINSPOOL.H 
[DCOM$LIBRARY]WINSVC.H 
[DCOM$LIBRARY]WINUSER.H 
[DCOM$LIBRARY]WINVER.H 
[DCOM$LIBRARY]WTYPES.H 
[DCOM$LIBRARY]WTYPES.IDL 
[DCOM$LIBRARY]WUEXTEN.H 
[DCOM$LIBRARY]WUUNALIGNED.H 
[DCOM$LIBRARY]WUVERSION.H 
[DCOM$WIN32.NLS]BIG5.NLS 
[DCOM$WIN32.NLS]CTYPE.NLS 
[DCOM$WIN32.NLS]C_037.NLS 
[DCOM$WIN32.NLS]C_10000.NLS 
[DCOM$WIN32.NLS]C_10001.NLS 
[DCOM$WIN32.NLS]C_10002.NLS 
[DCOM$WIN32.NLS]C_10003.NLS 
[DCOM$WIN32.NLS]C_10004.NLS 
[DCOM$WIN32.NLS]C_10005.NLS 
[DCOM$WIN32.NLS]C_10006.NLS 
[DCOM$WIN32.NLS]C_10007.NLS 
[DCOM$WIN32.NLS]C_10008.NLS 
[DCOM$WIN32.NLS]C_10010.NLS 
[DCOM$WIN32.NLS]C_10017.NLS 
[DCOM$WIN32.NLS]C_10029.NLS 
[DCOM$WIN32.NLS]C_10079.NLS 
[DCOM$WIN32.NLS]C_10081.NLS 
[DCOM$WIN32.NLS]C_10082.NLS 
[DCOM$WIN32.NLS]C_1026.NLS 
[DCOM$WIN32.NLS]C_1250.NLS 
[DCOM$WIN32.NLS]C_1251.NLS 
[DCOM$WIN32.NLS]C_1252.NLS 
[DCOM$WIN32.NLS]C_1253.NLS 
[DCOM$WIN32.NLS]C_1254.NLS 
[DCOM$WIN32.NLS]C_1255.NLS 
[DCOM$WIN32.NLS]C_1256.NLS 
[DCOM$WIN32.NLS]C_1257.NLS 
[DCOM$WIN32.NLS]C_1258.NLS 
[DCOM$WIN32.NLS]C_1361.NLS 
[DCOM$WIN32.NLS]C_20105.NLS 
[DCOM$WIN32.NLS]C_20261.NLS 
[DCOM$WIN32.NLS]C_20269.NLS 
[DCOM$WIN32.NLS]C_20273.NLS 
[DCOM$WIN32.NLS]C_20277.NLS 
[DCOM$WIN32.NLS]C_20278.NLS 
[DCOM$WIN32.NLS]C_20280.NLS 
[DCOM$WIN32.NLS]C_20284.NLS 
[DCOM$WIN32.NLS]C_20285.NLS 
[DCOM$WIN32.NLS]C_20290.NLS 
[DCOM$WIN32.NLS]C_20297.NLS 
[DCOM$WIN32.NLS]C_20420.NLS 
[DCOM$WIN32.NLS]C_20423.NLS 
[DCOM$WIN32.NLS]C_20833.NLS 
[DCOM$WIN32.NLS]C_20838.NLS 
[DCOM$WIN32.NLS]C_20866.NLS 
[DCOM$WIN32.NLS]C_20871.NLS 
[DCOM$WIN32.NLS]C_20880.NLS 
[DCOM$WIN32.NLS]C_20905.NLS 
[DCOM$WIN32.NLS]C_21025.NLS 
[DCOM$WIN32.NLS]C_21027.NLS 
[DCOM$WIN32.NLS]C_28592.NLS 
[DCOM$WIN32.NLS]C_28593.NLS 
[DCOM$WIN32.NLS]C_28594.NLS 
[DCOM$WIN32.NLS]C_28595.NLS 
[DCOM$WIN32.NLS]C_28596.NLS 
[DCOM$WIN32.NLS]C_28597.NLS 
[DCOM$WIN32.NLS]C_28598.NLS 
[DCOM$WIN32.NLS]C_28599.NLS 
[DCOM$WIN32.NLS]C_29001.NLS 
[DCOM$WIN32.NLS]C_437.NLS 
[DCOM$WIN32.NLS]C_500.NLS 
[DCOM$WIN32.NLS]C_708.NLS 
[DCOM$WIN32.NLS]C_720.NLS 
[DCOM$WIN32.NLS]C_737.NLS 
[DCOM$WIN32.NLS]C_775.NLS 
[DCOM$WIN32.NLS]C_850.NLS 
[DCOM$WIN32.NLS]C_852.NLS 
[DCOM$WIN32.NLS]C_855.NLS 
[DCOM$WIN32.NLS]C_857.NLS 
[DCOM$WIN32.NLS]C_860.NLS 
[DCOM$WIN32.NLS]C_861.NLS 
[DCOM$WIN32.NLS]C_862.NLS 
[DCOM$WIN32.NLS]C_863.NLS 
[DCOM$WIN32.NLS]C_864.NLS 
[DCOM$WIN32.NLS]C_865.NLS 
[DCOM$WIN32.NLS]C_866.NLS 
[DCOM$WIN32.NLS]C_869.NLS 
[DCOM$WIN32.NLS]C_870.NLS 
[DCOM$WIN32.NLS]C_874.NLS 
[DCOM$WIN32.NLS]C_875.NLS 
[DCOM$WIN32.NLS]C_932.NLS 
[DCOM$WIN32.NLS]C_936.NLS 
[DCOM$WIN32.NLS]C_949.NLS 
[DCOM$WIN32.NLS]C_950.NLS 
[DCOM$WIN32.NLS]KSC.NLS 
[DCOM$WIN32.NLS]LOCALE.NLS 
[DCOM$WIN32.NLS]L_EXCEPT.NLS 
[DCOM$WIN32.NLS]L_INTL.NLS 
[DCOM$WIN32.NLS]PRC.NLS 
[DCOM$WIN32.NLS]PRCP.NLS 
[DCOM$WIN32.NLS]SORTKEY.NLS 
[DCOM$WIN32.NLS]SORTTBLS.NLS 
[DCOM$WIN32.NLS]UNICODE.NLS 
[DCOM$WIN32.NLS]XJIS.NLS 
[DCOM$WIN32]WINDU$GDISHR.EXE 
[DCOM$WIN32]WINDU$KERNELSHR.EXE 
[DCOM$WIN32]WINDU$PRNTSHR.EXE 
[DCOM$WIN32]WINDU$USERSHR.EXE 
[DCOM$WIN32]WINDU.INI 
[DCOM$WIN32]WINDU.OPT 
[SYS$STARTUP]DCOM$RPCSS.COM 
[SYS$STARTUP]DCOM$SHUTDOWN.COM 
[SYS$STARTUP]DCOM$STARTUP.COM 
[SYSEXE]DCOM$CNFG.EXE 
[SYSEXE]DCOM$COMREGEDT.EXE 
[SYSEXE]DCOM$GUIDGEN.EXE 
[SYSEXE]DCOM$MIDL.EXE 
[SYSEXE]DCOM$REGSVR32.EXE 
[SYSEXE]DCOM$RPCSS.EXE 
[SYSEXE]DCOM$RUNSHRLIB.EXE 
[SYSEXE]DCOM$SCLIENT.EXE 
[SYSEXE]DCOM$SSERVER.EXE 
[SYSEXE]DCOM$SSERVER_REG.COM 
[SYSEXE]DCOM$TOOL.EXE 
[SYSHLP.EXAMPLES.DCOM.DISPATCH_SAMPLE1]BUILD_DISPATCH_SAMPLE1.COM 
[SYSHLP.EXAMPLES.DCOM.DISPATCH_SAMPLE1]BUILD_DISPATCH_SAMPLE1.MMS 
[SYSHLP.EXAMPLES.DCOM.DISPATCH_SAMPLE1]CLIENT.CXX 
[SYSHLP.EXAMPLES.DCOM.DISPATCH_SAMPLE1]CMPNT$SHR.OPT 
[SYSHLP.EXAMPLES.DCOM.DISPATCH_SAMPLE1]CMPNT.CXX 
[SYSHLP.EXAMPLES.DCOM.DISPATCH_SAMPLE1]CMPNT.DEF 
[SYSHLP.EXAMPLES.DCOM.DISPATCH_SAMPLE1]DCLIENT.CXX 
[SYSHLP.EXAMPLES.DCOM.DISPATCH_SAMPLE1]MAKE-ONE. 
[SYSHLP.EXAMPLES.DCOM.DISPATCH_SAMPLE1]MAKEFILE.BAT 
[SYSHLP.EXAMPLES.DCOM.DISPATCH_SAMPLE1]README-DISPATCH-SAMPLE1.TXT 
[SYSHLP.EXAMPLES.DCOM.DISPATCH_SAMPLE1]REGISTRY.CXX 
[SYSHLP.EXAMPLES.DCOM.DISPATCH_SAMPLE1]REGISTRY.H 
[SYSHLP.EXAMPLES.DCOM.DISPATCH_SAMPLE1]SERVER.IDL 
[SYSHLP.EXAMPLES.DCOM.EVENTS]BUILD_EVENTS_SAMPLE.COM 
[SYSHLP.EXAMPLES.DCOM.EVENTS]EVENTS_SAMPLE.C 
[SYSHLP.EXAMPLES.DCOM.EVENTS]EVENTS_SAMPLE.H 
[SYSHLP.EXAMPLES.DCOM.EVENTS]NTA_WIN32.C 
[SYSHLP.EXAMPLES.DCOM.SAMPLE1]BUILD_SAMPLE1.COM 
[SYSHLP.EXAMPLES.DCOM.SAMPLE1]BUILD_SAMPLE1.MMS 
[SYSHLP.EXAMPLES.DCOM.SAMPLE1]CLIENT.CXX 
[SYSHLP.EXAMPLES.DCOM.SAMPLE1]CMPNT$SHR.OPT 
[SYSHLP.EXAMPLES.DCOM.SAMPLE1]CMPNT.CXX 
[SYSHLP.EXAMPLES.DCOM.SAMPLE1]CMPNT.DEF 
[SYSHLP.EXAMPLES.DCOM.SAMPLE1]GUIDS.CXX 
[SYSHLP.EXAMPLES.DCOM.SAMPLE1]MAKE-ONE. 
[SYSHLP.EXAMPLES.DCOM.SAMPLE1]MAKEFILE.BAT 
[SYSHLP.EXAMPLES.DCOM.SAMPLE1]PROXY$SHR.OPT 
[SYSHLP.EXAMPLES.DCOM.SAMPLE1]PROXY.DEF 
[SYSHLP.EXAMPLES.DCOM.SAMPLE1]README-SAMPLE1.TXT 
[SYSHLP.EXAMPLES.DCOM.SAMPLE1]REGISTRY.CXX 
[SYSHLP.EXAMPLES.DCOM.SAMPLE1]REGISTRY.H 
[SYSHLP.EXAMPLES.DCOM.SAMPLE1]SERVER.IDL 
[SYSHLP.EXAMPLES.DCOM.SIMPLE]BUILD_SIMPLE.COM 
[SYSHLP.EXAMPLES.DCOM.SIMPLE]INSTALL.BAT 
[SYSHLP.EXAMPLES.DCOM.SIMPLE]MAKEFILE. 
[SYSHLP.EXAMPLES.DCOM.SIMPLE]README-SIMPLE.TXT 
[SYSHLP.EXAMPLES.DCOM.SIMPLE]REGISTER_SIMPLE.COM 
[SYSHLP.EXAMPLES.DCOM.SIMPLE]SCLIENT.CPP 
[SYSHLP.EXAMPLES.DCOM.SIMPLE]SSERVER.CPP 
[SYSHLP.EXAMPLES.DCOM.SIMPLE]SSERVER.REG 
[SYSHLP.EXAMPLES.DCOM.WRAPPER]BUILD_WRAPPER.COM 
[SYSHLP.EXAMPLES.DCOM.WRAPPER]MAKE-ONE. 
[SYSHLP.EXAMPLES.DCOM.WRAPPER]MAKEFILE.BAT 
[SYSHLP.EXAMPLES.DCOM.WRAPPER]README.TXT 
[SYSHLP.EXAMPLES.DCOM.WRAPPER]REGISTRY.CXX 
[SYSHLP.EXAMPLES.DCOM.WRAPPER]REGISTRY.H 
[SYSHLP.EXAMPLES.DCOM.WRAPPER]TEST.COM 
[SYSHLP.EXAMPLES.DCOM.WRAPPER]WR$SHR.OPT 
[SYSHLP.EXAMPLES.DCOM.WRAPPER]WRAPPER.CXX 
[SYSHLP.EXAMPLES.DCOM.WRAPPER]WRAPPER.DEF 
[SYSHLP.EXAMPLES.DCOM.WRAPPER]WRAPPER.IDL 
[SYSHLP.EXAMPLES.DCOM.WRAPPER]WRAPPERCLIENT.CXX 
[SYSHLP]OVMS_CONNECT_DEV_GDE_0799.PDF 
[SYSHLP]OVMS_CONNECT_DEV_GDE_0799.PS 
[SYSHLP]OVMS_CONNECT_DEV_GDE_0799.HTML 
[SYSHLP]OVMS_CONNECT_DEV_GDE_0799_001.HTML 
[SYSHLP]OVMS_CONNECT_DEV_GDE_0799_002.HTML 
[SYSHLP]OVMS_CONNECT_DEV_GDE_0799_003.HTML 
[SYSHLP]OVMS_CONNECT_DEV_GDE_0799_004.HTML 
[SYSHLP]OVMS_CONNECT_DEV_GDE_0799_005.HTML 
[SYSHLP]OVMS_CONNECT_DEV_GDE_0799_006.HTML 
[SYSHLP]OVMS_CONNECT_DEV_GDE_0799_007.HTML 
[SYSHLP]OVMS_CONNECT_DEV_GDE_0799_008.HTML 
[SYSHLP]OVMS_CONNECT_DEV_GDE_0799_CONTENTS.HTML 
[SYSHLP]OVMS_CONNECT_DEV_GDE_0799_CONTENTS_001.HTML 
[SYSHLP]OVMS_CONNECT_DEV_GDE_0799_INDEX.HTML 
[SYSHLP]VM-0126A.GIF 
[SYSHLP]VM-0224A.GIF 
[SYSHLP]VM-0225A.GIF 
[SYSHLP]VM-0226A.GIF 
[SYSHLP]VM-0227A.GIF 
[SYSHLP]VM-0228A.GIF 
[SYSHLP]VM-0283A.GIF 
[SYSHLP]VM-0331A.GIF 
[SYSHLP]VM-8782A.GIF 
[SYSHLP]ZK-8782A.GIF 
[SYSLIB]DCOM$MIDL_SHR.EXE 
[SYSLIB]DCOM$NT_WRAPPERS_SHR.EXE 
[SYSLIB]DCOM$OLE32_SHR.EXE 
[SYSLIB]DCOM$OLEAUT32_SHR.EXE 
[SYSLIB]DCOM$RPCRT4_SHR.EXE 
[SYSLIB]DCOM$WIN32_SHR.EXE 
[SYSMGR]DCOM$CREATE_ACCOUNT.COM 
[SYSMGR]DCOM$REGISTRY_KEYS.COM 
[SYSMGR]DCOM$SETUP.COM 
[SYSMSG]DCOM$GUIDGEN_MSG.EXE 
[SYSMSG]NTARPCMSG.EXE 
[SYSMSG]NTAWINMSG.EXE 
[000000]DEC-AXPVMS-DCOM-V0101--1.PCSI$DESCRIPTION 


Appendix G
Discount Coupons for COM Books

By special arrangement with the publishers, Compaq is able to provide COM for OpenVMS developers with the following discount coupons for some of the third-party COM books mentioned in this manual. Please follow the instructions on the coupon when ordering books.





Appendix H
Glossary


class (registry class): Registry element attribute that allows you to store additional descriptive information with a registry key or subkey.

encapsulation: The process of updating or extending the life of existing application code by leaving most of the code and its functionality intact, while including new or updated code (usually in a different programming language) at key entry points.

For example, you might add a Windows graphical interface to a character-cell application by writing some Visual Basic code that collects information from a Windows client, then formats and submits the data to the existing character cell application as if the data had come from the character cell interface.

hive: A discrete set of keys, subkeys, and value entries contained in the registry.

in-process server: An application that is located on the same system as the requesting client. On Windows NT systems, in-process servers are usually implemented as DLLs. On OpenVMS systems, in-process servers are usually implemented as shareable images.

key (registry key): Registry element that contains information specific to the computer, system, or user.

out-of-process server: An application that is located on a different system than the requesting client. On Windows NT systems, out-of-process servers are usually implemented as .EXE files.

registry: A hierarchical database consisting of one or more files that stores configuration information about system hardware and software.

subkey (registry subkey): Registry element that is a child of a registry key. A registry key can have zero or more subkeys.

value (registry value): Registry element that is the entry or value for a registry key or subkey.

wrapper: See encapsulation.


Appendix I
Acronyms


ACM: Authentication and Credential Management Authority

ACME: Authentication and Credential Management Extension

API: Application Program Interface

COM: Component Object Model

CLSID: Class ID

DCOM: Distributed Component Object Model

DLL: Dynamic Link Library

FMS: Forms Management System

GUI: Graphical User Interface

GUID: Globally Unique Identifier

MIDL: Microsoft Interface Definition Language

OO: Object oriented

RPC: Remote Procedure Call

SAM: Security Account Manager

SID: Security Identifier

SMG: Screen Management Facility

SSPI: Security Support Provider Interface

UI: User Interface

UIC: User Identification Code


Index Contents

  privacy and legal statement  
6539P008.HTM