我现在的问题是,有个软件,里面有picture控件,初始化的时候,我可以动态的加载位图到里面去显示。
然后,我把软件发给别人,但是别人没有图(或者路径不对),那么这个加载就失败了,对吧。
现在就是,既要做到,这个图片能动态加载,同时,做到编译软件之后(正确加载位图),把软件别人,别人打开exe的时候,picture区域是想要的那个结果。

解决方案 »

  1.   


    我现在的问题是,有个软件,里面有picture控件,初始化的时候,我可以动态的加载位图到里面去显示。
    然后,我把软件发给别人,但是别人没有图(或者路径不对),那么这个加载就失败了,对吧。
    现在就是,既要做到,这个图片能动态加载,同时,做到编译软件之后(正确加载位图),把软件别人,别人打开exe的时候,picture区域是想要的那个结果。
    你是用的加载本地资源吧?那给别人的时候要把图片也一起发给别人,并且把路径做成相对路径才可以,或者按楼上所说,添加到资源中之后加载资源,至于图标的话可以直接把你工程目录下的ico文件替换成你自己想要的图标
      

  2.   

    如果是 BMP 或 ICO 之类的,基本上不需要动态加载。只需要把 BMP 和 ICO 作为资源加入,并在 RC 中把位图控件的标题写成 BMP 或 ICO 的资源 ID(非文字形式),系统会自动帮你加载。
      

  3.   

    MSDN上给了步骤了:
    Updating Resources
    The following example copies a dialog box resource from one executable file, Hand.exe, to another, Foot.exe, by following these steps: 1.Use the LoadLibrary function to load the executable file Hand.exe. 
    2.Use the FindResource and LoadResource functions to locate and load the dialog box resource. 
    3.Use the LockResource function to retrieve a pointer to the dialog box resource data. 
    4.Use the BeginUpdateResource function to open an update handle to Foot.exe. 
    5.Use the UpdateResource function to copy the dialog box resource from Hand.exe to Foot.exe. 
    6.Use the EndUpdateResource function to complete the update. http://blog.csdn.net/visualeleven/article/details/5754831
      

  4.   

    不就是改个.exe程序的图标嘛,还用整这么麻烦,吓唬人家小姑娘?还是我没看懂问题???
    1.把你希望显示的图标文件(.ico)添加到工程默认的res文件夹中;
    2.通过工程的“资源视图”编辑卡把res文件夹里面的图标文件(.ico)添加到你自己的工程中,这时编译器会自动位置指定ID,例如IDI_ICON1
    3.打开你的Resource.h,修改IDI_ICON1宏,原则上就是把他的值改成最小(编译器默认从100开始向后排,你可以把IDI_ICON1的值设为99);
    4.重新编译程序,齐活儿,看看你的.exe图标变了没有。
      

  5.   

    好像以前的版本有个bug,要加上下面两句话:
    SetIcon( IDI_ICON1, TRUE );
    SetIcon( IDI_ICON1, FALSE );
      

  6.   

    bBigIconSpecifies a 32 pixel by 32 pixel icon if TRUE; specifies a 16 pixel by 16 pixel icon if FALSE.
      

  7.   

    怎么都整的这么麻烦啊 ,直接将图标复制到  res文件夹内替换掉    项目名.ico  这个文件, 编译就OK了。 如果再偷懒点  ,可以ExeScope这个小工具 ,直接修改文件图标,效果杠杠滴 。
      

  8.   

    很感谢大家的热情回复,但是貌似大家都没有弄明白我的问题。。这次我讲细点,首先,我是A方,我编译了一个对话框的exe文件。exe文件运行起来之后,
    对话框有一块区域是一个Picture控件,里面会显示一张图片(不管是res里面加载还是动态Load的BMP图)。现在我把这个exe文件发给B方(仅仅是exe文件)。
    B方需要自己把Picture上的图片,改成任意他想要的图。我已经尝试过了ExeScope这个工具,但是更改了BMP图之后,这个exe在Win7 和XP系统上打开,picture位置的图颜色不一样,在win7上颜色差异很大。所以,这个方式可能也不太适用。
    怎么办呢?
      

  9.   


    就把你显示的图片固定是放在当前exe路径文件夹下的XX.bmp.程序起来时判断这图片路径是否存在,存在则显示它,不就行了
      

  10.   


    就把你显示的图片固定是放在当前exe路径文件夹下的XX.bmp.程序起来时判断这图片路径是否存在,存在则显示它,不就行了我也想这么做。。问题别人不想啊。。