vs2013编写头文件出错

[复制链接]
查看11 | 回复3 | 2021-1-27 06:45:36 | 显示全部楼层 |阅读模式
/*-----------------------------------------------
SYSMETS.H--Systemmetricsdisplaystructure
-----------------------------------------------*/
#defineNUMLINES((int)(sizeofsysmetrics/sizeofsysmetrics[0]))
struct
{
intiIndex;
TCHAR*szLabel;
TCHAR*szDesc;
}
sysmetrics[]=
{
SM_CXSCREEN,TEXT("SM_CXSCREEN"),
TEXT("Screenwidthinpixels"),
SM_CYSCREEN,TEXT("SM_CYSCREEN"),
TEXT("Screenheightinpixels"),
SM_CXVSCROLL,TEXT("SM_CXVSCROLL"),
TEXT("Verticalscrollwidth"),
SM_CYHSCROLL,TEXT("SM_CYHSCROLL"),
TEXT("Horizontalscrollheight"),
SM_CYCAPTION,TEXT("SM_CYCAPTION"),
TEXT("Captionbarheight"),
SM_CXBORDER,TEXT("SM_CXBORDER"),
TEXT("Windowborderwidth"),
SM_CYBORDER,TEXT("SM_CYBORDER"),
TEXT("Windowborderheight"),
SM_CXFIXEDFRAME,TEXT("SM_CXFIXEDFRAME"),
TEXT("Dialogwindowframewidth"),
SM_CYFIXEDFRAME,TEXT("SM_CYFIXEDFRAME"),
TEXT("Dialogwindowframeheight"),
SM_CYVTHUMB,TEXT("SM_CYVTHUMB"),
TEXT("Verticalscrollthumbheight"),
SM_CXHTHUMB,TEXT("SM_CXHTHUMB"),
TEXT("Horizontalscrollthumbwidth"),
SM_CXICON,TEXT("SM_CXICON"),
TEXT("Iconwidth"),
SM_CYICON,TEXT("SM_CYICON"),
TEXT("Iconheight"),
SM_CXCURSOR,TEXT("SM_CXCURSOR"),
TEXT("Cursorwidth"),
SM_CYCURSOR,TEXT("SM_CYCURSOR"),
TEXT("Cursorheight"),
SM_CYMENU,TEXT("SM_CYMENU"),
TEXT("Menubarheight"),
SM_CXFULLSCREEN,TEXT("SM_CXFULLSCREEN"),
TEXT("Fullscreenclientareawidth"),
SM_CYFULLSCREEN,TEXT("SM_CYFULLSCREEN"),
TEXT("Fullscreenclientareaheight"),
SM_CYKANJIWINDOW,TEXT("SM_CYKANJIWINDOW"),
TEXT("Kanjiwindowheight"),
SM_MOUSEPRESENT,TEXT("SM_MOUSEPRESENT"),
TEXT("Mousepresentflag"),
SM_CYVSCROLL,TEXT("SM_CYVSCROLL"),
TEXT("Verticalscrollarrowheight"),
SM_CXHSCROLL,TEXT("SM_CXHSCROLL"),
TEXT("Horizontalscrollarrowwidth"),
SM_DEBUG,TEXT("SM_DEBUG"),
TEXT("Debugversionflag"),
SM_SWAPBUTTON,TEXT("SM_SWAPBUTTON"),
TEXT("Mousebuttonsswappedflag"),
SM_CXMIN,TEXT("SM_CXMIN"),
TEXT("Minimumwindowwidth"),
SM_CYMIN,TEXT("SM_CYMIN"),
TEXT("Minimumwindowheight"),
SM_CXSIZE,TEXT("SM_CXSIZE"),
TEXT("Min/Max/Closebuttonwidth"),
SM_CYSIZE,TEXT("SM_CYSIZE"),
TEXT("Min/Max/Closebuttonheight"),
SM_CXSIZEFRAME,TEXT("SM_CXSIZEFRAME"),
TEXT("Windowsizingframewidth"),
SM_CYSIZEFRAME,TEXT("SM_CYSIZEFRAME"),
TEXT("Windowsizingframeheight"),
SM_CXMINTRACK,TEXT("SM_CXMINTRACK"),
TEXT("Minimumwindowtrackingwidth"),
SM_CYMINTRACK,TEXT("SM_CYMINTRACK"),
TEXT("Minimumwindowtrackingheight"),
SM_CXDOUBLECLK,TEXT("SM_CXDOUBLECLK"),
TEXT("Doubleclickxtolerance"),
SM_CYDOUBLECLK,TEXT("SM_CYDOUBLECLK"),
TEXT("Doubleclickytolerance"),
SM_CXICONSPACING,TEXT("SM_CXICONSPACING"),
TEXT("Horizontaliconspacing"),
SM_CYICONSPACING,TEXT("SM_CYICONSPACING"),
TEXT("Verticaliconspacing"),
SM_MENUDROPALIGNMENT,TEXT("SM_MENUDROPALIGNMENT"),
TEXT("Leftorrightmenudrop"),
SM_PENWINDOWS,TEXT("SM_PENWINDOWS"),
TEXT("Penextensionsinstalled"),
SM_DBCSENABLED,TEXT("SM_DBCSENABLED"),
TEXT("Double-ByteCharSetenabled"),
SM_CMOUSEBUTTONS,TEXT("SM_CMOUSEBUTTONS"),
TEXT("Numberofmousebuttons"),
SM_SECURE,TEXT("SM_SECURE"),
TEXT("Securitypresentflag"),
SM_CXEDGE,TEXT("SM_CXEDGE"),
TEXT("3-Dborderwidth"),
SM_CYEDGE,TEXT("SM_CYEDGE"),
TEXT("3-Dborderheight"),
SM_CXMINSPACING,TEXT("SM_CXMINSPACING"),
TEXT("Minimizedwindowspacingwidth"),
SM_CYMINSPACING,TEXT("SM_CYMINSPACING"),
TEXT("Minimizedwindowspacingheight"),
SM_CXSMICON,TEXT("SM_CXSMICON"),
TEXT("Smalliconwidth"),
SM_CYSMICON,TEXT("SM_CYSMICON"),
TEXT("Smalliconheight"),
SM_CYSMCAPTION,TEXT("SM_CYSMCAPTION"),
TEXT("Smallcaptionheight"),
SM_CXSMSIZE,TEXT("SM_CXSMSIZE"),
TEXT("Smallcaptionbuttonwidth"),
SM_CYSMSIZE,TEXT("SM_CYSMSIZE"),
TEXT("Smallcaptionbuttonheight"),
SM_CXMENUSIZE,TEXT("SM_CXMENUSIZE"),
TEXT("Menubarbuttonwidth"),
SM_CYMENUSIZE,TEXT("SM_CYMENUSIZE"),
TEXT("Menubarbuttonheight"),
SM_ARRANGE,TEXT("SM_ARRANGE"),
TEXT("Howminimizedwindowsarranged"),
SM_CXMINIMIZED,TEXT("SM_CXMINIMIZED"),
TEXT("Minimizedwindowwidth"),
SM_CYMINIMIZED,TEXT("SM_CYMINIMIZED"),
TEXT("Minimizedwindowheight"),
SM_CXMAXTRACK,TEXT("SM_CXMAXTRACK"),
TEXT("Maximumdraggablewidth"),
SM_CYMAXTRACK,TEXT("SM_CYMAXTRACK"),
TEXT("Maximumdraggableheight"),
SM_CXMAXIMIZED,TEXT("SM_CXMAXIMIZED"),
TEXT("Widthofmaximizedwindow"),
SM_CYMAXIMIZED,TEXT("SM_CYMAXIMIZED"),
TEXT("Heightofmaximizedwindow"),
SM_NETWORK,TEXT("SM_NETWORK"),
TEXT("Networkpresentflag"),
SM_CLEANBOOT,TEXT("SM_CLEANBOOT"),
TEXT("Howsystemwasbooted"),
SM_CXDRAG,TEXT("SM_CXDRAG"),
TEXT("Avoiddragxtolerance"),
SM_CYDRAG,TEXT("SM_CYDRAG"),
TEXT("Avoiddragytolerance"),
SM_SHOWSOUNDS,TEXT("SM_SHOWSOUNDS"),
TEXT("Presentsoundsvisually"),
SM_CXMENUCHECK,TEXT("SM_CXMENUCHECK"),
TEXT("Menucheck-markwidth"),
SM_CYMENUCHECK,TEXT("SM_CYMENUCHECK"),
TEXT("Menucheck-markheight"),
SM_SLOWMACHINE,TEXT("SM_SLOWMACHINE"),
TEXT("Slowprocessorflag"),
SM_MIDEASTENABLED,TEXT("SM_MIDEASTENABLED"),
TEXT("HebrewandArabicenabledflag"),
SM_MOUSEWHEELPRESENT,TEXT("SM_MOUSEWHEELPRESENT"),
TEXT("Mousewheelpresentflag"),
SM_XVIRTUALSCREEN,TEXT("SM_XVIRTUALSCREEN"),
TEXT("Virtualscreenxorigin"),
SM_YVIRTUALSCREEN,TEXT("SM_YVIRTUALSCREEN"),
TEXT("Virtualscreenyorigin"),
SM_CXVIRTUALSCREEN,TEXT("SM_CXVIRTUALSCREEN"),
TEXT("Virtualscreenwidth"),
SM_CYVIRTUALSCREEN,TEXT("SM_CYVIRTUALSCREEN"),
TEXT("Virtualscreenheight"),
SM_CMONITORS,TEXT("SM_CMONITORS"),
TEXT("Numberofmonitors"),
SM_SAMEDISPLAYFORMAT,TEXT("SM_SAMEDISPLAYFORMAT"),
TEXT("Samecolorformatflag")
};

