用向导生成的Dll中加入自己的类出错!

煜知搬砖者 2003-04-11 08:42:38
但是我按照VC的ATL向导生成了一个Dll
然后我建了一个类
文件名:test.h

class test{
public:
test(){
a = 1;
}
int getIntValue();
void setIntValue(int newInt);
~test(){};
private:
int a;
};
它的实现文件:test.cpp
#include "test.h"
#include "stdafx.h" ----------------------------------------请注意


int test::getIntValue(){
return a ;
}

void test::setIntValue(int newInt){
a = newInt;
}

把这两个文件分别加入相应的文件夹中,但是
在test.cpp中,我把#include "stdafx.h"注释掉后:
VC报错内容为:
fatal error C1010: unexpected end of file while looking for precompiled header directive
Error executing cl.exe.

如果不注释掉,VC报错的内容为:
error C2653: 'test' : is not a class or namespace name
error C2065: 'a' : undeclared identifier
error C2653: 'test' : is not a class or namespace name

请大虾们指点分析一下,
...全文
43 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
DavidBone 2003-04-15
  • 打赏
  • 举报
回复
up
NOldkiller 2003-04-11
  • 打赏
  • 举报
回复
同意楼上,因为在VC中会忽略掉#include "stdafx.h"上面一切的文字.
所有报test不是一个类错误也就正常了.
sunyard 2003-04-11
  • 打赏
  • 举报
回复
#include "stdafx.h"
#include "test.h"

不能先#include "test.h"

