Device Monitoring Studio Server - TODO
Docs

IMonitoringAdmin Interface

This is a main interface exposed by dmssrv.MonitoringSite object. Use the following PROGID to connect to the instance: dmssrv.MonitoringSite. Use this interface to manage the server.

Declaration

interface IMonitoringAdmin extends ${IDispatch} {
    // Properties
    ${AutoDiscover}: boolean;
    readonly ${Connections}: ${IConnectionCollection};
    ${ListenConnections}: boolean;
    ${SecurityDescriptor}: string;
    // Methods
    ${InstallLicense}(path: string): void;
}
public interface IMonitoringAdmin : ${IDispatch}
{
    // Properties
    bool ${AutoDiscover} { get; set; }
    ${IConnectionCollection} ${Connections} { get; }
    bool ${ListenConnections} { get; set; }
    string ${SecurityDescriptor} { get; set; }
    // Methods
    void ${InstallLicense}(string path);
}
struct IMonitoringAdmin : IDispatch
{
    // Properties
    VARIANT_BOOL ${AutoDiscover};  // get set 
    ${IConnectionCollectionPtr#IConnectionCollection} ${Connections};  // get 
    VARIANT_BOOL ${ListenConnections};  // get set 
    _bstr_t ${SecurityDescriptor};  // get set 
    // Methods
    HRESULT ${InstallLicense}(_bstr_t path);
};

IMonitoringAdmin Properties

AutoDiscover

AutoDiscover: boolean;
bool AutoDiscover { get; set; }
VARIANT_BOOL AutoDiscover;  // get set 

AutoDiscover property controls whether the server answers the auto-discover broadcast requests.

Connections

readonly Connections: ${IConnectionCollection};
${IConnectionCollection} Connections { get; }
${IConnectionCollectionPtr#IConnectionCollection} Connections;  // get 

This property returns the collection of connections.

Obtaining list of connections:

$dms = New-Object -ComObject 'dmssrv.MonitoringSite'
$connections = dms.Connections

ListenConnections

ListenConnections: boolean;
bool ListenConnections { get; set; }
VARIANT_BOOL ListenConnections;  // get set 

The property controls whether the server accepts connections or not.

SecurityDescriptor

SecurityDescriptor: string;
string SecurityDescriptor { get; set; }
_bstr_t SecurityDescriptor;  // get set 

Get or set the server security descriptor. Security descriptor must be in string format. The following table shows the values of supported permissions:

PermissionValue
DMS_SERVER_CONNECT0x00000001
DMS_SERVER_AUTODISCOVER0x00000002
DMS_SERVER_CREATESESSION0x00000004
DMS_SERVER_RESTARTDEVICE0x00000008

Note that DMS_SERVER_CONNECT permission must be granted for any other permission to be effective.

Only the DACL part of passed security descriptor is used. Owner/group and audit information is ignored.

Changing security descriptor.

$dms = New-Object -ComObject 'dmssrv.MonitoringSite'
$dms.SecurityDescriptor = 'D:(A;;0x3;;;WD)'

IMonitoringAdmin Methods

InstallLicense

InstallLicense(path: string): void;
void InstallLicense(string path);
HRESULT InstallLicense(_bstr_t path);
path
A full path to license file.

Installs a given license file.