Home | History | Annotate | Download | only in include

Lines Matching defs:bstr

49   BSTR WINAPI ConvertStringToBSTR(const char *pSrc);
50 char *WINAPI ConvertBSTRToString(BSTR pSrc);
60 _bstr_t(BSTR bstr,bool fCopy);
81 BSTR copy(bool fCopy = true) const;
83 void Assign(BSTR s);
84 BSTR &GetBSTR();
85 BSTR *GetAddress();
86 void Attach(BSTR s);
87 BSTR Detach() throw();
93 Data_t(BSTR bstr,bool fCopy);
103 BSTR Copy() const;
104 void Assign(BSTR s);
105 void Attach(BSTR s) throw();
110 BSTR m_wstr;
138 inline _bstr_t::_bstr_t(BSTR bstr,bool fCopy) : m_Data(new Data_t(bstr,fCopy)) {
212 inline BSTR _bstr_t::copy(bool fCopy) const { return (m_Data!=NULL) ? (fCopy ? m_Data->Copy() : m_Data->GetWString()) : NULL; }
214 inline void _bstr_t::Assign(BSTR s) {
223 inline BSTR &_bstr_t::GetBSTR() {
231 inline BSTR *_bstr_t::GetAddress() {
236 inline void _bstr_t::Attach(BSTR s) {
242 inline BSTR _bstr_t::Detach() {
245 BSTR b = m_Data->GetWString();
282 inline _bstr_t::Data_t::Data_t(BSTR bstr,bool fCopy) : m_str(NULL),m_RefCount(1) {
283 if(fCopy && bstr!=NULL) {
284 m_wstr = ::SysAllocStringByteLen(reinterpret_cast<char *>(bstr),::SysStringByteLen(bstr));
286 } else m_wstr = bstr;
327 inline BSTR _bstr_t::Data_t::Copy() const {
329 BSTR bstr = ::SysAllocStringByteLen(reinterpret_cast<char *>(m_wstr),::SysStringByteLen(m_wstr));
330 if(!bstr) { _com_issue_error(E_OUTOFMEMORY); }
331 return bstr;
335 inline void _bstr_t::Data_t::Assign(BSTR s) {
342 inline void _bstr_t::Data_t::Attach(BSTR s) throw() {
356 BSTR bstr1 = m_wstr;
357 BSTR bstr2 = str.m_wstr;
545 BSTR bstr = static_cast<wchar_t *>(bstrSrc);
546 if(!bstr) V_BSTR(this) = NULL;
548 V_BSTR(this) = ::SysAllocStringByteLen(reinterpret_cast<char *>(bstr),::SysStringByteLen(bstr));
814 _COM_ASSERT(V_VT(this)!=VT_BSTR || !((BSTR) bstrSrc) || V_BSTR(this)!=(BSTR) bstrSrc);
824 BSTR bstr = static_cast<wchar_t *>(bstrSrc);
825 V_BSTR(this) = ::SysAllocStringByteLen(reinterpret_cast<char *>(bstr),::SysStringByteLen(bstr));