dword

用C/C++创建windows服务程序

依然范特西╮ 提交于 2019-11-28 22:14:41
转载: https://blog.csdn.net/chenyujing1234/article/details/8023816 一、演示过程 下方代码演示了如何使用vs(C/C++)创建windows服务程序 工程文件下载地址: http://download.csdn.net/download/sooth2008/2759082 使用visual studio创建一个win32控制台应用程序,编译后就OK了。 然后开始->运行->cmd->回车,输入 sc create test binPath= 编译成功后的可执行文件的路径回车就创建了一个服务. 注意这里的格式,“=”后面是必须空一格的,否则会出现错误。 然后开始->运行->services.msc->回车就可以看到刚刚创建的服务了。 描述: SC 是用于与服务控制管理器和服务进行通信的命令行程序。 用法: sc <server> [command] [service name] <option1> <option2>... 选项 <server> 的格式为 "\\ServerName" 键入 "sc [command]" 可以获得有关命令的进一步帮助 命令: query-----------查询服务的状态, 或枚举服务类型的状态。 queryex---------查询服务的扩展状态, 或枚举服务类型的状态。 start--

小鹤双拼win10一键恢复布局

佐手、 提交于 2019-11-28 22:11:31
起因 一直用的小鹤双拼布局,最近重装系统又要重新配置,麻烦 尝试 查找对应注册表设置,找到以下路径包含相应配置 HKEY_CURRENT_USER\Software\Microsoft\InputMethod\Settings\CHS 解决 在新系统直接导入即可 Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\Microsoft\InputMethod\Settings\CHS] "EnableExtraDomainType"=dword:00000001 "LangBar Force On"=dword:00000000 "Enable Double Pinyin"=dword:00000001 "UserDefinedDoublePinyinScheme0"="小鹤双拼*2*^*iuvdjhcwfg^xmlnpbksqszxkrltvyovt" "DoublePinyinScheme"=dword:0000000a 来源: https://www.cnblogs.com/wuyaSama/p/11429131.html

逆向破解之160个CrackMe —— 020

不羁岁月 提交于 2019-11-28 20:56:40
CrackMe —— 020 160 CrackMe 是比较适合新手学习逆向破解的CrackMe的一个集合一共160个待逆向破解的程序 CrackMe:它们都是一些公开给别人尝试破解的小程序,制作 crackme 的人可能是程序员,想测试一下自己的软件保护技术,也可能是一位 cracker,想挑战一下其它 cracker 的破解实力,也可能是一些正在学习破解的人,自己编一些小程序给自己破。 CrackMe简称CM。 程序下载地址: 点击我 来源 <-点击查看 编号 作者 保护方式 020 Brad Soblesky Name/Serial 工具 x32dbg peid scylla DelphiDecompiler 开始破解之旅 ON.1 首先使用PEID程序进行查壳,发现存在wwpack32压缩壳 我们使用x32dbg打开020号程序,程序停在了入口处 我们使用 ESP定律 来脱壳 我们F8一次,此时观察右边寄存器窗口 我们看见 ESP 已经变成了红色,右键点击“在内存窗口转到” 此时我们已经下好了断点,F9运行,停在了我们的OEP附近 F8一下,就来到了我们的OEP 在这里我们打开scylla,按照图中顺序我们一次进行 此时再用我们的PEID进行查壳,发现已经没有壳了 ON.2 爆破方式 我们使用 DelphiDecompiler程序打开020软件 我们在x32dbg中跳转到

duilib库分析2.第一篇UIManager

牧云@^-^@ 提交于 2019-11-28 20:41:11
DUiLib 源码分析 ——以UiLib 1.01版为分析目标 ---------------------------------------------------------------------------------- 分析约定: private o------- 私有的成员变量或方法 protect x------- 受保护的成员变量或方法 public +------- 公开的成员变量或方法 ---------------------------------------------------------------------------------- 本篇分析一下源文件 UIManager.h/UIManager.cpp CPaintManagerUI 成员变量 窗体句柄 o---m_hWndPaint 要CPaintManagerUI进行Direct绘图操作的窗体句柄 o---m_hwndTooltip 提示窗口句柄 o---m_hInstance 当前管理的Instance实例 o---m_hResourceInstance 当前管理的资源DLL Instance实例 o---m_pStrResourcePath 当前使用的资源路径 o---m_pStrResourceZip 当前使用的资源压缩包文件全称 ---------------------------

c++与js脚本交互,C++调用JS函数JS调用C++函数