分 -->
回复

使用道具 举报

千问 | 2021-1-27 06:45:36 | 显示全部楼层
你这是啥呀?完全看不懂!
数组的sysmetrics的类型呢?就是你上面定义的那个struct吗?

回复

使用道具 举报

千问 | 2021-1-27 06:45:36 | 显示全部楼层
我估计你应该是这个意思:
typedefstructtagXXOO
{
intiIndex;
TCHAR*szLabel;
TCHAR*szDesc;
}XXOO,*PXXOO;
XXOOsysmetrics[]=
{
{SM_CXSCREEN,TEXT("SM_CXSCREEN"),TEXT("Screenwidthinpixels")},
{SM_CYSCREEN,TEXT("SM_CYSCREEN"),TEXT("Screenheightinpixels")},
{SM_CXVSCROLL,TEXT("SM_CXVSCROLL"),TEXT("Verticalscrollwidth")},
};

sysmetrics的定义要放到cpp中,否则可能会出现类似于“..已定义...找到一个或多个多重定义的符号”错误

回复

使用道具 举报

千问 | 2021-1-27 06:45:36 | 显示全部楼层
http://bbs.csdn.net/topics/380157851

/*-----------------------------------------------
SYSMETS.H--Systemmetricsdisplaystructure
-----------------------------------------------*/
#defineNUMLINES((int)(sizeof(sysmetrics)/sizeof(sysmetrics[0])))
staticconststruct{
intiIndex;TCHAR*szLabel;TCHAR*szDesc;
}sysmetrics[]={
SM_CXSCREEN,_T("SM_CXSCREEN"),_T("Screenwidthinpixels"),
SM_CYSCREEN,_T("SM_CYSCREEN"),_T("Screenheightinpixels"),
SM_CXVSCROLL,_T("SM_CXVSCROLL"),_T("Verticalscrollwidth"),
SM_CYHSCROLL,_T("SM_CYHSCROLL"),_T("Horizontalscrollheight"),
SM_CYCAPTION,_T("SM_CYCAPTION"),_T("Captionbarheight"),
SM_CXBORDER,_T("SM_CXBORDER"),_T("Windowborderwidth"),
SM_CYBORDER,_T("SM_CYBORDER"),_T("Windowborderheight"),
SM_CXFIXEDFRAME,_T("SM_CXFIXEDFRAME"),_T("Dialogwindowframewidth"),
SM_CYFIXEDFRAME,_T("SM_CYFIXEDFRAME"),_T("Dialogwindowframeheight"),
SM_CYVTHUMB,_T("SM_CYVTHUMB"),_T("Verticalscrollthumbheight"),
SM_CXHTHUMB,_T("SM_CXHTHUMB"),_T("Horizontalscrollthumbwidth"),
SM_CXICON,_T("SM_CXICON"),_T("Iconwidth"),
SM_CYICON,_T("SM_CYICON"),_T("Iconheight"),
SM_CXCURSOR,_T("SM_CXCURSOR"),_T("Cursorwidth"),
SM_CYCURSOR,_T("SM_CYCURSOR"),_T("Cursorheight"),
SM_CYMENU,_T("SM_CYMENU"),_T("Menubarheight"),
SM_CXFULLSCREEN,_T("SM_CXFULLSCREEN"),_T("Fullscreenclientareawidth"),
SM_CYFULLSCREEN,_T("SM_CYFULLSCREEN"),_T("Fullscreenclientareaheight"),
SM_CYKANJIWINDOW,_T("SM_CYKANJIWINDOW"),_T("Kanjiwindowheight"),
SM_MOUSEPRESENT,_T("SM_MOUSEPRESENT"),_T("Mousepresentflag"),
SM_CYVSCROLL,_T("SM_CYVSCROLL"),_T("Verticalscrollarrowheight"),
SM_CXHSCROLL,_T("SM_CXHSCROLL"),_T("Horizontalscrollarrowwidth"),
SM_DEBUG,_T("SM_DEBUG"),_T("Debugversionflag"),
SM_SWAPBUTTON,_T("SM_SWAPBUTTON"),_T("Mousebuttonsswappedflag"),
SM_CXMIN,_T("SM_CXMIN"),_T("Minimumwindowwidth"),
SM_CYMIN,_T("SM_CYMIN"),_T("Minimumwindowheight"),
SM_CXSIZE,_T("SM_CXSIZE"),_T("Min/Max/Closebuttonwidth"),
SM_CYSIZE,_T("SM_CYSIZE"),_T("Min/Max/Closebuttonheight"),
SM_CXSIZEFRAME,_T("SM_CXSIZEFRAME"),_T("Windowsizingframewidth"),
SM_CYSIZEFRAME,_T("SM_CYSIZEFRAME"),_T("Windowsizingframeheight"),
SM_CXMINTRACK,_T("SM_CXMINTRACK"),_T("Minimumwindowtrackingwidth"),
SM_CYMINTRACK,_T("SM_CYMINTRACK"),_T("Minimumwindowtrackingheight"),
SM_CXDOUBLECLK,_T("SM_CXDOUBLECLK"),_T("Doubleclickxtolerance"),
SM_CYDOUBLECLK,_T("SM_CYDOUBLECLK"),_T("Doubleclickytolerance"),
SM_CXICONSPACING,_T("SM_CXICONSPACING"),_T("Horizontaliconspacing"),
SM_CYICONSPACING,_T("SM_CYICONSPACING"),_T("Verticaliconspacing"),
SM_MENUDROPALIGNMENT,_T("SM_MENUDROPALIGNMENT"),_T("Leftorrightmenudrop"),
SM_PENWINDOWS,_T("SM_PENWINDOWS"),_T("Penextensionsinstalled"),
SM_DBCSENABLED,_T("SM_DBCSENABLED"),_T("Double-ByteCharSetenabled"),
SM_CMOUSEBUTTONS,_T("SM_CMOUSEBUTTONS"),_T("Numberofmousebuttons"),
SM_SECURE,_T("SM_SECURE"),_T("Securitypresentflag"),
SM_CXEDGE,_T("SM_CXEDGE"),_T("3-Dborderwidth"),
SM_CYEDGE,_T("SM_CYEDGE"),_T("3-Dborderheight"),
SM_CXMINSPACING,_T("SM_CXMINSPACING"),_T("Minimizedwindowspacingwidth"),
SM_CYMINSPACING,_T("SM_CYMINSPACING"),_T("Minimizedwindowspacingheight"),
SM_CXSMICON,_T("SM_CXSMICON"),_T("Smalliconwidth"),
SM_CYSMICON,_T("SM_CYSMICON"),_T("Smalliconheight"),
SM_CYSMCAPTION,_T("SM_CYSMCAPTION"),_T("Smallcaptionheight"),
SM_CXSMSIZE,_T("SM_CXSMSIZE"),_T("Smallcaptionbuttonwidth"),
SM_CYSMSIZE,_T("SM_CYSMSIZE"),_T("Smallcaptionbuttonheight"),
SM_CXMENUSIZE,_T("SM_CXMENUSIZE"),_T("Menubarbuttonwidth"),
SM_CYMENUSIZE,_T("SM_CYMENUSIZE"),_T("Menubarbuttonheight"),
SM_ARRANGE,_T("SM_ARRANGE"),_T("Howminimizedwindowsarranged"),
SM_CXMINIMIZED,_T("SM_CXMINIMIZED"),_T("Minimizedwindowwidth"),
SM_CYMINIMIZED,_T("SM_CYMINIMIZED"),_T("Minimizedwindowheight"),
SM_CXMAXTRACK,_T("SM_CXMAXTRACK"),_T("Maximumdraggablewidth"),
SM_CYMAXTRACK,_T("SM_CYMAXTRACK"),_T("Maximumdraggableheight"),
SM_CXMAXIMIZED,_T("SM_CXMAXIMIZED"),_T("Widthofmaximizedwindow"),
SM_CYMAXIMIZED,_T("SM_CYMAXIMIZED"),_T("Heightofmaximizedwindow"),
SM_NETWORK,_T("SM_NETWORK"),_T("Networkpresentflag"),
SM_CLEANBOOT,_T("SM_CLEANBOOT"),_T("Howsystemwasbooted"),
SM_CXDRAG,_T("SM_CXDRAG"),_T("Avoiddragxtolerance"),
SM_CYDRAG,_T("SM_CYDRAG"),_T("Avoiddragytolerance"),
SM_SHOWSOUNDS,_T("SM_SHOWSOUNDS"),_T("Presentsoundsvisually"),
SM_CXMENUCHECK,_T("SM_CXMENUCHECK"),_T("Menucheck-markwidth"),
SM_CYMENUCHECK,_T("SM_CYMENUCHECK"),_T("Menucheck-markheight"),
SM_SLOWMACHINE,_T("SM_SLOWMACHINE"),_T("Slowprocessorflag"),
SM_MIDEASTENABLED,_T("SM_MIDEASTENABLED"),_T("HebrewandArabicenabledflag"),
SM_MOUSEWHEELPRESENT,_T("SM_MOUSEWHEELPRESENT"),_T("Mousewheelpresentflag"),
SM_XVIRTUALSCREEN,_T("SM_XVIRTUALSCREEN"),_T("Virtualscreenxorigin"),
SM_YVIRTUALSCREEN,_T("SM_YVIRTUALSCREEN"),_T("Virtualscreenyorigin"),
SM_CXVIRTUALSCREEN,_T("SM_CXVIRTUALSCREEN"),_T("Virtualscreenwidth"),
SM_CYVIRTUALSCREEN,_T("SM_CYVIRTUALSCREEN"),_T("Virtualscreenheight"),
SM_CMONITORS,_T("SM_CMONITORS"),_T("Numberofmonitors"),
SM_SAMEDISPLAYFORMAT,_T("SM_SAMEDISPLAYFORMAT"),_T("Samecolorformatflag"),
};

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行