我在Mfc中的dll中导出一个类
class AFX_EXT_CLASS Cmousehook : public CObject
可是我在使用改类时,include .h
该头文件如下:
#if !defined(AFX_MOUSEHOOK_H__521B37CF_6CF8_4119_BCD9_EEB53814DDAF__INCLUDED_)
#define AFX_MOUSEHOOK_H__521B37CF_6CF8_4119_BCD9_EEB53814DDAF__INCLUDED_#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// mousehook.h : header file
//
#pragma data_seg ("shareddata")
HWND sharedwnd=NULL;//共享数据
#pragma data_seg()
/////////////////////////////////////////////////////////////////////////////
// Cmousehook command targetclass AFX_EXT_CLASS Cmousehook : public CObject
{
public:
Cmousehook();
//钩子类的构造函数
~Cmousehook();
//钩子类的析构函数
BOOL starthook(HWND hWnd);
//安装钩子函数
BOOL stophook();
//卸载钩子函数 };///////////////////////////////////////////////////////////////////////////////{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.#endif // !defined(AFX_MOUSEHOOK_H__521B37CF_6CF8_4119_BCD9_EEB53814DDAF__INCLUDED_)
在测试该类的程序中,include该头文件和lib文件,能通过编译
但是我的cpp文件申明一个对象
include"mousehook.h"
Cmousehook myhook;
却说 myhook前应该有 ;(分号)
也就是说它不认识Cmousehook
可是我不加Cmousehook myhook;这句话,仍然include"mousehook.h"
却能通过编译连接
为什么?望高手赐教!
class AFX_EXT_CLASS Cmousehook : public CObject
可是我在使用改类时,include .h
该头文件如下:
#if !defined(AFX_MOUSEHOOK_H__521B37CF_6CF8_4119_BCD9_EEB53814DDAF__INCLUDED_)
#define AFX_MOUSEHOOK_H__521B37CF_6CF8_4119_BCD9_EEB53814DDAF__INCLUDED_#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// mousehook.h : header file
//
#pragma data_seg ("shareddata")
HWND sharedwnd=NULL;//共享数据
#pragma data_seg()
/////////////////////////////////////////////////////////////////////////////
// Cmousehook command targetclass AFX_EXT_CLASS Cmousehook : public CObject
{
public:
Cmousehook();
//钩子类的构造函数
~Cmousehook();
//钩子类的析构函数
BOOL starthook(HWND hWnd);
//安装钩子函数
BOOL stophook();
//卸载钩子函数 };///////////////////////////////////////////////////////////////////////////////{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.#endif // !defined(AFX_MOUSEHOOK_H__521B37CF_6CF8_4119_BCD9_EEB53814DDAF__INCLUDED_)
在测试该类的程序中,include该头文件和lib文件,能通过编译
但是我的cpp文件申明一个对象
include"mousehook.h"
Cmousehook myhook;
却说 myhook前应该有 ;(分号)
也就是说它不认识Cmousehook
可是我不加Cmousehook myhook;这句话,仍然include"mousehook.h"
却能通过编译连接
为什么?望高手赐教!
解决方案 »
- CMainFrame类当中的indicators是干什么用的?
- 有了解cgfx的么?
- 问一个袁峰问题。微软要把中国的雇员从700增加3000人。不知道是好事还是坏事。是不是微软会降低招人的标准?
- 关于CRichText的显示问题
- 奇怪!子进程不能打开文件,怎么回事?
- 怎样让MFC应用程序(Debug文件夹中的*.exe文件)在没有VC++的电脑上运行
- 如何弥补删除控件后造成的错误?
- 欢迎设计过FTP程序的互相交流!
- 急救!!!正在用MFC写的程序中,某按钮控件单击消息突然不响应此按钮的单击动作了!!!???
- frame创建的问题
- 请问有熟悉dicom协议大虾能不能就worklist给点指点
- 在线等待:怎么让MSFLEXGRID上单元格是可编辑的?
#define _MOUSEHOOK_EXT_CLASS __declspec(dllexport)
如果是LIB,在stdafx.h中定义
#define _MOUSEHOOK_EXT_CLASSclass _MOUSEHOOK_EXT_CLASS Cmousehook : public CObject