WinStd/classwinstd_1_1bstr.html

375 lines
44 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.3"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>WinStd: winstd::bstr Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">WinStd
</div>
<div id="projectbrief">Additional templates and function helpers for Microsoft Windows using Standard C++ classes</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.3 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search",'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><b>winstd</b></li><li class="navelem"><a class="el" href="classwinstd_1_1bstr.html">bstr</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="classwinstd_1_1bstr-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">winstd::bstr Class Reference<div class="ingroups"><a class="el" href="group___win_std_c_o_m.html">COM object management</a></div></div></div>
</div><!--header-->
<div class="contents">
<p>BSTR string wrapper.
<a href="classwinstd_1_1bstr.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="_c_o_m_8h_source.html">WinStd/COM.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for winstd::bstr:</div>
<div class="dyncontent">
<div class="center">
<img src="classwinstd_1_1bstr.png" usemap="#winstd::bstr_map" alt=""/>
<map id="winstd::bstr_map" name="winstd::bstr_map">
<area href="classwinstd_1_1dplhandle.html" alt="winstd::dplhandle&lt; BSTR, NULL &gt;" shape="rect" coords="0,56,203,80"/>
<area href="classwinstd_1_1handle.html" alt="winstd::handle&lt; BSTR, INVAL &gt;" shape="rect" coords="0,0,203,24"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:af27d5b6889a972b6870aea38eb54a2fa"><td class="memItemLeft" align="right" valign="top"><a id="af27d5b6889a972b6870aea38eb54a2fa" name="af27d5b6889a972b6870aea38eb54a2fa"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>bstr</b> (1 LPCOLESTR src) noexcept</td></tr>
<tr class="memdesc:af27d5b6889a972b6870aea38eb54a2fa"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs BSTR from OLE string. <br /></td></tr>
<tr class="separator:af27d5b6889a972b6870aea38eb54a2fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaca6a2fe552f00117c941be0bff1dbd8"><td class="memItemLeft" align="right" valign="top"><a id="aaca6a2fe552f00117c941be0bff1dbd8" name="aaca6a2fe552f00117c941be0bff1dbd8"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>bstr</b> (1 LPCOLESTR src, 1 UINT len) noexcept</td></tr>
<tr class="memdesc:aaca6a2fe552f00117c941be0bff1dbd8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs BSTR from OLE string with length. <br /></td></tr>
<tr class="separator:aaca6a2fe552f00117c941be0bff1dbd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaeb1471d7df7cd9dc6f58dad3e46a999"><td class="memTemplParams" colspan="2"><a id="aaeb1471d7df7cd9dc6f58dad3e46a999" name="aaeb1471d7df7cd9dc6f58dad3e46a999"></a>
template&lt;class _Traits , class _Ax &gt; </td></tr>
<tr class="memitem:aaeb1471d7df7cd9dc6f58dad3e46a999"><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><b>bstr</b> (1 const std::basic_string&lt; wchar_t, _Traits, _Ax &gt; &amp;src) noexcept</td></tr>
<tr class="memdesc:aaeb1471d7df7cd9dc6f58dad3e46a999"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs BSTR from std::basic_string. <br /></td></tr>
<tr class="separator:aaeb1471d7df7cd9dc6f58dad3e46a999"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a317d3e0783e7d3de7cc6516964ea3f5e"><td class="memItemLeft" align="right" valign="top">virtual&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1bstr.html#a317d3e0783e7d3de7cc6516964ea3f5e">~bstr</a> ()</td></tr>
<tr class="memdesc:a317d3e0783e7d3de7cc6516964ea3f5e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroys the string. <a href="classwinstd_1_1bstr.html#a317d3e0783e7d3de7cc6516964ea3f5e">More...</a><br /></td></tr>
<tr class="separator:a317d3e0783e7d3de7cc6516964ea3f5e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa6970921c6334a993f5f0fc1be5d54e3"><td class="memItemLeft" align="right" valign="top">UINT&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1bstr.html#aa6970921c6334a993f5f0fc1be5d54e3">length</a> () const noexcept</td></tr>
<tr class="memdesc:aa6970921c6334a993f5f0fc1be5d54e3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the length of the string. <a href="classwinstd_1_1bstr.html#aa6970921c6334a993f5f0fc1be5d54e3">More...</a><br /></td></tr>
<tr class="separator:aa6970921c6334a993f5f0fc1be5d54e3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classwinstd_1_1dplhandle"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classwinstd_1_1dplhandle')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classwinstd_1_1dplhandle.html">winstd::dplhandle&lt; BSTR, NULL &gt;</a></td></tr>
<tr class="memitem:ac95cbfb481c0d5e6c60d130f3c270b59 inherit pub_methods_classwinstd_1_1dplhandle"><td class="memItemLeft" align="right" valign="top"><a id="ac95cbfb481c0d5e6c60d130f3c270b59" name="ac95cbfb481c0d5e6c60d130f3c270b59"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>dplhandle</b> () noexcept</td></tr>
<tr class="memdesc:ac95cbfb481c0d5e6c60d130f3c270b59 inherit pub_methods_classwinstd_1_1dplhandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes a new class instance with the object handle set to INVAL. <br /></td></tr>
<tr class="separator:ac95cbfb481c0d5e6c60d130f3c270b59 inherit pub_methods_classwinstd_1_1dplhandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f2130c865d37fca76108dbbd20ab17a inherit pub_methods_classwinstd_1_1dplhandle"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1dplhandle.html#a0f2130c865d37fca76108dbbd20ab17a">dplhandle</a> (1 <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a> h) noexcept</td></tr>
<tr class="memdesc:a0f2130c865d37fca76108dbbd20ab17a inherit pub_methods_classwinstd_1_1dplhandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes a new class instance with an already available object handle. <a href="classwinstd_1_1dplhandle.html#a0f2130c865d37fca76108dbbd20ab17a">More...</a><br /></td></tr>
<tr class="separator:a0f2130c865d37fca76108dbbd20ab17a inherit pub_methods_classwinstd_1_1dplhandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acac5db2f50f63d6722c426bcb3dc4cda inherit pub_methods_classwinstd_1_1dplhandle"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1dplhandle.html#acac5db2f50f63d6722c426bcb3dc4cda">dplhandle</a> (1 const <a class="el" href="classwinstd_1_1dplhandle.html">dplhandle</a>&lt; <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a>, INVAL &gt; &amp;h) noexcept</td></tr>
<tr class="memdesc:acac5db2f50f63d6722c426bcb3dc4cda inherit pub_methods_classwinstd_1_1dplhandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy constructor. <a href="classwinstd_1_1dplhandle.html#acac5db2f50f63d6722c426bcb3dc4cda">More...</a><br /></td></tr>
<tr class="separator:acac5db2f50f63d6722c426bcb3dc4cda inherit pub_methods_classwinstd_1_1dplhandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a636a6bee87049b5f502bf93c9b86eb inherit pub_methods_classwinstd_1_1dplhandle"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1dplhandle.html#a0a636a6bee87049b5f502bf93c9b86eb">dplhandle</a> (1 <a class="el" href="classwinstd_1_1dplhandle.html">dplhandle</a>&lt; <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a>, INVAL &gt; &amp;&amp;h) noexcept</td></tr>
<tr class="memdesc:a0a636a6bee87049b5f502bf93c9b86eb inherit pub_methods_classwinstd_1_1dplhandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Move constructor. <a href="classwinstd_1_1dplhandle.html#a0a636a6bee87049b5f502bf93c9b86eb">More...</a><br /></td></tr>
<tr class="separator:a0a636a6bee87049b5f502bf93c9b86eb inherit pub_methods_classwinstd_1_1dplhandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5d13e70adec2c6f3ca4aaaefc94f8bf inherit pub_methods_classwinstd_1_1dplhandle"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classwinstd_1_1dplhandle.html">dplhandle</a>&lt; <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a>, INVAL &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1dplhandle.html#af5d13e70adec2c6f3ca4aaaefc94f8bf">operator=</a> (1 <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a> h) noexcept</td></tr>
<tr class="memdesc:af5d13e70adec2c6f3ca4aaaefc94f8bf inherit pub_methods_classwinstd_1_1dplhandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Attaches already available object handle. <a href="classwinstd_1_1dplhandle.html#af5d13e70adec2c6f3ca4aaaefc94f8bf">More...</a><br /></td></tr>
<tr class="separator:af5d13e70adec2c6f3ca4aaaefc94f8bf inherit pub_methods_classwinstd_1_1dplhandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a407b519c6511f7a6cfdd582fdbdeaf76 inherit pub_methods_classwinstd_1_1dplhandle"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classwinstd_1_1dplhandle.html">dplhandle</a>&lt; <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a>, INVAL &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1dplhandle.html#a407b519c6511f7a6cfdd582fdbdeaf76">operator=</a> (1 const <a class="el" href="classwinstd_1_1dplhandle.html">dplhandle</a>&lt; <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a>, INVAL &gt; &amp;h) noexcept</td></tr>
<tr class="memdesc:a407b519c6511f7a6cfdd582fdbdeaf76 inherit pub_methods_classwinstd_1_1dplhandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Duplicates the object. <a href="classwinstd_1_1dplhandle.html#a407b519c6511f7a6cfdd582fdbdeaf76">More...</a><br /></td></tr>
<tr class="separator:a407b519c6511f7a6cfdd582fdbdeaf76 inherit pub_methods_classwinstd_1_1dplhandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7ab2b44aba9a977d6809d68a262a18b9 inherit pub_methods_classwinstd_1_1dplhandle"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classwinstd_1_1dplhandle.html">dplhandle</a>&lt; <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a>, INVAL &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1dplhandle.html#a7ab2b44aba9a977d6809d68a262a18b9">operator=</a> (1 <a class="el" href="classwinstd_1_1dplhandle.html">dplhandle</a>&lt; <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a>, INVAL &gt; &amp;&amp;h) noexcept</td></tr>
<tr class="memdesc:a7ab2b44aba9a977d6809d68a262a18b9 inherit pub_methods_classwinstd_1_1dplhandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Moves the object. <a href="classwinstd_1_1dplhandle.html#a7ab2b44aba9a977d6809d68a262a18b9">More...</a><br /></td></tr>
<tr class="separator:a7ab2b44aba9a977d6809d68a262a18b9 inherit pub_methods_classwinstd_1_1dplhandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48e66c8979560019e339867de944a265 inherit pub_methods_classwinstd_1_1dplhandle"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1dplhandle.html#a48e66c8979560019e339867de944a265">duplicate</a> () const</td></tr>
<tr class="memdesc:a48e66c8979560019e339867de944a265 inherit pub_methods_classwinstd_1_1dplhandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Duplicates and returns a new object handle. <a href="classwinstd_1_1dplhandle.html#a48e66c8979560019e339867de944a265">More...</a><br /></td></tr>
<tr class="separator:a48e66c8979560019e339867de944a265 inherit pub_methods_classwinstd_1_1dplhandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1ff2ba0e390908720e6cd8383d1e3d4 inherit pub_methods_classwinstd_1_1dplhandle"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1dplhandle.html#ae1ff2ba0e390908720e6cd8383d1e3d4">attach_duplicated</a> (1 <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a> h)</td></tr>
<tr class="memdesc:ae1ff2ba0e390908720e6cd8383d1e3d4 inherit pub_methods_classwinstd_1_1dplhandle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Duplicates an object handle and sets a new object handle. <a href="classwinstd_1_1dplhandle.html#ae1ff2ba0e390908720e6cd8383d1e3d4">More...</a><br /></td></tr>
<tr class="separator:ae1ff2ba0e390908720e6cd8383d1e3d4 inherit pub_methods_classwinstd_1_1dplhandle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classwinstd_1_1handle"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classwinstd_1_1handle')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classwinstd_1_1handle.html">winstd::handle&lt; BSTR, INVAL &gt;</a></td></tr>
<tr class="memitem:a1b9c4f9529c9efa7d16dec8bab3b00e4 inherit pub_methods_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top"><a id="a1b9c4f9529c9efa7d16dec8bab3b00e4" name="a1b9c4f9529c9efa7d16dec8bab3b00e4"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>handle</b> () noexcept</td></tr>
<tr class="memdesc:a1b9c4f9529c9efa7d16dec8bab3b00e4 inherit pub_methods_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes a new class instance with the object handle set to INVAL. <br /></td></tr>
<tr class="separator:a1b9c4f9529c9efa7d16dec8bab3b00e4 inherit pub_methods_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a91f3f6d80650f3cbb1857b879c060e7b inherit pub_methods_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1handle.html#a91f3f6d80650f3cbb1857b879c060e7b">handle</a> (1 <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a> h) noexcept</td></tr>
<tr class="memdesc:a91f3f6d80650f3cbb1857b879c060e7b inherit pub_methods_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes a new class instance with an already available object handle. <a href="classwinstd_1_1handle.html#a91f3f6d80650f3cbb1857b879c060e7b">More...</a><br /></td></tr>
<tr class="separator:a91f3f6d80650f3cbb1857b879c060e7b inherit pub_methods_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad6a984b1373bcec59e5342f035cebefc inherit pub_methods_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1handle.html#ad6a984b1373bcec59e5342f035cebefc">handle</a> (1 <a class="el" href="classwinstd_1_1handle.html">handle</a>&lt; <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a>, INVAL &gt; &amp;&amp;h) noexcept</td></tr>
<tr class="memdesc:ad6a984b1373bcec59e5342f035cebefc inherit pub_methods_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Move constructor. <a href="classwinstd_1_1handle.html#ad6a984b1373bcec59e5342f035cebefc">More...</a><br /></td></tr>
<tr class="separator:ad6a984b1373bcec59e5342f035cebefc inherit pub_methods_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae58ca3031e921aba1319e55159473ea9 inherit pub_methods_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classwinstd_1_1handle.html">handle</a>&lt; <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a>, INVAL &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1handle.html#ae58ca3031e921aba1319e55159473ea9">operator=</a> (1 <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a> h) noexcept</td></tr>
<tr class="memdesc:ae58ca3031e921aba1319e55159473ea9 inherit pub_methods_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Attaches already available object handle. <a href="classwinstd_1_1handle.html#ae58ca3031e921aba1319e55159473ea9">More...</a><br /></td></tr>
<tr class="separator:ae58ca3031e921aba1319e55159473ea9 inherit pub_methods_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abcb7f966e387a00f71268cf092295665 inherit pub_methods_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classwinstd_1_1handle.html">handle</a>&lt; <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a>, INVAL &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1handle.html#abcb7f966e387a00f71268cf092295665">operator=</a> (1 <a class="el" href="classwinstd_1_1handle.html">handle</a>&lt; <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a>, INVAL &gt; &amp;&amp;h) noexcept</td></tr>
<tr class="memdesc:abcb7f966e387a00f71268cf092295665 inherit pub_methods_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Move assignment. <a href="classwinstd_1_1handle.html#abcb7f966e387a00f71268cf092295665">More...</a><br /></td></tr>
<tr class="separator:abcb7f966e387a00f71268cf092295665 inherit pub_methods_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a86114637674c82d6fd96d7b3eae39ac8 inherit pub_methods_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1handle.html#a86114637674c82d6fd96d7b3eae39ac8">operator handle_type</a> () const</td></tr>
<tr class="memdesc:a86114637674c82d6fd96d7b3eae39ac8 inherit pub_methods_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Auto-typecasting operator. <a href="classwinstd_1_1handle.html#a86114637674c82d6fd96d7b3eae39ac8">More...</a><br /></td></tr>
<tr class="separator:a86114637674c82d6fd96d7b3eae39ac8 inherit pub_methods_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f1ac60cf62e41c24394bf0e3457fbd9 inherit pub_methods_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a> *&amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1handle.html#a0f1ac60cf62e41c24394bf0e3457fbd9">operator*</a> () const</td></tr>
<tr class="memdesc:a0f1ac60cf62e41c24394bf0e3457fbd9 inherit pub_methods_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the object handle value when the object handle is a pointer to a value (class, struct, etc.). <a href="classwinstd_1_1handle.html#a0f1ac60cf62e41c24394bf0e3457fbd9">More...</a><br /></td></tr>
<tr class="separator:a0f1ac60cf62e41c24394bf0e3457fbd9 inherit pub_methods_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2bd2de7bb89dcebe2c9379dd54ee79c1 inherit pub_methods_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1handle.html#a2bd2de7bb89dcebe2c9379dd54ee79c1">operator&amp;</a> ()</td></tr>
<tr class="memdesc:a2bd2de7bb89dcebe2c9379dd54ee79c1 inherit pub_methods_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns the object handle reference. <a href="classwinstd_1_1handle.html#a2bd2de7bb89dcebe2c9379dd54ee79c1">More...</a><br /></td></tr>
<tr class="separator:a2bd2de7bb89dcebe2c9379dd54ee79c1 inherit pub_methods_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a285ada5936fe7afdd12eed70b38c2084 inherit pub_methods_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1handle.html#a285ada5936fe7afdd12eed70b38c2084">operator-&gt;</a> () const</td></tr>
<tr class="memdesc:a285ada5936fe7afdd12eed70b38c2084 inherit pub_methods_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Provides object handle member access when the object handle is a pointer to a class or struct. <a href="classwinstd_1_1handle.html#a285ada5936fe7afdd12eed70b38c2084">More...</a><br /></td></tr>
<tr class="separator:a285ada5936fe7afdd12eed70b38c2084 inherit pub_methods_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5df08ecb32b9040bf7342479aee2286c inherit pub_methods_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1handle.html#a5df08ecb32b9040bf7342479aee2286c">operator!</a> () const</td></tr>
<tr class="memdesc:a5df08ecb32b9040bf7342479aee2286c inherit pub_methods_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Tests if the object handle is INVAL. <a href="classwinstd_1_1handle.html#a5df08ecb32b9040bf7342479aee2286c">More...</a><br /></td></tr>
<tr class="separator:a5df08ecb32b9040bf7342479aee2286c inherit pub_methods_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35646c66bd8939c8feb525878e51773e inherit pub_methods_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1handle.html#a35646c66bd8939c8feb525878e51773e">operator&lt;</a> (1 <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a> h) const</td></tr>
<tr class="memdesc:a35646c66bd8939c8feb525878e51773e inherit pub_methods_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is handle less than? <a href="classwinstd_1_1handle.html#a35646c66bd8939c8feb525878e51773e">More...</a><br /></td></tr>
<tr class="separator:a35646c66bd8939c8feb525878e51773e inherit pub_methods_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe61cdc3ca53194bb55d3a6cabcc3c68 inherit pub_methods_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1handle.html#abe61cdc3ca53194bb55d3a6cabcc3c68">operator&lt;=</a> (1 <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a> h) const</td></tr>
<tr class="memdesc:abe61cdc3ca53194bb55d3a6cabcc3c68 inherit pub_methods_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is handle less than or equal to? <a href="classwinstd_1_1handle.html#abe61cdc3ca53194bb55d3a6cabcc3c68">More...</a><br /></td></tr>
<tr class="separator:abe61cdc3ca53194bb55d3a6cabcc3c68 inherit pub_methods_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a602527ac20da6859ba53cc4ee2dc2399 inherit pub_methods_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1handle.html#a602527ac20da6859ba53cc4ee2dc2399">operator&gt;=</a> (1 <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a> h) const</td></tr>
<tr class="memdesc:a602527ac20da6859ba53cc4ee2dc2399 inherit pub_methods_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is handle greater than or equal to? <a href="classwinstd_1_1handle.html#a602527ac20da6859ba53cc4ee2dc2399">More...</a><br /></td></tr>
<tr class="separator:a602527ac20da6859ba53cc4ee2dc2399 inherit pub_methods_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a17cab850d12bf22e82392cd75b4b1482 inherit pub_methods_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1handle.html#a17cab850d12bf22e82392cd75b4b1482">operator&gt;</a> (1 <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a> h) const</td></tr>
<tr class="memdesc:a17cab850d12bf22e82392cd75b4b1482 inherit pub_methods_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is handle greater than? <a href="classwinstd_1_1handle.html#a17cab850d12bf22e82392cd75b4b1482">More...</a><br /></td></tr>
<tr class="separator:a17cab850d12bf22e82392cd75b4b1482 inherit pub_methods_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae7eaa8c309897e38c2e2e44db53694b9 inherit pub_methods_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1handle.html#ae7eaa8c309897e38c2e2e44db53694b9">operator!=</a> (1 <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a> h) const</td></tr>
<tr class="memdesc:ae7eaa8c309897e38c2e2e44db53694b9 inherit pub_methods_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is handle not equal to? <a href="classwinstd_1_1handle.html#ae7eaa8c309897e38c2e2e44db53694b9">More...</a><br /></td></tr>
<tr class="separator:ae7eaa8c309897e38c2e2e44db53694b9 inherit pub_methods_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a93994c0a04251d37f377495c15dbe10c inherit pub_methods_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1handle.html#a93994c0a04251d37f377495c15dbe10c">operator==</a> (1 <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a> h) const</td></tr>
<tr class="memdesc:a93994c0a04251d37f377495c15dbe10c inherit pub_methods_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is handle equal to? <a href="classwinstd_1_1handle.html#a93994c0a04251d37f377495c15dbe10c">More...</a><br /></td></tr>
<tr class="separator:a93994c0a04251d37f377495c15dbe10c inherit pub_methods_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6f8dc89f77c86714e65f9783a06ec208 inherit pub_methods_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1handle.html#a6f8dc89f77c86714e65f9783a06ec208">attach</a> (1 <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a> h) noexcept</td></tr>
<tr class="memdesc:a6f8dc89f77c86714e65f9783a06ec208 inherit pub_methods_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets a new object handle for the class. <a href="classwinstd_1_1handle.html#a6f8dc89f77c86714e65f9783a06ec208">More...</a><br /></td></tr>
<tr class="separator:a6f8dc89f77c86714e65f9783a06ec208 inherit pub_methods_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad5acf6ce53e092b8d4d53f909cf321f9 inherit pub_methods_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1handle.html#ad5acf6ce53e092b8d4d53f909cf321f9">detach</a> ()</td></tr>
<tr class="memdesc:ad5acf6ce53e092b8d4d53f909cf321f9 inherit pub_methods_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Dismisses the object handle from this class. <a href="classwinstd_1_1handle.html#ad5acf6ce53e092b8d4d53f909cf321f9">More...</a><br /></td></tr>
<tr class="separator:ad5acf6ce53e092b8d4d53f909cf321f9 inherit pub_methods_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a706aaab7691a472c608890f8e5dd0d96 inherit pub_methods_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top"><a id="a706aaab7691a472c608890f8e5dd0d96" name="a706aaab7691a472c608890f8e5dd0d96"></a>
void&#160;</td><td class="memItemRight" valign="bottom"><b>free</b> ()</td></tr>
<tr class="memdesc:a706aaab7691a472c608890f8e5dd0d96 inherit pub_methods_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroys the object. <br /></td></tr>
<tr class="separator:a706aaab7691a472c608890f8e5dd0d96 inherit pub_methods_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-methods" name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a87edcb348af7d69ad86709e32b519870"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1bstr.html#a87edcb348af7d69ad86709e32b519870">free_internal</a> () noexcept override</td></tr>
<tr class="memdesc:a87edcb348af7d69ad86709e32b519870"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destroys the string. <a href="classwinstd_1_1bstr.html#a87edcb348af7d69ad86709e32b519870">More...</a><br /></td></tr>
<tr class="separator:a87edcb348af7d69ad86709e32b519870"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e8ccceb048b0663fb56285ef757bb0b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1bstr.html#a9e8ccceb048b0663fb56285ef757bb0b">duplicate_internal</a> (1 <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a> h) const noexcept override</td></tr>
<tr class="memdesc:a9e8ccceb048b0663fb56285ef757bb0b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Duplicates the string. <a href="classwinstd_1_1bstr.html#a9e8ccceb048b0663fb56285ef757bb0b">More...</a><br /></td></tr>
<tr class="separator:a9e8ccceb048b0663fb56285ef757bb0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae39d1b6bcfc0d7cf17ccdca93d26fb13"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1dplhandle.html#ae39d1b6bcfc0d7cf17ccdca93d26fb13">duplicate_internal</a> (1 <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a> h) const noexcept=0</td></tr>
<tr class="memdesc:ae39d1b6bcfc0d7cf17ccdca93d26fb13"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract member function that must be implemented by child classes to do the actual object handle duplication. <a href="classwinstd_1_1dplhandle.html#ae39d1b6bcfc0d7cf17ccdca93d26fb13">More...</a><br /></td></tr>
<tr class="separator:ae39d1b6bcfc0d7cf17ccdca93d26fb13"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a137560600851eb4c3e4b80e25d4da629"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classwinstd_1_1handle.html#a137560600851eb4c3e4b80e25d4da629">free_internal</a> () noexcept=0</td></tr>
<tr class="memdesc:a137560600851eb4c3e4b80e25d4da629"><td class="mdescLeft">&#160;</td><td class="mdescRight">Abstract member function that must be implemented by child classes to do the actual object destruction. <a href="classwinstd_1_1handle.html#a137560600851eb4c3e4b80e25d4da629">More...</a><br /></td></tr>
<tr class="separator:a137560600851eb4c3e4b80e25d4da629"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_types_classwinstd_1_1handle"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classwinstd_1_1handle')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classwinstd_1_1handle.html">winstd::handle&lt; BSTR, INVAL &gt;</a></td></tr>
<tr class="memitem:a3dda19199ecfbc378c932e7d84d0ea81 inherit pub_types_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top"><a id="a3dda19199ecfbc378c932e7d84d0ea81" name="a3dda19199ecfbc378c932e7d84d0ea81"></a>
typedef BSTR&#160;</td><td class="memItemRight" valign="bottom"><b>handle_type</b></td></tr>
<tr class="memdesc:a3dda19199ecfbc378c932e7d84d0ea81 inherit pub_types_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Datatype of the object handle this template class handles. <br /></td></tr>
<tr class="separator:a3dda19199ecfbc378c932e7d84d0ea81 inherit pub_types_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_static_attribs_classwinstd_1_1handle"><td colspan="2" onclick="javascript:toggleInherit('pub_static_attribs_classwinstd_1_1handle')"><img src="closed.png" alt="-"/>&#160;Static Public Attributes inherited from <a class="el" href="classwinstd_1_1handle.html">winstd::handle&lt; BSTR, INVAL &gt;</a></td></tr>
<tr class="memitem:gacf43e306968474166474090690857e1c inherit pub_static_attribs_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top"><a id="gacf43e306968474166474090690857e1c" name="gacf43e306968474166474090690857e1c"></a>
static const BSTR&#160;</td><td class="memItemRight" valign="bottom"><b>invalid</b></td></tr>
<tr class="memdesc:gacf43e306968474166474090690857e1c inherit pub_static_attribs_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Invalid handle value. <br /></td></tr>
<tr class="separator:gacf43e306968474166474090690857e1c inherit pub_static_attribs_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classwinstd_1_1handle"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classwinstd_1_1handle')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classwinstd_1_1handle.html">winstd::handle&lt; BSTR, INVAL &gt;</a></td></tr>
<tr class="memitem:aabde3f16fd98b06b3b0282ef7806eb59 inherit pro_attribs_classwinstd_1_1handle"><td class="memItemLeft" align="right" valign="top"><a id="aabde3f16fd98b06b3b0282ef7806eb59" name="aabde3f16fd98b06b3b0282ef7806eb59"></a>
<a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a>&#160;</td><td class="memItemRight" valign="bottom"><b>m_h</b></td></tr>
<tr class="memdesc:aabde3f16fd98b06b3b0282ef7806eb59 inherit pro_attribs_classwinstd_1_1handle"><td class="mdescLeft">&#160;</td><td class="mdescRight">Object handle. <br /></td></tr>
<tr class="separator:aabde3f16fd98b06b3b0282ef7806eb59 inherit pro_attribs_classwinstd_1_1handle"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p >BSTR string wrapper. </p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a317d3e0783e7d3de7cc6516964ea3f5e" name="a317d3e0783e7d3de7cc6516964ea3f5e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a317d3e0783e7d3de7cc6516964ea3f5e">&#9670;&nbsp;</a></span>~bstr()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual winstd::bstr::~bstr </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Destroys the string. </p>
<dl class="section see"><dt>See also</dt><dd><a href="https://msdn.microsoft.com/en-us/library/windows/desktop/ms221481.aspx">SysFreeString function</a> </dd></dl>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a9e8ccceb048b0663fb56285ef757bb0b" name="a9e8ccceb048b0663fb56285ef757bb0b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9e8ccceb048b0663fb56285ef757bb0b">&#9670;&nbsp;</a></span>duplicate_internal()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a> winstd::bstr::duplicate_internal </td>
<td>(</td>
<td class="paramtype">1 <a class="el" href="classwinstd_1_1handle.html#a3dda19199ecfbc378c932e7d84d0ea81">handle_type</a>&#160;</td>
<td class="paramname"><em>h</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Duplicates the string. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">h</td><td>Existing string</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Duplicated string</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a href="https://msdn.microsoft.com/en-us/library/windows/desktop/ms221458.aspx">SysAllocString function</a> </dd></dl>
<p>Implements <a class="el" href="classwinstd_1_1dplhandle.html#ae39d1b6bcfc0d7cf17ccdca93d26fb13">winstd::dplhandle&lt; BSTR, NULL &gt;</a>.</p>
</div>
</div>
<a id="a87edcb348af7d69ad86709e32b519870" name="a87edcb348af7d69ad86709e32b519870"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a87edcb348af7d69ad86709e32b519870">&#9670;&nbsp;</a></span>free_internal()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void winstd::bstr::free_internal </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">protected</span><span class="mlabel">virtual</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Destroys the string. </p>
<dl class="section see"><dt>See also</dt><dd><a href="https://msdn.microsoft.com/en-us/library/windows/desktop/ms221481.aspx">SysFreeString function</a> </dd></dl>
<p>Implements <a class="el" href="classwinstd_1_1handle.html#a137560600851eb4c3e4b80e25d4da629">winstd::handle&lt; BSTR, INVAL &gt;</a>.</p>
</div>
</div>
<a id="aa6970921c6334a993f5f0fc1be5d54e3" name="aa6970921c6334a993f5f0fc1be5d54e3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa6970921c6334a993f5f0fc1be5d54e3">&#9670;&nbsp;</a></span>length()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">UINT winstd::bstr::length </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the length of the string. </p>
<dl class="section see"><dt>See also</dt><dd><a href="https://msdn.microsoft.com/en-us/library/windows/desktop/ms221240.aspx">SysStringLen function</a> </dd></dl>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>include/WinStd/<a class="el" href="_c_o_m_8h_source.html">COM.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Fri Feb 4 2022 13:28:44 for WinStd by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.3
</small></address>
</body>
</html>