處理BSTR的API函數

來源:互聯網
上載者:User
BSTR SysAllocString( OLECHAR FAR* sz );
    從OLECHAR*分配BSTR 。為避免意外的結果,請不要使用BSTR作為sz參數,除非你確定它不包含嵌   入的Null 字元。

BSTR SysAllocStringByteLen( char FAR* psz, unsigned int len );
   
用於包含位元據而不是真實字串的BSTR。輸入參數為ANSI字串指標。但是,由於它的目的是   在BSTR中儲存位元據,因此它不能將ANSI字元轉換為UNICODE。

BSTR SysAllocStringLen( OLECHAR FAR* pch, unsigned int cch );
   
按鈕cch分配BSTR長度。如果pch為NULL,則分配記憶體,但不初始化BSTR

HRESULT SysFreeString( BSTR bstr );
   
釋放為bstr分配的記憶體

HRESULT SysReAllocString( BSTR FAR* pbstr, OLECHAR FAR* sz );
   
重新為BSTR分配sz字串。在使用sz中的值重新分配pbstr之前,將自動釋放pbstr。如果新字元   串的長度與以前不同,則pbstr將被調整大小。

HRESULT SysReAllocStringLen( BSTR FAR* pbstr, OLECHAR FAR* pch, unsigned int cch );
   
按照len指定的大小分配pbstr。在進行新的賦值之前將釋放pbstr。最大資料的len字元將從pch
   
中複製到新的BSTR中。如果pch中的字元比len字元少,則不會初始化pbstr剩餘的字元。

UINT SysStringByteLen( BSTR bstr );
   
返回bstr分配的位元組數,不包括結尾Null 字元

UINT SysStringLen( BSTR bstr );
    返回bstr中的字元數,不包括結尾Null 字元
     
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.