妖哥,快来帮一下忙!

huigezi123 2011-07-19 09:21:33
从你网站上下载了一个flashengine,主要是想用flash透明效果,在delphi2007中能用,但是在cb2007中
安装后发现fe_winapi.hpp 中的一个静态常量定义
static const Word WM_THEMECHANGED = 0x31a;
总报错误:[BCC32 Error] Fe_winapi.hpp(64): E2040 Declaration terminated incorrectly
我试着把这个定义改成宏结果也不行。
不知有没有解决办法!盼复!
我原来的工程就是cb作的也不能改成delphi,所以还请妖哥或者诸位用过flashengine的弟兄帮忙看一下。
...全文
96 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
huigezi123 2011-09-08
  • 打赏
  • 举报
回复
结贴有点晚了,问题还是没解决改用smartflash了,不过还是谢谢两位。
ccrun.com 2011-07-20
  • 打赏
  • 举报
回复
WM_THEMECHANGED在winusr.h文件中有定义,所以会报错,屏蔽掉这一行代码应该是可以编译通过的。
huigezi123 2011-07-20
  • 打赏
  • 举报
回复
帖子沉的好远,有人帮忙解决一下吗?
ccrun.com 2011-07-19
  • 打赏
  • 举报
回复
你把这一行附近(前后)的几行代码都贴出来看看。
huigezi123 2011-07-19
  • 打赏
  • 举报
回复
不行,我都试过了,注释掉编译不报错,运行就报指针错误,太纠结了
sterrys 2011-07-19
  • 打赏
  • 举报
回复
先把这一行注释掉,如果某个文件编译需要这个常量,在.cpp中定义
huigezi123 2011-07-19
  • 打赏
  • 举报
回复
namespace Fe_winapi
{
//-- type declarations -------------------------------------------------------
typedef _BLENDFUNCTION *PBlendFunction;

typedef _BLENDFUNCTION TBlendFunction;

struct TMonitorInfo;
typedef TMonitorInfo *PMonitorInfo;

struct TMonitorInfo
{

public:
unsigned cbSize;
#pragma pack(push,1)
Types::TRect rcMonitor;
#pragma pack(pop)
#pragma pack(push,1)
Types::TRect rcWork;
#pragma pack(pop)
unsigned dwFlags;
} ;

typedef tagSCROLLBARINFO *PScrollBarInfo;

typedef tagSCROLLBARINFO TScrollBarInfo;

#pragma option push -b-
enum DWMWINDOWATTRIBUTE { DWMWA_NULL, DWMWA_NCRENDERING_ENABLED, DWMWA_NCRENDERING_POLICY, DWMWA_TRANSITIONS_FORCEDISABLED, DWMWA_ALLOW_NCPAINT, DWMWA_CAPTION_BUTTON_BOUNDS, DWMWA_NONCLIENT_RTL_LAYOUT, DWMWA_FORCE_ICONIC_REPRESENTATION, DWMWA_FLIP3D_POLICY, DWMWA_LAST };
#pragma option pop

//-- var, const, procedure ---------------------------------------------------
#define kapiApiVersion "2.0"
#define kapiApiVersionPropText "LibApi Version 2.0"
extern PACKAGE char *SigWinApi;
extern PACKAGE BOOL __stdcall (*SetLayeredWindowAttributes)(HWND hwnd, unsigned crKey, Byte bAlpha, unsigned dwFlags);
extern PACKAGE BOOL __stdcall (*UpdateLayeredWindow)(HWND hWnd, HDC hdcDst, Types::PPoint pptDst, Types::PSize psize, HDC hdcSrc, Types::PPoint pptSrc, unsigned crKey, PBlendFunction pblend, unsigned dwFlags);
static const Word WM_THEMECHANGED = 0x31a;//————就是这句报错
extern PACKAGE bool UseThemeVar;
extern PACKAGE BOOL __stdcall (*TransparentBltFunc)(HDC hdcDest, int nXOriginDest, int nYOriginDest, int nWidthDest, int nHeightDest, HDC hdcSrc, int nXOriginSrc, int nYOriginSrc, int nWidthSrc, int nHeightSrc, int Color);
extern PACKAGE HRESULT __stdcall (*DwmIsCompositionEnabled)(PBOOL pfEnabled);
extern PACKAGE HRESULT __stdcall (*DwmSetWindowAttribute)(HWND hwnd, DWMWINDOWATTRIBUTE dwAttribute, void * pvAttribute, unsigned size);
extern PACKAGE Types::TRect __fastcall GetRectOfPrimaryMonitor(const bool WorkArea);
extern PACKAGE Types::TRect __fastcall GetRectOfMonitorContainingRect(const Types::TRect &R, const bool WorkArea);
extern PACKAGE Types::TRect __fastcall GetRectOfMonitorContainingPoint(const Types::TPoint &P, const bool WorkArea);
extern PACKAGE Types::TRect __fastcall GetRectOfMonitorContainingWindow(const HWND W, const bool WorkArea);
extern PACKAGE bool __fastcall IsMsImg(void);
extern PACKAGE BOOL __fastcall MyGetScrollBarInfo(HWND hwnd, int idObject, tagSCROLLBARINFO &psbi);
extern PACKAGE bool __fastcall IsWinVista(void);
extern PACKAGE bool __fastcall IsWin2k(void);
extern PACKAGE bool __fastcall IsWinNT(void);
extern PACKAGE bool __fastcall IsWinNT4(void);
extern PACKAGE bool __fastcall IsWinXP(void);
extern PACKAGE bool __fastcall UseThemesSlow(void);
extern PACKAGE bool __fastcall UseThemes(void);

} /* namespace Fe_winapi */
using namespace Fe_winapi;

604

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder VCL组件使用和开发
社区管理员
  • VCL组件使用和开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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