- 博客(142)
- 收藏
- 关注
原创 VS命令参数 $(SolutionDir)\..\test中“..”含义
..是返回上一级目录,从你的这个来看应该是解决方案的目录的上一级目录一般来说一个“.”是当前目录,二个“..”就是上一级目录
2020-05-29 09:33:16
1201
转载 vs中能编译通过,但是会有红色下划线提示未定义标示符问题
原文声明:版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。项目能编译通过,但是代码中会有红色下划线提示未定义标示符。就连BOOL TRUE FALSE等都会有下划线。这通常是该代码文件包含在项目文件夹的子文件夹中。解决办法是配置包含项目目录即可:打开项目属性-》配置属性-》C/C++常规-》附加包含目录-》填入:$(Proje...
2019-10-23 16:42:00
1195
原创 正确调用DLL时,依然出现无法解析外部文件
C++开发时,正确调用外部DLL时,出现无法解析外部文件的错误,可能的原因:接口文件中存在以下代码#ifdef EXPORT_STDCALL#define CALL_STACK __stdcall#else#define CALL_STACK __cdecl#endif“属性” - “C/C++” - "预处理器" - "预处理器定义" 内添加 :EXPORT_STDCALL...
2019-07-20 15:37:07
1303
原创 string 转换为 LPCWSTR
LPCWSTR stringToLPCWSTR(std::string orig) { size_t origsize = orig.length() + 1; size_t convertedChars = 0; wchar_t *wcstring = (wchar_t *)malloc(sizeof(wchar_t)*(orig.length()-1)); mbstowc...
2019-04-23 10:58:34
602
1
原创 获取dll所在路径
string GetPath() { string dllPath; TCHAR tcFullPath[MAX_PATH]; char* pChPath = new char[MAX_PATH]; memset(pChPath,'\0',MAX_PATH); GetModuleFileName(::LoadLibrary(L"动态库名称.dll"),tcFullPath,...
2019-04-22 14:58:46
1116
转载 签名,验签的理解
点击打开原文链接一、公钥加密假设一下,我找了两个数字,一个是1,一个是2。我喜欢2这个数字,就保留起来,不告诉你们(私钥),然后我告诉大家,1是我的公钥。我有一个文件,不能让别人看,我就用1加密了。别人找到了这个文件,但是他不知道2就是解密的私钥啊,所以他解不开,只有我可以用。数字2,就是我的私钥,来解密。这样我就可以保护数据了。例如:我的好朋友x用我的公钥1加密了字符a,加密后成...
2019-04-09 11:13:04
403
转载 MFC中Invalidate() 和UpdateWindow()的用法
点击打开原文链接Invalidate()是强制系统进行重画,但是不一定就马上进行重画。因为Invalidate()只是通知系统,此时的窗口已经变为无效。强制系统调用WM_PAINT,而这个消息只是Post,就是将该消息放入消息队列,当执行到WM_PAINT消息时才会对窗口进行重绘;UpdateWindow向窗体发送WM_PAINT消息,在发送之前判断GetUpdateRect(hWnd,...
2019-04-04 15:17:17
2310
转载 WritePrivateProfileString等读写.ini配置文件
点击打开原文链接1、写入.ini文件:BOOL WritePrivateProfileString( LPCTSTR lpAppName, // INI文件中的一个字段名[节名]可以有很多个节名 LPCTSTR lpKeyName, // lpAppName 下的一个键名,也就是里面具体的变量名 LPCTSTR lpString, // 键值,也就是数据 LPCT...
2019-04-04 13:45:45
520
转载 LoadLibrary函数详细说明
点击打开原文链接1、作用:将指定的模块加载到调用进程的地址空间中。2、使用语法HMODULE WINAPI LoadLibrary( _In_ LPCTSTR lpFileName);3、参数lpFileName:模块的名称。这可以是库模块(.dll文件)或可执行模块(.exe文件)。指定的名称是模块的文件名,与模块定义(.def)文件中的LIBRARY关键字所指定...
2019-04-04 13:30:53
4539
转载 CFileFind用法总结
点击打开原文地址CFileFind用法总结:头文件:afx.h功能:本地文件查找具体类型文件:.格式,例如:.pdf:查找.pdf文件所有 文件:.CFileFind类的构造函数::CFileFind()和关闭函数::Close(),成对使用。成员函数根据操作特性分成三类:查找操作类、获得文件属性类和判断文件属性类。(1) 查找操作类:::FindFile():...
2019-04-04 10:32:59
1634
转载 CreateThread与_beginthreadex本质区别
点击打开原文链接一、预热:下面这个程序的主线程会创建了一个子线程并等待其运行完毕,子线程就输出它的线程ID号然后输出一句经典名言——Hello World。整个程序的代码非常简短,只有区区几行。//最简单的创建多线程实例#include <stdio.h>#include <windows.h>//子线程函数DWORD WINAPI ThreadFun...
2019-04-04 10:08:27
345
转载 线程中CreateEvent和SetEvent及WaitForSingleObject的用法
点击打开原文链接一、CreateEvent是创建windows事件的意思,作用主要用在判断线程退出,线程锁定方面.EVENT有两种状态:发信号,不发信号。SetEvent:将EVENT置为发信号。ResetEvent:将EVENT置为不发信号。WaitForSingleObject():等待,直到参数所指定的OBJECT成为发信号状态时才返回,OBJECT可以是EVENT...
2019-04-03 17:35:19
795
转载 DeleteDC() 与 ReleaseDC() 的区别
点击打开原文链接DeleteDC该函数删除指定的设备上下文环境(DC)。原型:BOOL DeleteDC(HDChdc);参数:hdc:设备上下文环境的句柄。返回值:成功,返回非零值;失败,返回零。调用GetLastError获取扩展错误信息。说明:如果一个设备上下文环境的句柄是通过调用GetDC函数得到的,那么应用程序不能删除该设备上下文环境,它应...
2019-04-03 16:30:12
835
转载 m_hWnd和this指针
点击打开原文链接一、m_hWnd1、m_hWnd这个成员变量最早是定义在类CWnd中,而且是类CWnd的第一个数据成员。它是窗口类的一个句柄,凡是从CWnd派生的类都有这个句柄,凡是以CWnd派生的类定义的对象内部也都有这个句柄,它是类或者对象标识自己的句柄。凡是窗口都有一个句柄用来标识自己,在CWnd类中将这个句柄作为一个成员变量直接封装了,所以CWnd类的成员函数都没有句柄这个参数...
2019-04-03 16:00:09
430
转载 MFC中的模态对话框与非模态对话框
点击打开原文链接模态对话框创建:MyDialog mydlg;mydlg.DoModal()当前只能运行此模态对话框,且停止主窗口的运行,直到模态对话框退出,才允许主窗口运行。模态对话框的关闭顺序:OnClose:按关闭符号X后,响应WM_CLOSE消息;OnKillFocus:窗口即将失去输入焦点,响应WM_KILLFOCUS消息;OnDestroy:窗口即将被销...
2019-04-03 15:12:33
600
转载 扩大下C盘空间
点击打开原文链接1、在桌面“我的电脑”右键,找到“管理”,如图:2、在“管理”对话框内,找到“磁盘管理”,如图:3、在“磁盘管理”里面找到D盘,鼠标右键,“压缩卷”,在如下图的红框内,填入压缩的大小。4、鼠标右键C盘,点击“扩展卷”,即可。注意:1、若C盘的“扩展卷”为灰色,则借助于“分区助手”软件。(下载链接)2、使用“分区助手”软件时,每次尽量不要合并太...
2019-04-01 19:27:31
266
转载 new对象时,类名后加括号与不加括号的区别
点击打开原文链接#include <iostream>using namespace std;// 空类class empty{};// 一个默认构造函数,一个自定义构造函数class Base{public: Base() { cout << " default Base construct " <&l...
2019-04-01 09:59:35
1341
转载 Unicode 和 UTF-8 有何区别?
点击打开原文链接简单来说: Unicode 是「字符集」 UTF-8 是「编码规则」其中: 字符集:为每一个「字符」分配一个唯一的 ID(学名:码位 / 码点 / Code Point) 编码规则:将「码位」转换为字节序列的规则(编码/解...
2019-03-31 17:19:10
257
转载 WideCharToMultiByte和MultiByteToWideChar函数的用法
点击打开原文链接辅助链接WideCharToMultiByte的代码页用来标记与新转换的字符串相关的代码页。MultiByteToWideChar的代码页用来标记与一个多字节字符串相关的代码页。常用的代码页有CP_ACP和CP_UTF8两个。使用CP_ACP代码页就实现了ANSI与Unicode之间的转换。使用CP_UTF8代码页就实现了UTF-8与Unicode之间的转换。...
2019-03-31 15:54:33
309
转载 RSA加密算法c++简单实现
点击打开原文RSA是一种非对称加密算法,在公开密钥和电子商业中RSA被广泛使用。它是基于一个很简单的数论事实,两个素数相乘很容易,对两素数乘积因式分解很困难。原理就不再阐述了,我谈谈算法的编程实现过程。一、RSA加密和解密过程是基于以下形式,其中明文为M,密文为C,公匙PU={e, n},密匙PR={d, n}。1、准备工作,选择两个大素数p和q,计算p和q的乘积n,计算p-1和q-...
2019-03-29 13:59:20
9775
1
转载 利用libqrencode生成二维码并保持成bmp图片
点击打开原文链接QR code二维码简介及Qrencode库的移植与使用//QRGenerator.h#pragma once #include <string> using std::string; #define OUT_FILE_PIXEL_PRESCALER 8 class QRGenerator{public: QRGenerator...
2019-03-29 10:47:08
1218
转载 RSA加密 -- 选择padding模式需要注意的问题
点击打开原文链接 RSA - 原理、特点(加解密及签名验签)及公钥和私钥的生成RSA加密常用的填充方式有下面3种:1、RSA_PKCS1_PADDING 填充模式(最常用的模式)输入:必须 比 RSA 钥模长(modulus) 短至少11个字节, 也就是 RSA_size(rsa) – 11如果输入的明文过长,必须切割, 然后填充输出:和modulus一样长根据这...
2019-03-27 21:25:07
10940
转载 #include 出错
点击打开原文链接xxx\GdiPlusImaging.h(67) : error C2501: “MIDL_INTERFACE” : 缺少存储类或类型说明符xxx\GdiPlusImaging.h(67) : error C2440: “初始化” : 无法从“const char [37]”转换为“int”该转换要求 reinterpret_cast、C 样式转换或函数类型...
2019-03-26 09:51:53
1131
原创 pb90 调 dll
1、建立一个pb窗体https://blog.youkuaiyun.com/mpp_king/article/details/887071402、所调用的dll放在工程目录下3、在pb中的任何一个Object上双击打开该object的面板并进入脚本编辑框。选择Declare,Global ExternalFunctions。4、在一个编辑框内调用接口注:操作时所碰到的一些...
2019-03-24 19:05:50
671
原创 string 转为char* 作为函数参数回传后变成空字符串
int ReturnPoint(char* pStr){ string temp = "hello"; //是一个临时变量,函数结束时,就会被释放 //第一种方法 pStr = (char*)temp.c_str(); //pStr最后指向的内容是乱值,因为temp对象被析构,其内容被处理 //第二种方法 strcpy(pStr,(char*)temp.c_str()); /...
2019-03-23 16:25:26
2302
1
转载 string、char *、char[] 相互转换转换
点击打开原文链接一、string 转 char*主要有三种方法可以将 str 转换为 char* 类型,分别是:data(); c_str(); copy;1、data() 方法:string str = "hello world";const char *p = str.data(); //加const 或用 char *p = (char*)str.data(); 的形式...
2019-03-23 12:07:43
61818
4
原创 整型数组转字符串
int d[5]={4,5,3,2,5}; char a[80]; int i; for(i=0;i<5;i++) { a[i]=d[i]+'0'; } a[i]='\0'; //这个很重要,是字符串结束符 printf("%s\n",a);
2019-03-22 17:54:33
4702
转载 WString与String互相转换
点击打开原文链接std::wstring StringToWString(const std::string& str) { int num = MultiByteToWideChar(CP_UTF8, 0, str.c_str(), -1, NULL, 0); wchar_t *wide = new wchar_t[num]; MultiByteToWid...
2019-03-22 13:39:57
545
转载 VS2008无法调试,报错MSVCR90.DLL丢失
点击打开原文地址1. 在“属性”->“C/C++”->“代码生成”->“运行时库”里面设为“多线程DLL”2. 在程序里添代码:#pragma comment(linker, "\"/manifestdependency:type='Win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArch...
2019-03-11 19:10:58
628
转载 APDU命令的结构、处理、常用指令
点击打开原文1、智能卡学习资料APDU(ApplicationProtocol data unit), 是智能卡与智能卡读卡器之间传送的信息单元;IFD(接口设备)与IC卡之间的通讯:a、首先,IFD发送5个字节的命令头给IC卡,这5个字节的内容告诉了IC卡要做什么操作;b、然后,IC卡回传一个过程字节给IFD,告诉IFD,IC卡是否支持该操作;c、如果返回的过程字节告诉IF...
2019-03-06 14:44:26
10491
转载 MFC TabCtrl 控件修改标签尺寸
点击打开原文标签注意:需要先设置Tab控件的Style属性为fixed width.MFC,tabcontrol控件改变标签大小 - 优快云博客https://blog.youkuaiyun.com/u012702039/article/details/22668161 CSize size, size1; size.cx = 150; size.cy = 4...
2019-03-05 09:26:30
1806
转载 gdiPlus的imag::fromFile函数调用返回为空
点击打开原文地址gdiPlus需要初始化,在调用imag::fromFile()之前需要做如下的初始化才行:GdiplusStartupInput gdiplusStartupInput;ULONG_PTR gdiplusToken;GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NUL...
2019-02-28 19:12:02
730
转载 转换到 COFF 期间失败: 文件无效或损坏
点击打开原文地址亲测有效用VS2010编译C++项目时出现这样的错误:复制 C:\Windows\winsxs\x86_netfx-cvtres_for_vc_and_vb_b03f5f7f11d50a3a_6.1.7601.17514_none_ba1c770af0b2031b 目录下的 cvtres.exe 到C:\Program Files\Microsoft Visual...
2019-02-28 10:14:20
281
转载 cannot open shared object file: No such file or directory解决方法
点击打开原文链接错误:cannot open shared object file: No such file or directory文件明明存在但是却找不到是由于当前目录并不在查找范围内,因此显示无法找到。解决办法:sudo vi /etc/ld.so.conf添加库路径 ./ (表示当前目录)添加保存然后sudo ldconfig ...
2018-12-04 15:28:08
9699
转载 GetPrinter 获取到的状态为 0
HANDLE hPrinter=0;DWORD dwNeeded=0;PRINTER_INFO_2* pPrinterInfo= (PRINTER_INFO_2 *)malloc( 0 );/*此处应判断返回值*/::OpenPrinter("Samsung SCX-4200 Series",&hPrinter,NULL);if(!::GetPrinter(hPrinter,...
2018-11-14 17:25:30
3019
原创 VC++编译别人代码提示fatal error C1083: 无法打开包括文件:“afxcontrolbars.h”: No such file or directory
安装 VS2008SP1。
2018-11-14 15:11:13
886
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人