3220|5

63

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

关于PNG图片读取失败问题 [复制链接]

BOOL CInfoDlg::ShowPic(HDC hdc, const TCHAR *filename, int nStartX, int nStartY, int nChangeX, int nChangeY)
{
        IImagingFactory   *pImgFactory   =   NULL;
        IImage   *pImage   =   NULL;
        ImageInfo   imageInfo;

        RECT   dstRc;

        if(FAILED(CoInitializeEx(NULL,COINIT_MULTITHREADED)))
        {
                MessageBox(TEXT( "CoInitializeEx "));
        }

        if(SUCCEEDED(CoCreateInstance(CLSID_ImagingFactory,
                                        NULL,CLSCTX_INPROC_SERVER,
                                        IID_IImagingFactory,
                                        (void **)&pImgFactory)))  
                {
                        if   (SUCCEEDED(pImgFactory->CreateImageFromFile(filename,&pImage)))  
                        {
                                pImage-> GetImageInfo(&imageInfo);
                                dstRc.left   =   nStartX;
                                dstRc.top   =   nStartY;

                                dstRc.right   =   nStartX   +   nChangeX;
                                dstRc.bottom   =   nStartY   +   nChangeY;
                                pImage-> Draw(hdc,   &dstRc,   NULL);
                                pImage-> Release();
                        }
                        else
                        {
                                MessageBox(TEXT( "CreateImageFromFile "));
                        //        AfxMessageBox("CreateImageFromFile");
                                pImgFactory   =   NULL;
                                pImage   =   NULL;
                                CoUninitialize();
                                return   FALSE;
                        }
                }
        else
        {
                MessageBox(TEXT( "CoCreateInstance "));
                pImgFactory   =   NULL;
                pImage   =   NULL;
                CoUninitialize();
                return   FALSE;
        }
        pImgFactory   =   NULL;
        pImage   =   NULL;
        CoUninitialize();
        return   TRUE;
}

上面是我的代码,实现是在onpaint中,ShowPic(dc, _T("\\exitdown.png"), 10, 10, 24, 24);

图片是放在F:\GPS\exitdown.png   图片的路径我换过很多,也试过相对路径和绝对路径的表示,但是运行倒if   (SUCCEEDED(pImgFactory->CreateImageFromFile(filename,&pImage)))  时,就跳到ELSE去运行了,弄了我很长时间,快要崩溃了,跪求大侠拔刀相助。。。。。。。。。

最新回复

真的是目录的问题谢谢各位。。。\\Storage Card\\xx.png  详情 回复 发表于 2008-11-4 15:36
点赞 关注

回复
举报

74

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
你这个是在wince下运行的程序吗?

WinCE下怎么会有F:这样的东东呢?WinCE是不支持相对路径的。
 
 

回复

62

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
我是在模拟器上运行,我应该如何表示我的路径呢,我的图片是放在工程路径F:\GPS\EXIT.PNG
我试了很多表示方法还是不行,苦恼中,。。。。。。。。。。。
 
 
 

回复

54

帖子

0

TA的资源

一粒金砂(初级)

4
 
用根目录 绝对路径~
如\\temp\\1.png
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

5
 
建议用目标机上做试验测试,模拟器上容易产生误导。

并注意图片存放的目录等。
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

6
 
真的是目录的问题谢谢各位。。。\\Storage Card\\xx.png
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表