/********一个关于RECT的小问题,好困惑 :( **********/ 在。cpp中RECT不需要头文件不过在基于MFC的常规DLL里使用就不知道了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你在exe下这段代码可能写在CWnd的派生类下,比如CView,CDialog,所以不会出错,在dll下你可以这样写:RECT rect;//获得图像区域::GetWindowRect(ImageWnd->m_hWnd,&rect);CPoint* lpPoint=new CPoint(0,0);rect.left=lpPoint->x;rect.top =lpPoint->y;rect.right +=lpPoint->x;rect.bottom+=lpPoint->y; RECT是在windows.h中定义的类型,你在dll中#include <windows.h>试试。不过从你的出错信息看可能前面的代码有问题,估计是在当地没有造成影响的笔误,再好好检查一下吧! 哪个语法错误应该好解决吧 !至于error C2039: 'rect' : is not a member of 'tagRECT'我帮你看看 只要包含windows.h就可以了阿你这两个错误的位置是在这段代码里的么?好像不像阿…… 你在stdafx.h中加上头文件Afxwin.h试试 你在stdafx.h中加上头文件Afxwin.h试试 哎,还不行to: kingzai() 我换成::GetWindowRect了,一样的错!!to: Others 用CRect干脆就说没定义,在stdafx.h中已经自动包含了Afxwin.h所以也不是这个错,困惑啊!!帮我解决问题的,我另开贴给分 这样改:CRECT rect;//获得图像区域::GetWindowRect(ImageWnd->m_hWnd,rect);CPoint* lpPoint=new CPoint(0,0);rect.left=lpPoint->x;rect.top =lpPoint->y;rect.right +=lpPoint->x;rect.bottom+=lpPoint->y; 对了,上面CRECT rect的改成CRect rect ,要保证可以使用MFC,否则没辙 好奇怪啊,我将rect.top =lpPoint->y;这句注释掉,编译就通过加上就报那个错!!top和其它几个值为什么不一样!! 哈哈,我终于解决了真是世界之大,无奇不有啊!!原来是这样:我在我的DLL中又要隐式链接一个10000多行的DLL(别人开发的)需要包含它的导出函数的头文件但在这个头文件中恰好有一个 #define top 65535因此在我的程序中rect.top就被替换了,你说巧不巧!!我费了好大劲才发现啊!!!好了,还是谢谢大家的参与结贴散分了!! 用vc做网络收包的程序,怎么把收到的值传递出来。。。 directshow 问题 单文档视图如何启动后固定大小和位置? 关于用Execute执行SQL语句的问题(在线等待立即给分) 2个关于Socket,多线程大问题高手请进 求助对象指针问题 简单的!用户自己在保存文件对话框里输入文件后缀名的问题! SLIDER控件如何让它实现透明显示,就是显示对话框的底面;就像超级解霸的一样。 很头疼的问题,高手请放马出山。 如何改变对话框上控件的默认颜色? 哪里能找到关于消息用法的详细介绍。(中文的) 怎样在VC中改变静态文本的字体?
RECT rect;//获得图像区域
::GetWindowRect(ImageWnd->m_hWnd,&rect);
CPoint* lpPoint=new CPoint(0,0);
rect.left=lpPoint->x;
rect.top =lpPoint->y;
rect.right +=lpPoint->x;
rect.bottom+=lpPoint->y;
不过从你的出错信息看可能前面的代码有问题,估计是在当地没有造成影响的笔误,再好好检查一下吧!
to: kingzai()
我换成::GetWindowRect了,一样的错!!
to: Others
用CRect干脆就说没定义,在stdafx.h中已经自动包含了Afxwin.h
所以也不是这个错,困惑啊!!帮我解决问题的,我另开贴给分
CRECT rect;//获得图像区域
::GetWindowRect(ImageWnd->m_hWnd,rect);
CPoint* lpPoint=new CPoint(0,0);
rect.left=lpPoint->x;
rect.top =lpPoint->y;
rect.right +=lpPoint->x;
rect.bottom+=lpPoint->y;
我将rect.top =lpPoint->y;这句注释掉,编译就通过
加上就报那个错!!
top和其它几个值为什么不一样!!
真是世界之大,无奇不有啊!!
原来是这样:
我在我的DLL中又要隐式链接一个10000多行的DLL(别人开发的)
需要包含它的导出函数的头文件
但在这个头文件中恰好有一个 #define top 65535
因此在我的程序中rect.top就被替换了,你说巧不巧!!我费了好大劲才发现啊!!!好了,还是谢谢大家的参与
结贴散分了!!