首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于CImage保存函数的问题

关于CImage保存函数的问题
EN

Stack Overflow用户
提问于 2010-12-05 04:49:25
回答 2查看 1.8K关注 0票数 2

保存CImage类数据时遇到问题。以下是我的简要设置:

代码语言:javascript
复制
#include "stdafx.h"
#include <cstring>
#include <atlimage.h>
#include <vector>
#include <stdlib.h>
#include <cmath>
#include <algorithm>

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
   CImage myimage;
   myimage.Create(100,100,24);
   // save an image in BMP format
   string impath = "image1.bmp";
   myimage.Save((LPCTSTR)impath.c_str());
   return 0;
}

我将其作为VC++ 2008下的WIN32控制台应用程序运行。没有错误。但是,程序完成后,在我的目录下没有创建任何文件。我在两台机器上运行了这段代码,结果是一样的。

非常感谢您的时间和努力。

EN

回答 2

Stack Overflow用户

发布于 2010-12-05 04:55:34

也许您只是在错误的位置查找文件。给出一个绝对路径。相对路径是到进程的当前工作目录的路径。如果从调试器运行,它可能是可执行文件的输出目录、项目目录或其他位置。

此外,在c_str()上使用_T宏来代替强制转换--以防它需要转换。

如果你仍然不能解决这个问题,可以使用PROCMON (微软提供的免费工具)。运行它并过滤输出,以便它只查找路径包含"image1.bmp“的文件--它将告诉您使用该路径尝试的所有文件操作以及发生了什么。

票数 1
EN

Stack Overflow用户

发布于 2010-12-29 02:27:28

代码语言:javascript
复制
myimage.Save((LPCTSTR)impath.c_str());

1)检查结果

2)为什么使用类型转换?这可以掩盖错误,例如,如果您使用UNICODE构建(VS2008中的默认构建),则文件名将无效

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4355759

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档