CreateProcess创建进程

STARTUPINFO         si = { 0 };
PROCESS_INFORMATION pi = { 0 };
si.cb = sizeof( si );
si.dwFlags = STARTF_USESIZE;
si.dwXSize = 100;
si.dwYSize = 200;
//创建进程
CreateProcess( "ChildProc.exe",
    "\"Hello Child\"",  
    NULL, NULL, FALSE,
    CREATE_NEW_CONSOLE, 
    NULL, NULL, &si, &pi );
//输出信息
printf( "Process Handle: %p\n", pi.hProcess );
printf( "Process ID: %d\n", pi.dwProcessId );
printf( "Thread Handle: %p\n", pi.hThread );
printf( "Thread ID: %d\n", pi.dwThreadId );

插入符函数

插入符函数(鼠标闪烁)
CreateCaret 创建与窗口相关的插入符;
SetCaretPos 在窗口中设置插入符的位置
ShowCaret 显示插入符
HideCaret 隐藏插入符
DestroyCaret 撤销插入符
GetCaretPos 获取插入符位置
GetCaretBlinkTime 获取插入符闪烁时间
SetCaretBlinkTime 设置插入符闪烁时间

demo

CreateCaret(hWnd, (HBITMAP)NULL, 1, 15);
SetCaretPos(100, 100);
ShowCaret(hWnd);

win32操作ini配置文件

 /获取内容/
//获取字符串

GetPrivateProfileString(_T("Config"),_T("Name"),_T("暂无名字"),strName.GetBuffer(MAX_PATH),MAX_PATH,_T("C:\\1.ini"));

//一级菜单|二级菜单|没有找到返回的字符串|strName字符串变量名||ini路径
//获取数字

ndata = GetPrivateProfileInt(_T("Config"),_T("Data"),0,g_strPath);

//返回值是获取到的数据,一级菜单|二级菜单|如果没有找到返回的数字|路径

/写入内容/

::WritePrivateProfileString(_T("Config"),_T("Name"),g_strName,_T("C:\\1.ini"));//写入字符串|数字

//一级菜单|二级菜单|要写入的内容|ini路径

子窗口居中

// 计算需要创建窗口的大小
int nW = rectWnd.right-rectWnd.left ;// 窗口的宽
int nH = rectWnd.bottom-rectWnd.top ;// 窗口的高
// 计算窗口大小(用于居中)
int nX = (rectBaseWnd.right+rectBaseWnd.left-nW) /2;
int nY = (rectBaseWnd.bottom+rectBaseWnd.top-nH) /2