- 博客(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
原创 读写配置文件
读取配置文件: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" -> "Configuration Properties" -> "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.全部选中->右键->点击添加到压缩文件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包
2022-07-13
实现动态创建多个Tab页,页中动态创建多个子部件
2022-06-05
C++Qt实现拖拽按钮插入指定位置并重新排序
2022-03-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人