递归火山软件开发平台
标题:
又有掉头发的结构体出现了。
[打印本页]
作者:
server
时间:
2024-3-17 19:11
标题:
又有掉头发的结构体出现了。
联合体 union 还没支持。 结构体的预处理 呢??
typedef struct _NOTIFYICONDATAA {
DWORD cbSize;
HWND hWnd;
UINT uID;
UINT uFlags;
UINT uCallbackMessage;
HICON hIcon;
#if ...
CHAR szTip[64];
#else
CHAR szTip[128];
#endif
DWORD dwState;
DWORD dwStateMask;
CHAR szInfo[256];
union {
UINT uTimeout;
UINT uVersion;
} DUMMYUNIONNAME;
CHAR szInfoTitle[64];
DWORD dwInfoFlags;
GUID guidItem;
HICON hBalloonIcon;
} NOTIFYICONDATAA, *PNOTIFYICONDATAA;
复制代码
作者:
609177738
时间:
2024-3-17 20:49
szTip (宏条件分支的变量名称都一样) 和 联合体 直接别名类型 输出名 就行了
作者:
server
时间:
2024-3-17 21:24
609177738 发表于 2024-3-17 20:49
szTip (宏条件分支的变量名称都一样) 和 联合体 直接别名类型 输出名 就行了 ...
各种方式都试了;
CommCtrl.h
CommCtrl.lib
都引用了,就是编译不通过,提示未标识 TASKDIALOGCONFIG
TaskDialogIndirect
复制代码
TASKDIALOGCONFIG config = { 0 };
config.cbSize = sizeof(TASKDIALOGCONFIG);
config.hwndParent = NULL;
config.pszWindowTitle = L"标题";
config.pszMainInstruction = L"主提示";
config.pszContent = L"内容";
config.dwCommonButtons = TDCBF_OK_BUTTON;
HRESULT hr = TaskDialogIndirect(&config, NULL, NULL, NULL);
if (SUCCEEDED(hr))
{
}
复制代码
作者:
Xelloss0618
时间:
2024-3-17 22:16
用「别名类型:本地结构」可以封装,就是很多类型需要定义或改成属性读写方法。
TASKDIALOGCONFIG 最低系统要求是Windows Vista,这种API和结构体,一般是需要定义一下版本宏才能调用
@视窗.预定义宏 "WINVER=0x0600,_WIN32_WINNT=0x0600"
欢迎光临 递归火山软件开发平台 (https://bbs.voldp.com/)
Powered by Discuz! X3.4