如何修改CJlibrary608在VC.net环境下运行

CJlibrary 6.08是一套非常漂亮的用户界面类。为广大的VC用户所欢迎。但是在VC.net下编译的时候报错,需要修改方能运行通过。我已把我修改并编译通过的过程记录下来,供大家参考。下面列出每个错误及其修改方式:

1.报错:

CJlirary.h文件#include <..\src\afximpl.h>文件找不到

修改:

改为#include <..\src\mfc\afximpl.h>

2.报错:

COLORREF clr = afxData.bWin4 ? afxData.clrBtnShadow : afxData.clrWindowFrame 中bwin4没有定义

修改:

查找并替换所有项目文件中afxData.bWin4为fxData.bWin95

3.报错:

(CCJMonthCalCtrl*) CWnd::FromHandle(pDX->m_hWndLastControl);中m_hWndLastControl不是CDataExchang成员

修改:

查找并替换项目中pDX->m_hWndLastControl 为pDX->m_pDlgWnd->m_hWnd

4.报错:

CJColorPopup.cpp文件CWnd::OnActivateApp(bActive, hTask);不能将hTask参数转换成DWORD

修改:

修改CJColorPopup.h和ColorPopup.cpp文件中的OnActivateApp函数声明,将HTASK hTask转换成DWORd hTask

5.报错:

CJCaption.cpp无法从void (__thiscall CCJCaption::* )(UINT,LONG)转换为LRESULT (__thiscall CWnd::* )(WPARAM,LPARAM)

修改:

改CJCaption.h文件afx_msg void OnPushPinButton(UINT lParam, LONG wParam)为afx_msg LRESULT OnPushPinButton(UINT lParam, LONG wParam);

6.报错:

switch((pNMPGCalcSize)->dwFlag)类型错误

修改:

先修改函数头为BOOL CCJPagerCtrl::OnPagerCalcSize(/*NMPGCALCSIZE**/NMHDR* pNMPGCalcSize, LRESULT* pResult)再修改switch(((NMPGCALCSIZE*)pNMPGCalcSize)->dwFlag)

7.报错:

无法从“BOOL (__thiscall CCJPagerCtrl::* )(NMPGCALCSIZE *,LRESULT *)”转换为“void (__thiscall CCmdTarget::* )(NMHDR *,LRESULT *)”

修改:

把NMPGCALCSIZE修改为NMHDR,并且将CCJPagerCtrl::OnPagerCalcSize的实现修改为:

BOOL CCJPagerCtrl::OnPagerCalcSize(NMHDR* pNMPGCalcSize, LRESULT* pResult)
{
    NMPGCALCSIZE* ns = (NMPGCALCSIZE*) pNMPGCalcSize;
    switch(ns->dwFlag)
    {
    case PGF_CALCWIDTH:
        ns->iWidth = m_nWidth;
        break;

    case PGF_CALCHEIGHT:
        ns->iHeight = m_nHeight;
        break;
    }

    *pResult = 0;
    return FALSE;    // Let parent handle message
}

时间: 2024-09-27 04:29:22

如何修改CJlibrary608在VC.net环境下运行的相关文章

c语言-在VC编的程序如何在非VC环境下运行呢?

问题描述 在VC编的程序如何在非VC环境下运行呢? 小白一枚,用C抄了一个猜拳游戏,生成的exe文件貌似不能在别的电脑上运行,有什么方法可以解决呢?静态链接如何实现呢? 解决方案 在VC中,是静态.还是动态,在工程的设置中修改一些设置即可.生成的 EXE 不能在另的电脑上运行,也就是说可以在自己的电脑上运行了.是不是?如果是,先修改为静态链接试试. 解决方案二: 解决方案三: 一个办法是在项目属性里改为MFC静态连接.另一个办法是新电脑运行时缺什么你就拷什么. 解决方案四: 看什么程序,如果是控

C程序移植到VC开发环境下

说明 本文是作者学习计算方法时所做工作的总结.我们改写了徐士良先生编著的<C常用算法程序集>(清华大学出版社出版) 数值计算部分-前15章所有程序,并全部在 VC6 + Windows2000 下调试通过.数组类和矩阵类有两个版本:封装成模板类.普通类,我个人认为后者可能更实用,但论文中以模板类形式给出. 本文已经在www.vchelp.net上发表过,该网站允许作者另投其他网站. 摘要 针对C程序的特点,给出将之移植到VC集成环境下的技术,对一个常用程序集实施了大规模的改写,并提供了C++数

C++开发在IOS环境下运行的LRUCache缓存功能_C 语言

本文着重介绍如何在XCODE中,通过C++开发在IOS环境下运行的缓存功能.算法基于LRU(最近最少使用).有关lru详见: http://en.wikipedia.org/wiki/Page_replacement_algorithm#Least_recently_used 之前在网上看到过网友的一个C++实现,感觉不错,所以核心代码就采用了他的设计.原作者通过两个MAP对象来记录缓存数据和LRU队列,注意其中的LRU队列并不是按照常用的方式使用LIST链表,而是使用MAP来代替LIST,有关

第三方推送-添加极光推送后在android4.4环境下运行崩溃

问题描述 添加极光推送后在android4.4环境下运行崩溃 在android5.0环境下运行一切正常是怎么回事? logcat: 10-23 08:13:33.233 2302-2302/com.example.jkd.fchangshi I/dalvikvm﹕ Could not find method android.view.ViewGroup.onNestedScrollAccepted, referenced from method android.support.v7.intern

自动化测试-python+appium在Android环境下运行 报错WebDriverException

问题描述 python+appium在Android环境下运行 报错WebDriverException appium初学小菜鸟需要救急 在python+appium在Android环境下运行 报错WebDriverException: Message: Invalid locator strategy: css selector,环境变量检查过了没有问题,希望大家帮我看看是哪里的问题? 解决方案 可能版本有问题http://stackoverflow.com/questions/3167958

XP环境下运行VC6,编译也没错,为什么会提示该内存不能read,如图

问题描述 XP环境下运行VC6,编译也没错,为什么会提示该内存不能read,如图 解决方案 卸载,删除注册表,重新安装

hibernate 在tomcat环境下运行的问题

问题描述 hibernate 在tomcat环境下运行的问题 新建了一个hibernate工程 在 main方法内运行正常实现查询. 将其在tomcat中启动后,hibernate抛出以下异常, java.lang.ClassNotFoundException: org.hibernate.cfg.Configuration 请问是哪的问题吗. 解决方案 tomcat7 运行在windows环境下乱码问题的解决[Hibernate框架开发之一]搭建Hibernate环境并成功运行第一个项目Hel

cygwin、hadoop环境下运行hive的show tables报错

问题描述 Causedby:java.net.URISyntaxException:RelativepathinabsoluteURI:file:D:/cygwin/tmp//Administrator/hive_2011-10-27_23-46-59_578_737308749433472在cygwin,hadoop环境下运行hive的showtables报这个错,谢谢!--------------------------------------------------------------

LINUX学习(三)在Linux环境下运行DOS命令

          Linux系统提供了一组称为mtools的可移植工具,可以让用户轻松地从标准的DOS软盘上读.写文件和目录.它们对DOS和Linux环境之间交换文件非常有用.它们是不具备共同的文件系统格式的系统之间交换文件的有力手段.             对于一个MS-DOS的软盘,只要把软盘放在软驱中,就可以利用mtools提供的命令来访问软盘上的文件. mtools的主要命令如下: mcd 目录名 改变MSDOS目录: mcopy 源文件 目标文件 在MSDOS和Unix之间复制文件