泪湿孤枕 提交于 2019-11-28 20:32:50
一、javascript调用c++,方法有两种 方案1: 1.html编写 <html> <head> </head> <body> <h1> TEST </h1> <input type='button'name="xx3" value=调用c++函数 onclick="window.navigate('app:command&arg1=1&arg2=2')"> </body> <script language="javascript"> function TestFunc() { alert("TestFunc"); } </script> </html> 2.C++的CHtmlView类重写OnBeforeNavigate2函数 void CAddGoogleMap_CHtmlView::OnBeforeNavigate2(LPCTSTR lpszURL, DWORD nFlags, LPCTSTR lpszTargetFrameName, CByteArray& baPostedData, LPCTSTR lpszHeaders, BOOL* pbCancel) { // TODO: Add your specialized code here and/or call the base class CString strUrl = lpszURL; if(strUrl

通过PEB寻找函数地址

喜你入骨 提交于 2019-11-28 18:49:05
  通过PEB的Ldr参数(结构体定义为_PEB_LDR_DATA),遍历当前进程加载的模块信息链表,找到目标模块。   摘自 PEB LDR DATA : typedef struct _PEB_LDR_DATA { 0x00 ULONG Length; /* Size of structure, used by ntdll.dll as structure version ID */ 0x04 BOOLEAN Initialized; /* If set, loader data section for current process is initialized */ 0x08 PVOID SsHandle; 0x0c LIST_ENTRY InLoadOrderModuleList; /* Pointer to LDR_DATA_TABLE_ENTRY structure. Previous and next module in load order */ 0x14 LIST_ENTRY InMemoryOrderModuleList; /* Pointer to LDR_DATA_TABLE_ENTRY structure. Previous and next module in memory placement order */ 0x1c LIST_ENTRY

http改https步骤

不羁岁月 提交于 2019-11-28 17:24:15
所需材料: 1、域名1个。 2、虚拟机或者云 服务 器1台。 3、ssl证书1个。 前提准备: 1、 域名 最好要 备案 ,在国内使用比较方便。 2、 阿里云 的 ECS 。 3、ECS为Linux系统,安装的是AMH控制面板(如何安装amh控制面板: https://bbs.aliyun.com/read/143639.html ) 4、阿里云可以免费申请ssl证书。 1.要申请SSL证书 免费证书,只能使用一个域名,不支持主域名下的二级域名,请悉知。不过1个阿里云帐号可以申请20个免费证书,对于普通账户足够了。 在阿里云里申请免费Https证书SSL 在阿里云控制台:安全(云盾)->证书服务->购买证书里(地址: https://common-buy.aliyun.com/?spm=5176.2020520163.cas.1.zTLyhO&commodityCode=cas#/buy ) 选择免费的证书类型完成购买 免费购买完成后,在订单里不去信息,输入需要使用Https服务的详细子域名,填写个人信息 完成信息后,接下来就是等待审批结果了,审批通过后,下载, 根据自己服务器的实际情况 ,选择相应类型,完成安装, 注:默认的安装好的 Https 证书没有开启 TSL1.1 1.2的支持 解决方法一: 开发环境,项目---》勾选不校验即可 解决办法二: 在

写壳2

≡放荡痞女 提交于 2019-11-28 16:40:32
壳2 创建MFC-基于对话框项目。 绘制界面 图片插入,添加工具-picture control-属性 属性-设置 一键加壳按钮实现 void CMFCShellDlg::OnBnClickedButton1(){ //设置过滤器 TCHAR szFilter[] = _T("文本文件(*.txt)|*.txt|所有文件(*.*)|*.*||"); // 构造打开文件对话框 CFileDialog fileDlg(TRUE, _T("txt"), NULL, 0, szFilter, this); CString strFilePath, strText;​ // 显示打开文件对话框 if (IDOK == fileDlg.DoModal()) { strFilePath = fileDlg.GetPathName(); //获取文件路径 CMyPack MyPack;​ // 读取一个 PE 文件 USES_CONVERSION; MyPack.LoadFile(W2A(strFilePath.GetBuffer()));​ // 读取 stub 文件 MyPack.LoadStub("my_stub.dll");​ // 将 stub 中的 .text 拷贝到 pe 文件的 .mypack MyPack.CopySection(".mypack", ".text");​ //

BUUCTF-RE

ぐ巨炮叔叔 提交于 2019-11-28 16:27:34
crackMe 首先依据你的用户名创建一个xor表,然后用这个表和密码经过异或计算,得到一个长度为8的checksum( unsigned char checksum[8] ),最后检查checksum是否满足一些条件。满足则通过注册,不满足不通过。checksum进入check2进行验证,最终得到 check_num == 43924 则成功。 分析check2: _DWORD *__usercall check2@<eax>(int a1@<ebx>, _BYTE *key, _DWORD *a3) { int v3; // ST28_4 int v4; // ecx int v6; // edx int v8; // ST20_4 int v9; // eax int v10; // edi int v11; // ST1C_4 int v12; // edx char v13; // di int v14; // ST18_4 int v15; // eax int v16; // ST14_4 int v17; // edx char v18; // al int v19; // ST10_4 int v20; // ecx int v23; // ST0C_4 int v24; // eax _DWORD *result; // eax int v26; // edx

Why in C++ do we use DWORD rather than unsigned int? [duplicate]

纵饮孤独 提交于 2019-11-28 15:50:32
This question already has an answer here: Why does the Win32-API have so many custom types? 4 answers I'm not afraid to admit that I'm somewhat of a C++ newbie, so this might seem like a silly question but.... I see DWORD used all over the place in code examples. When I look up what a DWORD truly means, its apparently just an unsigned int (0 to 4,294,967,295). So my question then is, why do we have DWORD? What does it give us that the integral type 'unsigned int' does not? Does it have something to do with portability and machine differences? GManNickG DWORD is not a C++ type, it's defined in