自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

黑兔子JH的博客

黑兔子JH的博客

  • 博客(39)
  • 资源 (6)
  • 收藏
  • 关注

原创 CEF | CEF浏览器客户端能扩展:实现与JS交互

之前的文章已经基本实现了浏览器的常用功能,如网页的加载、跳转、前进、后退、刷新、控制台窗口、设置cookie等。除了这些基本功能,我们自定义浏览器客户端时,有时是需要与自己的网页进行交互的,比如我们的客户端要调用网页的某个方法、或者网页需要调用客户端程序的某个方法。这时我们就需要实现浏览器客户端与js的交互功能。这里依然是在CefSimple示例的基础上进行的拓展,可以结合之前的文章一起看。...

2022-08-09 15:08:41 1110 1

原创 CEF | CEF浏览器客户端能扩展:实现下载列表

之前的文章已经实现了浏览器的一些扩展功能,如网页的前进、后退、浏览器的刷新、通过组合快捷键调出控制台窗口、设置cookie等。这里实现了拓展浏览器的下载功能,实现一个可视化的下载列表,可以控制下载、暂停、删除、打开文件位置、打开文件等功能。...

2022-08-08 15:11:38 745

原创 Qt Creator创建CefBrowserDemo

这里将项目名称命名为CefBrowserDemo。这里实现了在Qt Creator创建一个项目,移植cefsimple到项目中。

2022-07-18 13:40:22 450

原创 CEF | 浏览器客户端能扩展:实现前进、后退、刷新、调用控制台、设置cookie

想要完成一个浏览器客户端的基本功能,除了可以加载出网页页面,实现页面跳转意外,还需要很多其他的功能。例如网页的前进、后退、览器的刷新、调出控制台窗口、设置cookie等。后续还会尝试实现页面调用打印时,弹出自定义的打印窗口、支持视频播放等功能。我们的程序是基于cef.sln中的cefsimple项目现有的功能基础上进行实现的。所以读者想进行测试,可以直接将功能代码注入到cef.sln中的cefsimple项目中进行测试。......

2022-07-18 13:35:53 3621

原创 CEF | CEF浏览器客户端功能详解

VS2017+Qt5.14.2+cef89 实现基于CEF框架的客户端。成功移植运行了cefsimple项目。如果不满足于cefsimple现有的功能,想开发更多的功能,比如实现浏览器的前进、后退、刷新、跳转页面时不创建新的窗口、设置cookie、调用控制台等功能。就需要深挖一下cef的控制类有哪些,支持的功能接口有哪些……......

2022-07-18 13:31:36 1535

原创 VS2017+Qt5.14.2编译cef

1.VS2017+Qt5.14.2+cef_binary_89.0.18+gb36241d+chromium-89.0.4389.114_windows32编译包。2.注意环境:VS2017,Qt5.14.2。3.cef包的版本为89,32位的。4.适合实现客户端浏览器项目。5.Qt+cef。

2022-07-13 14:34:03 477

原创 Qt实现动态创建多个Tab按钮,动态创建多个Page页,动态管理Item

动态创建Tab按钮和Page页,点击某一个Tab按钮,就会显示对应的Page,Page中动态创建了不同个数的Item。

2022-06-05 16:46:55 2352

原创 C++Qt实现拖拽按钮插入指定位置并重新排序

实现类似windows桌面拖拽图标可以移动位置,并且点击可以相应点击消息。

2022-03-16 08:57:27 1671 1

原创 读写配置文件

读取配置文件:1.定义文件路径:CString strFilePath=_T(".\\FILES\\config.ini");2.判断文件是否存在:if (!PathFileExists(strFilePath)){return;}3.读取数据:int nkeyValue= GetPrivateProfileInt(_T("AppName"),_T("KeyName"),TRUE,strFilePath);//(AppName, KeyName, 默认值, 文件名)Cstri..

2021-11-25 08:56:56 360

原创 C++获取第二个屏幕坐标信息

1. 定义全局变量:CRect rect[2] = {(0,0,0,0),(0,0,0,0)}; //分别存放两个屏幕的坐标2. 定义全局函数:BOOL CALLBACK Monitorenumproc( HMONITOR hMonitor,HDC hdcMonitor, LPRECT lprcMonitor, LPARAM dwData){static BOOL first = FALSE; //重复检测标志int nScreenNu...

