基础编程全部集合
文章平均质量分 58
「已注销」
这个作者很懒,什么都没留下…
展开
-
3.1进程的创建过程 打开进程并且结束
# include <Windows.h># include <stdio.h># include <TlHelp32.h>int main(){ //定义需要的结构体 STARTUPINFO si = { 0 }; si.cb = sizeof(STARTUPINFO); PROCESS_INFORMATION pi =...原创 2019-08-15 13:07:32 · 217 阅读 · 0 评论 -
MFC 窗口句柄获取
句柄获取方法(获取该窗口的句柄后,即可向该窗口类类发送消息、处理程序):0。获取所在类窗口的句柄:this->m_hwnd1。主窗口的句柄:无论在主窗口类内,还是子窗口类内,获取主窗口句柄的方法:AfxGetMainWnd()->m_hWnd,如:::SendMessage(AfxGetMainWnd()->m_hWnd,WM_MY_DOSOME,0,(LPA...转载 2018-07-28 16:40:22 · 4244 阅读 · 1 评论 -
MFC中定时器OnTimer函数的使用
在MFC中我们经常需要定时读写数据,或者定时刷新界面,更新数据和状态,这就需要用到定时器,其实现函数为OnTimer,下面对其用法步骤(基于VS2010)进行简要说明:1、在类视图中点击需要使用定时器的对话框类,在属性窗口选择消息,在下面的消息函数中选中WM_TIMER,后面选择添加OnTimer函数,如下图所示:2、编写OnTimer函数void CLD_PowerDlg::On...转载 2018-09-19 08:04:36 · 459 阅读 · 0 评论 -
TCP服务器+客户端_全部集合
#include<winsock2.h>#include<stdio.h>#include<windows.h>#pragma comment(lib,"WS2_32.lib")int main(){ WSADATA wsadata; WORD w=MAKEWORD(2,0); char sztext[60]="大赛 欢迎你 呵呵顶服务器\r\...转载 2019-01-31 03:42:52 · 175 阅读 · 0 评论 -
注册表R0自启动 开机启动L"Software\\Microsoft\\Windows\\CurrentVersion\\Run"
void C注册表操作_自启动runDlg::OnBnClickedButton2(){ HKEY hRoot = HKEY_LOCAL_MACHINE; wchar_t *szSubKey = L"Software\\Microsoft\\Windows\\CurrentVersion\\Run"; HKEY hKey;//打开指定子键 DWORD dwDisposition = R...转载 2019-01-31 05:42:22 · 1120 阅读 · 0 评论 -
注册表操作开机启动R0自启动
void C注册表操作_自启动runDlg::OnBnClickedButton2(){ HKEY hRoot = HKEY_LOCAL_MACHINE; wchar_t *szSubKey = L"Software\\Microsoft\\Windows\\CurrentVersion\\Run"; HKEY hKey;//打开指定子键 DWORD dwDisposition = R...转载 2019-01-31 05:50:15 · 245 阅读 · 0 评论 -
创建服务开机自启动
// 创建服务自启动.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <Windows.h>#include <stdio.h> #pragma comment ( lib, "Advapi32.lib" )void WINAPI ServiceMain(int argc, char** argv);...转载 2019-01-31 08:49:20 · 285 阅读 · 0 评论 -
临界区_打印字符串_2线程
#include <windows.h> //包含头文件#include <stdio.h>DWORD WINAPI myfun1(LPVOID lpParameter );//声明线程函数DWORD WINAPI myfun2(LPVOID lpParameter );static int a1=0; //定义全局变量并初始化CRIT...转载 2017-07-07 03:43:54 · 359 阅读 · 0 评论 -
事件对象_打印字符串_2线程_同步
#include <windows.h> //包含头文件#include <stdio.h>DWORD WINAPI myfun1(LPVOID lpParameter);//声明线程函数DWORD WINAPI myfun2(LPVOID lpParameter);HANDLE hevent; //定义全局变量heventint a...转载 2017-07-07 08:23:04 · 335 阅读 · 0 评论 -
控制台_tcp服务器_客户端
#include<winsock2.h> //包含头文件#include<stdio.h>#include<windows.h>#pragma comment(lib,"WS2_32.lib") //显式连接套接字库int main() //主函数开始{ WSADATA data; //定义WSADATA...转载 2017-07-06 22:24:39 · 315 阅读 · 0 评论 -
控制台_udp服务器_客户端
#include<winsock2.h> //包含头文件#include<stdio.h>#include<windows.h>#pragma comment(lib,"WS2_32.lib") //连接套接字库int main(){ WSADATA data; //定义结构体变量 WORD w=MAKEWOR...转载 2017-07-06 22:44:27 · 273 阅读 · 0 评论 -
创建线程打印字符串_2个线程打印
#include <windows.h> //包含相应头文件#include <stdio.h> DWORD WINAPI myfun1(LPVOID lpParameter ); //声明线程函数DWORD WINAPI myfun2(LPVOID lpParameter );int main() //主函数...转载 2017-07-07 03:32:30 · 845 阅读 · 0 评论 -
MFC_临界区_打印字符串_2线程
#include <stdio.h>#include <afxmt.h>DWORD WINAPI myfun1(LPVOID lpParameter); //声明线程函数DWORD WINAPI myfun2(LPVOID lpParameter);CCriticalSection m_Sec; //定义全局变量m_Secint a=0; ...转载 2017-07-07 04:19:48 · 264 阅读 · 0 评论 -
互斥对象_打印字符串_2线程_同步
#include <windows.h> //包含头文件#include <stdio.h>DWORD WINAPI myfun1(LPVOID lpParameter);//声明线程函数DWORD WINAPI myfun2(LPVOID lpParameter);HANDLE hmutex;int a=0; //定义全局变量a...转载 2017-07-07 17:37:38 · 259 阅读 · 0 评论 -
在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include "StdAfx.h"”?
错误 16 error C1010: 在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include "StdAfx.h"”? c:\gsoap\gsoap-2.8\gsoap\stdsoap2.cpp 18894 1 AddServer错误原因:在创建工程时勾选了:预编译头解决方法:1、在错误提示的文件中添加预编译头[cpp]view plainco...转载 2017-10-26 10:40:30 · 5592 阅读 · 0 评论 -
windows编程中的数据类型
在windows编程中,有许多奇怪的数据类型,初学者不知道这些代表什么,下面就把一些数据类型列出如下:ATOM 原子(原子表中的一个字符串的参考)BOOL 布尔变量BOOLEAN 布尔变量BYTE 字节(8位)CCHAR Windows字符CHAR Windows字符COLORREF 红、绿、蓝(RGB)彩色值(32位)Const 变量,该变量的值在执行期间保持为常量CRITIC...原创 2016-08-28 05:58:03 · 485 阅读 · 0 评论 -
【Windows核心编程】Windows常见数据类型
一,常见数据类型 WORD: 16位无符号整形数据 DWORD: 32位无符号整型数据(DWORD32) DWORD64: 64位无符号整型数据 INT: 32位有符号整型数据类型 INT_PTR: 指向INT数据类型的指针类型 INT3...原创 2016-08-28 05:55:55 · 469 阅读 · 0 评论 -
内存分配详解 malloc, new, HeapAlloc, VirtualAlloc,GlobalAlloc
很多地方都会使用内存,内存使用过程中操作不当就容易崩溃,无法运行程序,上网Google学习一下,了解整理下他们之间的区别以及使用 ,获益匪浅0x01 各自的定义和理解 (1)先看GlobalAlloc() GlobalAlloc()主要用于Win32应用程序实现从全局堆中分配出内存供2017-03-05程序使用,是16位WINDOWS程序使用的API,对应于系统的全局栈,返回...转载 2019-07-21 23:21:20 · 424 阅读 · 0 评论 -
m_hWnd 和 this指针
m_hWnd ①m_hWnd这个成员变量,最早是定义在类CWnd中,而且是类CWnd的第一个数据成员, 先看一下MSDN的解析: The handle of the Windows window attached to this CWnd. The m_hWnd data member is a publi...转载 2019-06-15 23:51:50 · 273 阅读 · 0 评论 -
获取cpuid 硬件信息
// 获取cpu序列号.cpp : 定义控制台应用程序的入口点。#include "stdafx.h"#include <iostream>#include <string>#include <windows.h>using namespace std;#define AFX_14BEC153_17B9_47BE_845F_71A27BF26B59_...转载 2019-05-04 12:57:55 · 250 阅读 · 0 评论 -
如何利用C语言来获取当地时间和UTC时间? (设当地时间是北京时间)
#include <stdio.h> #include <time.h> int main(){ time_t t = time(NULL); tm *tp = localtime(&t); // 北京时间 printf("%d/%d/%d\n", tp->tm_mon+1, tp->tm_...原创 2019-04-09 17:04:54 · 959 阅读 · 0 评论 -
Windows 记事本的 ANSI、Unicode、UTF-8 这三种编码模式有什么区别?
Windows 的记事本默认存储文本文档编码是 ANSI,想问一下为了最大跨平台兼容性,应该采用哪种编码格式比较好?ANSI:最早的时候计算机ASCII码只能表示256个符号(含控制符号),这个字符集表示英文字母足够,其中,我们键盘上可见的符号的编码范围是从32到126(大小写英文字母、数字、英文符号等)。但表示汉字、日语、韩语就不太够用了,汉字常用字有3000多个。但是中国人也要用电脑打字...转载 2016-11-11 19:49:51 · 569 阅读 · 0 评论 -
MFC中的大写标识符、数据型态、匈牙利表示法
大写字母标识符 前缀 类别 CS 窗口类别样式 CW 建立窗口 DT 绘制文字 IDI 图示ID IDC 游标ID MB ...原创 2016-08-28 06:43:27 · 604 阅读 · 0 评论 -
error LNK2019: 无法解析的外部符号 _socket@12,该符号在函数 _wmain 中被引用
Reason:学习使用socket,在stdafx.h文件加了#include,编译#include "stdafx.h"#includeusing namespace std;int _tmain(int argc, _TCHAR* argv[]) {int socketId;socketId = socket(AF_INET, SO...转载 2018-09-16 11:00:24 · 2272 阅读 · 0 评论 -
AfxGetApp用法 得到进程对象指针
AfxGetApp( )是全局的。AfxGetApp( )这个函数可以得到当前应用进程的指针,是CWinApp*类型的,通过这个指针可以访问到这个进程中的对象。比如在全局函数中要向对话框中的列表写数据。void writeString(char* pString){ CWnd* pWnd = AfxGetApp()->GetMainWnd(); CMyDlg * p...转载 2018-07-28 16:45:20 · 285 阅读 · 0 评论 -
MFC中获取各个窗体之间的句柄或者指针对象的方法
MFC在很多的对话框操作中,我们经常要用到在一个对话框中调用另一个对话框的函数或变量.可以用如下方法来解决. HWND hWnd=::FindWindow(NULL,_T("Sphere")); //得到对话框的句柄 C***Dialog* pWnd= (C***Dialog*)C***Dialog::FromHandle(hWnd); //由句柄得到对话框的对象指针 ...转载 2018-07-28 16:09:39 · 278 阅读 · 0 评论 -
如何避免重复宏定义?重定义错误
如何避免重复宏定义?如有一个头文件def.h就是一个专门用于宏定义常量字符串的头文件,同一个解决方案下有多个工程使用了def.h中的宏定义的字符串,如果在多个文件中都加了#include"def.h"就会出现重复宏定义,该怎么解决啊?#ifndef_DEF_H#define_DEF_H#endif#pragmaonce...转载 2017-10-26 10:43:34 · 7194 阅读 · 0 评论 -
多字节之通用对话框_读写文件
void C多字节之通用对话框Dlg::OnBnClickedButton1()//打开文件 读取文件到编辑框{ CFileDialog dlg(TRUE, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, "All Files(*.*)|*.*| |", AfxGetMainWnd()); CString strPath, str...转载 2017-06-22 19:33:05 · 240 阅读 · 0 评论 -
VC编程增加快捷键的几种方式
对于这个问题,大家应该都不陌生,写于此只是进行了归纳总结,算是一个备忘吧定义快捷方式有下面几种方法:1.对于菜单(MENU)或者按钮(BUTTON)直接在菜单或按钮的标题中,包含&X即可,这里X是任意字符键示例:Tool菜单项的标题可以写作:"&Tool"或者"工具(&T)",这样就可以直接用ALT+T直接调用该菜单项的功能2.对菜单(MENU)菜单的另一种...转载 2016-11-13 01:12:49 · 414 阅读 · 0 评论 -
Windows 常用消息大全
Windows 常用消息大全表A-1 Windows消息分布 消息范围 说 明 0 ~WM_USER– 1 系统消息 WM_USER~ 0x7FFF 自定义窗口类整数消息 WM_APP~ 0xBFFF 应用程序自定义消息 ...原创 2016-08-27 20:55:40 · 540 阅读 · 0 评论 -
MFC_互斥对象_打印字符串_2线程_同步
#include <afxmt.h>#include <stdio.h>DWORD WINAPI myfun1(LPVOID lpParameter);//声明线程函数DWORD WINAPI myfun2(LPVOID lpParameter);CMutex hmutex(NULL,FALSE,NULL); //定义全局互斥对象int a=0; ...转载 2017-07-07 17:45:24 · 258 阅读 · 0 评论 -
MFC_事件对象_打印字符串_2线程_同步
#include <afxmt.h>#include <stdio.h>DWORD WINAPI myfun1(LPVOID lpParameter);//声明线程函数DWORD WINAPI myfun2(LPVOID lpParameter);CEvent event(false,false,NULL,NULL); //将事件对象定义为全局变量int a...转载 2017-07-07 17:50:40 · 285 阅读 · 0 评论 -
在C语言中,double、long、unsigned、int、char类型数据所占字节数
和机器字长及编译器有关系:所以,int,long int,short int的宽度都可能随编译器而异。但有几条铁定的原则(ANSI/ISO制订的): 1 sizeof(short int)<=sizeof(int) 2 sizeof(int)<=sizeof(long int) 3 short int至少应为16位(2字节) 4 long int至少应为32位。 unsigned 是转载 2017-05-11 02:29:56 · 535 阅读 · 0 评论 -
动态链接库调用过程中不使用__declspec(dllimport)为何仍能调用?
dll文件应用过程中发现的问题。1.运用VC6.0的非MFC动态链接库建立动态链接库工程dlltest,包含头文件lib.h和源文件lib.c/* 文件名:lib.h */#ifndef LIB_H#define LIB_Hextern int __declspec(dllexport) add(int x, int y);//导出#endif/* 文件名:lib.c */#inc转载 2017-01-30 23:17:47 · 1171 阅读 · 0 评论 -
assert()函数用法总结
assert宏的原型定义在中,其作用是如果它的条件返回错误,则终止程序执行,原型定义:#include assert.h>void assert( int expression ); assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终止程序运行。请看下面的程序清单badpt转载 2017-01-30 22:53:40 · 186 阅读 · 0 评论 -
typedef 函数指针的用法2
typedef 函数指针的用法在网上搜索函数指针,看到一个例子。开始没看懂,想放弃,可是转念一想,这个用法迟早要弄懂的,现在多花点时间看懂它,好过以后碰到了要再花一倍时间来弄懂它。其实很多时候都是这样,如果每次到难一点的内容,总想着下次我再来解决它,那就永远也学不到东西。后面那个例子加了注释,是我对这种用法的理解,希望对新手有所帮助。进入正文: 代码简化, 促进跨平转载 2017-01-30 22:52:21 · 197 阅读 · 0 评论 -
typedef函数指针用法
1.简单的函数指针的应用形式1:返回类型(*函数名)(参数表) [cpp] view plain copychar (*pFun)(int); char glFun(int a){ return;} void main() { pFun = glFun; (*pFun)(2);转载 2017-01-30 22:45:26 · 476 阅读 · 0 评论 -
VS2013配置Visual_Assist_X_10.8.2001.0编程助手
1.首先下载Visual_Assist_X_10.8.2001.0编程助手:http://pan.baidu.com/s/1bnlMjuB2.解压里面的压缩包,得到下面文件3.安装VAX之前,要关闭VS2013。然后双击运行。点击Install4.安装完成之后,进入“用户的文件”,在右上角搜索VA_X.DL转载 2017-01-19 13:29:03 · 415 阅读 · 0 评论 -
QT下中文显示乱码解决办法
0. [通用] 源文件保存为带BOM的UTF-8格式如果你准备跨平台,保存为带BOM的UTF-8是必不可少的。而后,源码中的所有字符串常量使用 QStringLiteral 宏进行包裹复制代码QString s1 = QStringLiteral("中国");edit.setText(QStringLiteral("中国"));仅仅这样就原创 2016-05-22 19:26:51 · 449 阅读 · 0 评论 -
Win7下安装和使用Qt5详细图解
1、安装Qt5Qt5的安装比Qt4的安装简单多了,我装的是Qt5.4(qt-opensource-windows-x86-mingw491_opengl-5.4.0.exe),它集成了MinGW、Qt Creator等,不需要你再单独下载MinGW和Qt Creator。首先,去Qt官网下载资源:qt-opensource-windows-x86-mingw491_opengl-5原创 2016-05-24 20:33:19 · 482 阅读 · 0 评论