打印网络属性的示例C + +
HRESULT PrintNetworkProperties (IltmsServer *服务器)
{
HRESULT人力资源;
CComPtr < IltmsNetworkProperties >道具;
/ /打印网络属性到stdout
_tprintf (_T (”——网络属性——\ n \ n”));
hr =服务器- > GetNetworkProperties(道具);
如果(失败(人力资源)
转到错误;
{
CComBSTR v;
hr =道具- > get_IPAddress(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T (“IPAddress = % s \ n”),因为(LPCTSTR)字符串(v));
}
{
CComBSTR v;
hr =道具- > get_ActualIPAddress(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T (“ActualIPAddress = % s \ n”),因为(LPCTSTR)字符串(v));
}
{
长v;
hr =道具- > get_Port(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T (“端口= % ld \ n”),v);
}
{
长v;
hr =道具- > get_RTPPort(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T (“RTPPort = % ld \ n”),v);
}
{
VARIANT_BOOL v;
hr =道具- > get_OpenWindowsFirewall(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T (“OpenWindowsFirewall = % s \ n”),(v = = VARIANT_TRUE) ?_T (“真正的”):_T (“假”));
}
{
ltmsAuthentication v;
hr =道具- > get_Authentication(增加了);
如果(失败(人力资源)
转到错误;
开关(v)
{
情况下ltmsAuthentication_Basic:
_tprintf (_T (“身份验证=基本\ n”));
打破;
情况下ltmsAuthentication_Digest:
_tprintf (_T (“身份验证=消化\ n”));
打破;
默认的:
_tprintf (_T (“身份验证=没有\ n”));
打破;
}
}
{
CComBSTR v;
hr =道具- > get_UserName(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T ("用户名= \ " % s \“\ n”),因为(LPCTSTR)字符串(v));
}
{
CComBSTR v;
hr =道具- > get_Password(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T (“密码= \ " % s \“\ n”),因为(LPCTSTR)字符串(v));
}
{
CComBSTR v;
hr =道具- > get_Realm(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T (“领域= \ " % s \“\ n”),因为(LPCTSTR)字符串(v));
}
{
长v;
hr =道具- > get_IdleTimeOut(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T (“IdleTimeOut = % ld \ n”),v);
}
{
长v;
hr =道具- > get_RTCPTimeOut(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T (“RTCPTimeOut = % ld \ n”),v);
}
{
CComBSTR v;
hr =道具- > get_ServerName(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T (“ServerName = \ " % s \“\ n”),因为(LPCTSTR)字符串(v));
}
{
VARIANT_BOOL v;
hr =道具- > get_RTSPEnable(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T (“RTSPEnable = % s \ n”),(v = = VARIANT_TRUE) ?_T (“真正的”):_T (“假”));
}
{
VARIANT_BOOL v;
hr =道具- > get_RTMPEnable(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T (“RTMPEnable = % s \ n”),(v = = VARIANT_TRUE) ?_T (“真正的”):_T (“假”));
}
{
VARIANT_BOOL v;
hr =道具- > get_HDSEnable(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T (“HDSEnable = % s \ n”),(v = = VARIANT_TRUE) ?_T (“真正的”):_T (“假”));
}
{
VARIANT_BOOL v;
hr =道具- > get_SSFEnable(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T (“SSFEnable = % s \ n”),(v = = VARIANT_TRUE) ?_T (“真正的”):_T (“假”));
}
{
VARIANT_BOOL v;
hr =道具- > get_DASHEnable(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T (“DASHEnable = % s \ n”),(v = = VARIANT_TRUE) ?_T (“真正的”):_T (“假”));
}
{
CComBSTR v;
hr =道具- > get_MediaFolder(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T (" MediaFolder = \ " % s \“\ n”),因为(LPCTSTR)字符串(v));
}
{
CComBSTR v;
hr =道具- > get_ResolvedMediaFolder(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T (" ResolvedMediaFolder = \ " % s \“\ n”),因为(LPCTSTR)字符串(v));
}
{
长v;
hr =道具- > get_SSLPort(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T (“SSLPort = % ld \ n”),v);
}
{
CComVariant v;
字节* pdata;
hr =道具- > get_SSLCertificateHash(增加了);
如果(失败(人力资源)
转到错误;
hr = SafeArrayAccessData (v。parray (无效* *)&pdata);
如果(失败(人力资源)
转到错误;
_tprintf (_T (" SSLCertificateHash = "));
如果(! v.parray - > rgsabound [0] .cElements)
{
_tprintf (_T (<空>”));
}
其他的
{
为(ULONG我= 0;我< v.parray - > rgsabound [0] .cElements;我+ +)
{
_tprintf (_T (“x % 02”),(单位)pdata[我]);
}
}
_tprintf (_T (“\ n”));
}
{
CComBSTR v;
hr =道具- > get_SSLCertificateStore(增加了);
如果(失败(人力资源)
转到错误;
_tprintf (_T (" SSLCertificateStore = \ " % s \“\ n”),因为(LPCTSTR)字符串(v));
}
错误:
_tprintf (_T (“\ n”));
返回人力资源;
}