2021-11-22 10:15:42 1003

原创 双缓存的使用

1、定义内存DC: CDC memDC;2、定义位图资源: CBitmap bitmap;3、创建内存DC: memDC.CreateCompatibleDC(&dc);4、创建位图资源: bitmap.CreateCompatibleBitmap(&dc, rect.Width(), rect.Height());5、选择位图资源: CBitmap *pOldBitmap = memDC.SelectObject(&bitmap);6、双缓存输出到屏幕: dc.

2021-11-19 09:51:44 880

原创 C++ GDI+绘制界面

GDI:(GraphicsDeviceInterfase)图形设备接口,是一个应用程序与输出设备之间的中介。运行环境:Gdiplus.dll 包含在Windows系统中。【在system32中包含Gdiplus.dll文件】。1.包含头文件:#include <Gdiplus.h>2.链接库文件:属性->配置->连接器->输入->附加依赖项->Gdiplus.lib;3.定义成员变量:ULONG_PTR m_gdiplusToken;4...

2021-11-17 14:25:06 2858

原创 算法分析相关知识

无论在设计还是在应用一种算法时,我们必须了解这种算法的性能如何。我们通常最关心的是算法的运行速度,但有些时候,我们也要关心算法对内存空间的要求。最坏情况分析法:通常用来评判算法性能的三种情况是:最佳情况、平均情况和最坏情况。但是通常情况下,我们更关心算法在最坏情况下的性能如何。原因如下:许多算法在最坏情况下执行会消耗相当长的时间。 考虑算法在最佳情况下的性能没有太多的意义,因为很多算法在最佳情况下的表现都相同。 分析算法平均情况下的性能往往不是那么容易。甚至很难去界定哪种情况叫做“平均情况”

2021-11-14 00:03:43 267

原创 MFC--名词缩写解释

API : Application Programming Interface。系统开放出来,给程序员使用的接口,就是API。SDK : Software Development Kit。原指软件开发工具包。MFC: Microsoft Foundation Classes。这是一个建立在Windows API之上的C++类库(C++ Class Library)DLL : Dynamic Link Library。动态链接库,是一个包含可由多个程序,同时使用的代码和数据的库。GUI : G

2021-11-12 22:07:09 1153

原创 C++线程

一、传统方式1、头文件:#include <winsock.h>2、创建线程用参数:s_ThreadInfo m_pThreadInfo;typedef struct {BOOL m_bExit;//标记线程是否退出 LPVOID m_pThis;//主线程指针HANDLE threadHandle;//线程句柄DWORD threadID;//线程ID}s_ThreadInfo;//自定义线程消...

2021-11-11 11:54:39 2682

原创 套接字(socket通信)

1.头文件:#include <stdio.h>#include <winsock2.h>#pragma comment(lib, "ws2_32.lib")//加载 ws2_32.dll2.初始化dll:WSADATA wsaData;WORD sockVersion=MAKEWORD(2,2); //版本号2.2if(WSAStartup(sockVersion,&wsaData)){ AfxMessageBox(_T("...

2021-06-29 11:41:30 218

原创 临界区

1、定义全局临界区结构对象:CRITICAL_SECTION g_CriticalSectionFile;2、初始化临界区:InitializeCriticalSection(&g_CriticalSectionFile);3、进入临界区:EnterCriticalSection(&g_CriticalSectionFile);4、离开临界区:LeaveCriticalSection(&g_CriticalSectionFile);5、删除临界区:DeleteCr..

2020-10-16 15:47:48 227

原创 c++ 系统托盘

//设置系统托盘 1.定义成员变量: NOTIFYICONDATA NotifyIcon;//系统托盘类 2.创建系统托盘 NotifyIcon.cbSize = sizeof(NOTIFYICONDATA); NotifyIcon.hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME); Not...

2019-11-13 10:16:23 979

原创 c++读取注册表内容

CString strExePath=_T("");HKEY hKEY;//定义有关的hKEY,在查询结束时要关闭LPCTSTR data_Set= _T("Software\\***\\***");//打开与路径data_Set相关的hKEY(精确到表所在文件夹路径)//访问注册表,hKEY则保存此函数所打开的键的句柄if (ERROR_SUCCESS == ::Reg...

2019-11-13 09:51:25 449

转载 MFC Listbox

