社区
ATL
帖子详情
VARIANT*如何转换为LPCTSTR?
linamu
2007-02-28 11:43:01
浏览器编程时有以下函数:
BeforeNavigate2Explorer1(LPDISPATCH pDisp, VARIANT* URL, VARIANT* Flags, VARIANT* TargetFrameName, VARIANT* PostData, VARIANT* Headers, BOOL* Cancel);
如何将 VARIANT* URL 转换为 LPCTSTR strURL?
...全文
445
3
打赏
收藏
VARIANT*如何转换为LPCTSTR?
浏览器编程时有以下函数: BeforeNavigate2Explorer1(LPDISPATCH pDisp, VARIANT* URL, VARIANT* Flags, VARIANT* TargetFrameName, VARIANT* PostData, VARIANT* Headers, BOOL* Cancel); 如何将 VARIANT* URL 转换为 LPCTSTR strURL?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lineuser
2008-04-17
打赏
举报
回复
mark 一下下
crumpy
2007-02-28
打赏
举报
回复
// Variant2TSTR.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "stdio.h"
#include "wchar.h"
#include "tchar.h"
#include "windows.h"
#pragma comment(lib, "oleaut32.lib")
int _tmain(int argc, _TCHAR* argv[])
{
VARIANT var;
::VariantInit( &var );
var.bstrVal = ::SysAllocString( OLESTR("Hello 中文") );
var.vt = VT_BSTR;
TCHAR szText[MAX_PATH];
#if defined _UNICODE || defined UNICODE
lstrcpy(szText, var.bstrVal);
#else
WideCharToMultiByte(CP_ACP, 0, var.bstrVal, -1, szText, sizeof(szText), NULL, NULL);
#endif
_tprintf( TEXT("TSTR = %s\n"), szText);
::VariantClear( &var );
return 0;
}
crumpy
2007-02-28
打赏
举报
回复
1. 如果字符串保存在VARIANT中BSTR域中, 先将BSTR从VARIANT提取出来
2. 然后暂时将BSTR看作OLESTR或者WCHAR串 pwsz = (LPOLESTR)( var... );
3. 如果你用的是ATL或MFC, 包含afxpriv.h, 然后在程序中写:
USES_CONVERSION
LPTSTR psz = OLE2T( pwsz );
4. 用完后, 用SysFreeString释放VARIANT中的BSTR.
如果你不是用MFC/ATL, 那需要WideCharToMultiChar()这个API, 还要判断LPTSTR是CHAR*还是WCHAR*
VC++类型
转换
详解
- **CString与数学类型转化**:可以使用`Format()`函数将数值格式化为字符串,使用`ATOL()`, `ATOI()`, `ATOF()`等函数将CString
转换
回数值类型。 - **CString与char\*
转换
**:使用`GetBuffer()`获取内部缓冲区,...
C++到C#数据类型
转换
*
VARIANT
转换
为 System.Object * PBYTE (byte \*)
转换
为 System.Byte\[] * BSTR
转换
为 StringBuilder * L
PC
TSTR
转换
为 StringBuilder * L
PC
TSTR
转换
为 string C++ 到 C# 数据类型
转换
是一个非常重要的步骤。...
VC数据类型
转换
详解VC数据类型
转换
详解
本文将深入解析几种常见的数据类型及其相互
转换
的方法,包括`CString`、`BSTR`、`L
PC
TSTR
`等类型之间的
转换
,并提供详细的示例代码。 #### 基础概念 1. **`CString`**:`CString`是MFC中的一个类,用于方便地处理...
MFC 数据类型
转换
这里 `(L
PC
TSTR
)cStr` 将 `CString`
转换
为了 `L
PC
TSTR
` 类型,再进一步
转换
为 `char*` 类型。`L
PC
TSTR
` 定义为 `const TCHAR *`,`TCHAR` 可以是 `char` 或 `wchar_t`,取决于编译时的设置。 #### 2. char* to ...
ScriptObject (脚本解析类)
bool RunProcedure(L
PC
TSTR
szProcName, SAFEARRAY** saParameters,
VARIANT
* varRet); //protected: void CommonConstruct(); bool GetMethodsName(); L
PC
TSTR
GetScriptFunction(L
PC
TSTR
name);
ATL
3,248
社区成员
48,529
社区内容
发帖
与我相关
我的任务
ATL
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
复制链接
扫一扫
分享
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章