2 mujiao73265740 mujiao73265740 于 2014.11.23 21:50 提问

c++代码,请高手帮我看一下这个代码怎么修改

return 0;
}
TCHAR szPath[MAX_PATH] = { 0 };
HRESULT hr;

hr = SHGetFolderPath(NULL, CSIDL_PERSONAL, NULL, SHGFP_TYPE_CURRENT, szPath);
if(SUCCEEDED(hr)) {
CString strPath = szPath;

strPath += _T("\\temp");
hr = ::URLDownloadToFile(NULL, REGISTER_URL, strPath, 0, NULL);

运行程序后,strPath += _T("\\temp");这段代码会在windows"我的文档"里创建temp文件,请问我想他创建在e:\temp,直接改成strPath += _T("e:\\temp"); 运行程序后不会创建temp文件,不管是在我的文档,还是e盘,请问怎么修改才是正确的?

3个回答

u012964993
u012964993   2014.11.23 23:08
已采纳

把strPath += _T("e:\temp"); 修改成,strPath = _T("e:\temp");这个函数(hr = SHGetFolderPath(NULL, CSIDL_PERSONAL, NULL, SHGFP_TYPE_CURRENT, szPath);)获取了我的文档的路径,并且在下一行,赋值给了strPath。
在后边你用+=的方式的路径肯定是不正确的。直接赋值覆盖strPath中的路径即可。

u012964993
u012964993 回复mujiao73265740: 如果你只需要写死一个绝对路径的话,那直接给strPath赋值就可以了。
大约 3 年之前 回复
mujiao73265740
mujiao73265740 我知道了,谢谢
大约 3 年之前 回复
mujiao73265740
mujiao73265740 高手是怎么修改啊,麻烦帮我写出来,我不是很懂
大约 3 年之前 回复
devmiao
devmiao   Ds   Rxr 2014.11.23 22:16

调试下,你在浏览文件夹中选择别的文件夹也不行么?

xiaoyu90520
xiaoyu90520   2014.11.24 10:14

其实这个问题很好调试的!你把strPath和szPath打印出来就明了了。。。。。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!