通过ID操作对象CListBox(列表框)控件CListBox类常用成员CListBox插入数据CListBox删除数据CListBox运用示例 一、CListBox类常用成员 CListBox::ResetContent//清空组合框内容void ResetContent( );CListBox::AddString//添加lpszString 至组合框尾部int A...

2019-01-22 15:49:30 907

转载 在vs中添加lib库的方法

注意:1、每种方法也要复制相应的DLL文件到相应目录,或者设定DLL目录的位置,具体方法为:"Properties" -&gt; "Configuration Properties" -&gt; "Debugging",在"Working Directory"设置dll的路径就可以了2、无论是设置DLL目录,或者是Lib目录,亦或是头文件的目录,都有release版本和debug版本的区分...

2019-01-18 08:31:29 237

原创 捕获powershell报错信息

官网介绍的路径:https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_try_catch_finally?view=powershell-61.Try, Catch, and Finally        1)捕获到错误,并打印“Error:配置域失败”try{...

2018-07-30 16:56:24 786

原创 powershell脚本实现计算机加入域

Function Set-Domain{ param ( [Parameter(Mandatory = $true, Position = 0)] [string] $DNS, [Parameter(Mandatory = $true, Position = 1)] [string] $Domain, [Parameter(...

2018-07-23 10:30:22 6145

原创 powershell脚本设置电脑音量

Function Set-Volume{    param    (        [Parameter(Mandatory = $true, Position = 0)] [int] $SndVol    )        #设置音量    $TypeDefinition = @"    using System;     using System.Runtime.Inter...

2018-07-23 10:30:14 2023 1

原创 powershell脚本设置电脑分辨率

Function Set-Resolution{ param ( [Parameter(Mandatory = $true, Position = 0)] [int] $Width, [Parameter(Mandatory = $true, Position = 1)] [int] $Height ) #设置分辨率...

2018-07-23 10:29:59 3974

原创 powershell脚本设置网络

Function Set-Network{    param    (        [Parameter(Mandatory = $true, Position = 0)] [string] $IPAddress,        [Parameter(Mandatory = $true, Position = 1)] [string] $NetMask,        [Parame...

2018-07-19 16:36:26 1413

原创 powershell脚本设置计算机名

Function Set-ComputerName{ param ( [Parameter(Mandatory = $true, Position = 0)] [string] $ComputerName ) $computer=Get-WMIObject Win32_ComputerSystem #设置计算机名 $...

2018-07-19 16:35:21 2576

原创 powershell执行脚本中的函数找不到函数

import-module C:\Windows\System32\WindowsPowerShell\v1.0\Functions.ps1需要先执行上面这句话,再调用脚本中的函数

2018-07-19 16:32:18 1440

原创 powershell脚本获取电脑分辨率

add-type -AssemblyName System.Windows.Forms$CWidth = (([System.Windows.Forms.Screen]::PrimaryScreen).Bounds).Width$CHeight = (([System.Windows.Forms.Screen]::PrimaryScreen).Bounds).Height

2018-07-19 16:29:01 2118

原创 powershell脚本获取DNS

$wmi = Get-WmiObject win32_networkadapterconfiguration -filter "ipenabled = 'true'"$CDNS = $wmi.DNSServerSearchOrder

2018-07-19 16:28:07 1514

原创 powershell脚本获取当前网关

$wmi = Get-WmiObject win32_networkadapterconfiguration -filter "ipenabled = 'true'"$CGate = $wmi.DefaultIPGateway    

2018-07-19 16:26:42 1582

原创 powershell脚本获取当前IPv4地址

$wmi = Get-WmiObject win32_networkadapterconfiguration -filter "ipenabled = 'true'"$CIP = $wmi.IPAddress -notlike "*:*"

2018-07-19 16:25:39 1856

原创 powershell脚本获取当前计算机名

$computer=Get-WMIObject Win32_ComputerSystem $Cname = $computer.name

2018-07-19 16:24:13 4261

原创 powershell脚本获取电脑当前音量值

$TypeDefinition = @"    using System;     using System.Runtime.InteropServices;    namespace Sound    {        [Guid("5CDF2C82-841E-4546-9722-0CF74078229A"), InterfaceType(ComInterfaceType.Inter...

2018-07-19 16:21:56 1383

原创 改变powershell执行权限

1.在脚本文件中:powershell -noprofile Set-ExecutionPolicy Unrestricted2.在powershell窗口中:1)获取当前权限:2)设置权限:

2018-07-19 16:19:23 6426

原创 怎么将多个安装程序生成一个安装程序

使用rar压缩文件1.新建文件夹,命名为: ***-setup2.将.exe文件和.msi文件等需要的文件以及.ico图标文件放入上面建好的文件夹内3.全部选中-&gt;右键-&gt;点击添加到压缩文件4.在常规中: 选中 创建自解压格式压缩文件(则压缩文件名自动改成.exe类型) 压缩方式改为 存储(网上说这样比较好)5.在高级中: 点击自解压选项 在常规中: 输入解压路径(点击安装后...

2018-04-19 10:39:42 4050 2

原创 libcurl的使用

参考https://curl.haxx.se/libcurl/c/curl_easy_setopt.html我个人认为:创建,初始化,设置url地址,设置是否开启详解,设置标题,设置重定向,设置超时时间,验证对方证书,验证证书名称,自定义HTTP标头,指定要发送的数据,请求HTTP POST,设置回调,给写回调传递指针,执行请求,释放。创建curlcurl_glob

2018-03-20 16:37:54 276

原创 c++界面窗口与按钮设置

1.获取屏幕宽度:HDC hdc = ::GetDC(HWND(NULL));int x = ::GetDeviceCaps(hdc, HORZRES);//获得屏幕宽度2.隐藏任务栏:ModifyStyleEx(WS_EX_APPWINDOW, WS_EX_TOOLWINDOW, 1);//任务栏隐藏3.窗口大小和位置:CDialogEx::SetWindowPos(&wndTopMo

2018-01-12 17:19:47 9605 2

原创 c++实现按钮HOVER效果

1.在类中定义成员变量://鼠标事件跟踪TRACKMOUSEEVENT * TME;BOOL m_IsCanTrack;2.构造函数重初始化:m_IsCanTrack = TRUE;TME = new TRACKMOUSEEVENT;3.添加消息函数:afx_msg void OnMouseMove(UINT nFlags, CPoint point);

2018-01-12 17:10:47 1427

cef_binary_89.0.18+gb36241d+chromium-89.0.4389.114_windows32包

1.VS2017+Qt5.14.2+cef_binary_89.0.18+gb36241d+chromium-89.0.4389.114_windows32编译包。 2.已经用CMake生成.sln文件的包,可以直接打开.sln文件运行。 3.注意环境:VS2017,Qt5.14.2。 4.cef包的版本为89,32位的。 5.如果不会编译的,或者有需要的小伙伴可以直接下载使用。 6.适合实现客户端浏览器项目。 7.Qt+cef。

2022-07-13

实现动态创建多个Tab页,页中动态创建多个子部件

本资源为C++,Qt。 使用Qt creator打开项目。 Qt 版本5.5.1。 实现了动态创建Tab按钮,和动态创建Tab页,并在Page中动态创建Item的功能。 Tab按钮为自定义实现,通过管理布局实现Tab按钮的位置。 Page为stackedWidget中的Page,通过动态创建QWidget的方式,将page添加进去。 Page中有一个listWidget,用来管理Item的创建和布局。 对于想学习动态布局,动态创建stackedWidget的page页的同学非常有帮助。

2022-06-05

C++Qt实现拖拽按钮插入指定位置并重新排序

1.效果类似于Windows桌面应用可以通过鼠标拖拽插入指定位置,并自动排序的效果。 2.开发环境Qt Creator,版本5.5.1。 3.可以实现响应点击信号。 4.有插入位置跟踪标线标志。 5.有鼠标选中拖拽过程中的截图效果。 6.通过MousePressed、MouseMoved、MouseReleased实现。 7.目标人群:想学习使用MousePressed、MouseMoved、MouseReleased实现拖拽功能、QListWidget深入功能的学者。

2022-03-15

c++实现的远程开关机

c++, vs2020, 实现的局域网下的 远程开关机。 可以远程开机,远程关机。 需要用到的可以参考一下。

2020-11-11

mfc读excel表格某行某列的内容

vs2010,mfc,用注册表类读取excel表格中某行某列的内容。

2019-08-22

mfc 画一个可以拖动的圆和矩形

mfc 单文档类型 点击画圆按钮可以画一个圆,点击拖动按钮可以拖动图层。

2019-04-25

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除