可用来在VB,VC驱动摄像头,进行静帧捕捉的DLL动态链接库(必须要有摄像头生成StillCap0000.bmp):将MyDll文件解压后把MyDll.dll与MyDll.lib一起拷入工程DEBUG目录(为保险起见DEBUG的外层目录也拷贝一份吧),另有一个VC++6的测试工程test_Dll,已经考入相应DLL和LIB文件,可直接编译运行,VB只拷贝MyDll.dll与MyDll.lib VB2008 调用方法,在公共模块声名: Public Declare Function CreateWnd Lib "MyDll" () As Double Public Declare Function ClearGraphs Lib "MyDll" () As Double Public Declare Function OnpStillCapture Lib "MyDll" (ByVal hwnd As Long) As Double Public Declare Function InitStillGraph Lib "MyDll" (ByVal hwnd As Long) As Double Public Declare Function CloseWnd Lib "MyDll" () As Double 在窗体上放置2个PictureBox控件,名字为:pic1,pic2 放置三个按键:名字为Btn1,Btn2,Btn3 Btn1为打开视频,调用代码: Private Sub Btn1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn1.Click InitStillGraph(pic1.Handle) '打开摄像头预览视频 end sub Btn2为截取视频保存为BMP,文件保存在应用程序路径下,调用代码: Private Sub Btn2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn2.Click OnpStillCapture(pic2.Handle) '截取预览视频一帧图像 end sub Btn3为截取视频保存为清除内存,调用代码: Private Sub Btn3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn3.Click ClearGraphs() '退出前,完成内存清扫工 end sub VC调用方法: 在对话框上放置两个图像框,型为位图,三个按键B1,B2,B3 定义全局函数引用: typedef HWND(* CreateWnd)(void);// typedef HRESULT(* InitStillGraph)(HWND hwnd); typedef void (* OnpStillCapture)(HWND hwnd); typedef int (* ClearGraphs)(); HINSTANCE glibsample; //如果定义成HANDLE型,则出错 CreateWnd createwnd; InitStillGraph initStillGraph;//定义引用函数 OnpStillCapture onpStillCapture;//定义引用函数 ClearGraphs clearGraphs;//定义引用函数 用向导为两个位图框建立控件(型为Contorl)变量,m_p1,m_2 : 在窗口OnInitDialog()函数调整图像框大小: // TODO: Add your specialized code here and/or call the base class m_p1.MoveWindow(0,0,200,200,true); m_p2.MoveWindow(210,0,200,200,true); glibsample=LoadLibrary("MyDll.dll"); //加载dll 在B1消息函数: void 你的::OnB1() { initStillGraph=(InitStillGraph)GetProcAddress(glibsample,"InitStillGraph"); (*initStillGraph)(m_p1.m_hWnd);//预览图像 } 在B2消息函数: void 你的::O
汉化补丁3 0说明: 本汉化补丁 3 0 对VFP9 0进行了全面的汉化 包含了最新VFP90 SP2 7423补丁 更新了vfp9 exe vfp9r dll vfp9t dll vfp9runtime msm等四个文件 并对SP2更新的三个有关报表的文件 reportbuilder app reportoutput app reportpreview app 及“任务面板管理器”对编程极具参考价值的“解决方案示例”全部进行了汉化;还包含了最新修订的VFP9文帮助文件 及原Foxtools的文帮助 其他重要修订: 1 本补丁 3 0 对以前汉化版本的漏译及新发现的错误进行了补译和修订 2 对更新了英文VFP SP2补丁后 仍存在的四个Bug进行了修订 安装了该补丁后 以下四个错误均将得到修正: ①在命令窗口输入:DO HOME +"tools test aatest" 命令 出现“VFP Active Accessibility Test Harness”窗口后 点击菜单的“Help”或“ ”按钮会出错 ②在“生成器”或“向导要选择表时 若该表所在的文件夹是用文命名的 在选取表时 表名会出现乱码或提示“语法错误” ③在“任务面板管理器”的“环境管理器” 对使用文环境文件名不支持的缺陷 ④在“代码引用” Code References 窗口的左面窗格 若用鼠标右键点击“All Results”节点 在快捷菜单选择“Clear All Results”清除全部结果后 再用鼠标右键点击“All Results”节点时会出错 注意事项: 仅在安装了英文VFP9 SP2英文补丁后 方可安装本汉化补丁 若已经安装了SP2早些版本的汉化补丁 可直接进行覆盖安装 其他版本不能使用 对译文错误和安装使用发现的问题 欢迎指出 王 苏 Email:wangsu01@163 com 2010 05 07">汉化补丁3 0说明: 本汉化补丁 3 0 对VFP9 0进行了全面的汉化 包含了最新VFP90 SP2 7423补丁 更新了vfp9 exe vfp9r dll vfp9t dll vfp9runtime msm等四个文件 并对SP2更新的三个有关报表的文件 reportbuilder app reportoutput app reportpreview app [更多]
VFP9_SP2-汉化补丁(4.1)说明 一、安装说明: 1.本补丁适用于WinXP、Win7、Win8操作系统。 2.仅在安装了英文VFP9_SP2程序后,方可安装本汉化补丁(推荐)。 3.若已经是VFP9_SP2的文或英文版本,也可直接覆盖安装本汉化补丁。 4.安装了本补丁后无法卸载。若要恢复英文原版,只能卸载程序后再重新安装。 二、修订历史: (一)VFP9_SP2-汉化补丁(4.1):2017.03.30 1.对文帮助文件的页面字体及布局进行了改进。 2.修订了文件汉化其他一些新发现的错误。 3.在程序“帮助”菜单添加了“梅子论坛”链接。 (二)VFP9_SP2-汉化补丁(4.0):2016.01.27 1.对文帮助文件,添加了SP2英文帮助文件新增的全部主题。 2.修正了在64位操作系统安装汉化补丁后,不能使用文帮助的问题。 3.修正了在64位操作系统安装汉化补丁后,某些窗口仍显示英文的问题。 4.为加快VFP的“任务面板管理器”启动速度,修改了它的默认设置,停用了对一些过时无效网站的访问。 5.修订了其他一些新发现的错误。 (三)VFP9_sp2-汉化补丁(3.0):2010.05.07 对VFP9.0进行了全面的汉化。包含了最新VFP9-SP2-7423补丁(更新了vfp9.exe、vfp9r.dll、vfp9t.dll、vfp9runtime.msm等四个文件)。并对SP2更新的三个有关报表的文件(reportbuilder.app、reportoutput.app、reportpreview.app),及“任务面板管理器”对编程极具参考价值的“解决方案示例”全部进行了汉化;还包含了最新修订的VFP9文帮助文件,及原Foxtools的文帮助。 其他重要修订: 1.本补丁(3.0)对以前汉化版本的漏译及新发现的错误进行了补译和修订。 2.对更新了英文VFP_SP2补丁后,仍存在的四个Bug进行了修订。安装了该补丁后,以下四个错误均将得到修正: ①在命令窗口输入:DO (HOME()+"tools\test\aatest") 命令,出现“VFP Active Accessibility Test Harness”窗口后,点击菜单的“Help”或“?”按钮会出错。 ②在“生成器”或“向导要选择表时,若该表所在的文件夹是用文命名的,在选取表时,表名会出现乱码或提示“语法错误”。 ③在“任务面板管理器”的“环境管理器”,对使用文环境文件名不支持的缺陷。 ④在“代码引用”(Code References)窗口的左面窗格,若用鼠标右键点击“All Results”节点,在快捷菜单选择“Clear All Results”清除全部结果后,再用鼠标右键点击“All Results”节点时会出错。 (王苏 2017.03.30)

3,248

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