Windows程序设计_19_测试Windows应用程序加载函数

时间:2023-03-08 19:44:59
/*
本程序测试自定义的WinMainCRTStartup函数
*/ #define STRICT
#define WIN32_LEAN_AND_MEAN #include <windows.h>
#include <tchar.h>
#include <assert.h> //PIMAGE_DOS_HEADER void CenterText(HDC hDC,int x,int y,LPCTSTR szFace,LPCTSTR szMessage,int point)
{
HFONT hFont=CreateFont(- point * GetDeviceCaps(hDC,LOGPIXELSY)/,
,
,
,
FW_BOLD,
TRUE,
FALSE,
FALSE,
ANSI_CHARSET,
OUT_TT_PRECIS,
CLIP_DEFAULT_PRECIS,
PROOF_QUALITY,
VARIABLE_PITCH,
szFace
);
assert(hFont); HGDIOBJ hOld=SelectObject(hDC,hFont);
SetTextAlign(hDC,TA_CENTER | TA_BASELINE);
SetBkMode(hDC,TRANSPARENT);
SetTextColor(hDC,RGB(,,0xFF));
TextOut(hDC,x,y,szMessage,_tcslen(szMessage));
SelectObject(hDC,hOld);
DeleteObject(hOld);
} const TCHAR szMessage[]=_T("Hello world");
const TCHAR szFace[]=_T("Times New Roman"); #pragma comment(linker,"-merge:rdata=.text")
//#pragma comment(linker,"-align:512") extern "C" void WinMainCRTStartup()
{
HDC hDC=GetDC(NULL);
assert(hDC); CenterText(hDC,GetSystemMetrics(SM_CXSCREEN)/,GetSystemMetrics(SM_CYSCREEN)/,szFace,szMessage,); ReleaseDC(NULL,hDC);
ExitProcess();
}