解决方案 »
- static控件的背景
- 工具栏如何建立在一行。。菜鸟提问
- mfc程序中怎样调用word域代码,非常着急,拜托大家了
- DLL里边创建一对话框失败
- 视频会议源代码,全国最低价,只要3000RMB
- 用DirectSound实现音频组播时,声音有1秒多的延迟,如何解决?
- 怎样用最简单的方法实现类似windows画图中的鼠标动态框选功能?
- 如何在对话框中加入背景位图?
- 请教如何根据icon句柄把icon数据存放到一个char数组里,并可以根据这个数组生成一个icon句柄!!!
- AVcap编译问题
- 关于UDP
- 这两天IE8经常崩溃,逐换成Chrome(GOOGLE的),发现回帖时没有字体,UBB插件了..................................
然后memcpy就可以了
不过你那个cstring最好换下,换成char[256]之类的
明白了。一般来说用宽字节传的话,是不是比较浪费带宽。
对于传输文件这种应用,还是用char比较好,是吗?
struct FileInfo
{
ULONGLONG nFileLen;//文件长度
char cFileName[MAX_PATH];//文件名
}; 这时候通过
sendFile.GetFileName().GetBuffer(0)//sendFile是欲发送的文件
获得了文件名,类型为wchar_t*,请教如何复制到cFileName中呢。在vc6中可以用strncpy来做,在vs2008中好像就不行了。
error C2664: “strncpy”: 不能将参数 2 从“wchar_t *”转换为“const char *”
WideCharToMultiByte要调用两次,第一次给cchMultiByte参数传0,获得目标缓冲区需要的大小。再调用一次,将cchMultiByte参数设置为前一次的返回值,即可。
ULONGLONG nFileLen怎样放到TCHAR* m_fileInfoBuf这种缓冲区中呢。
我用这种形式:
*((DWORD*)m_fileInfoBuf) = sendfileInfo.nFileLen;
可以编译通过,但是调试到这一步就报内存错误。
这到底是怎么回事哦。
求教各位啦。
这种形式也试了一下,依然是编译通过,调试运行到这行就报错
然后memcpy(m_fileInfoBuf,&sendfileInfo,sizeof(ULONGLONG) + strlen(sendfileInfo.cFileName));