• Windows编程----线程管理

    系统中,进程主要有两部分组成:进程内核对象和进程地址空间。操作系统通过进程内核对象来管理进程,进程地址空间用于维护进程所需的资源:如代码、全局变量、资源文件等。那么线程也是有两部分组成:线程内核对象和线程堆栈。操作系统通过线程内核对象对线程进行管理,线程堆栈用于维护线程执行代码时需要的所有的函数参数和局部变量。线程的开销远小于进程,所以在并发执行多个任务的时候,应该尽可能使用多线程 解决问题,而不

    时间:2025-03-16 17:05 阅读:117
  • Windows编程----内核对象竟然如此简单?

    什么是内核对象内核对象本质上就是内存中的一块内存 ,这块内存由操作系统进行管理和分配,任何应用程序都无法直接操作这块内存区域。至于内核对象的作用,我们暂且不说,这里只需要直到它是内存中的一块内存。在内存中,内核对象的存储类似下图,进程中的每个内核对象都有自己的地址,并且内核对象有一个固定的数据结构。每个内核对象的结构体如下:typedef struct _OBJECT_HEADER { LO

    时间:2025-03-12 23:36 阅读:173
  • Windows编程----结束进程

    进程有启动就有终止,通过CreateProcess函数可以启动一个新的子进程,但是如何终结子进程呢?主要有四种方法:通过主线程的入口函数(main函数、WinMain函数)的return关键字终止进程一个应用程序只有一个入口函数,对于控制台来说是main函数,对于GUI程序来说这个入口函数一般是WinMain。入口函数通过return关键字返回或者程序自上而下执行完成之后,进程可以自动终止,进程相

    时间:2025-03-11 00:02 阅读:170
  • Windows编程----CreateProcess函数

    CreateProcess函数原型CreateProcess 函数用于创建一个新进程(子进程)及其主线程,其函数原型如下:BOOL CreateProcess( LPCWSTR lpApplicationName,//指向可执行模块名称的指针 LPWSTR lpCommandLine,//指向命令行字符串的指针。 LPSECURITY

    时间:2025-03-09 20:46 阅读:144
  • Windows编程----进程的当前目录

    进程的当前目录Windows  Api中有大量的函数在调用的时候,需要传递路径。比如创建文件,创建目录,删除目录,删除文件等等。拿创建文件的CreateFile函数做比喻,如果我们要创建的文件路径不是全路径,那么windows在创建的时候,首先会获取到进程的当前目录,然后用这个目录拼接成一个全路径创建文件。一般情况下通过双击启动的exe进程,进程的当前目录就是exe文件所在的目

    时间:2025-03-08 23:07 阅读:109
  • Windows编程----进程:环境变量

    什么是系统环境变量每台计算机针对当前用户和系统中所有用户分别提供了两个环境变量设置,通过计算机属性>环境变量的界面,我们可以查看当前这台计算机上的所有环境变量,这些环境变量都是key-value键值对。具体如下:上面看到的环境变量其实是存储在注册表中的,系统环境变量存储在计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Sessi

    时间:2025-03-07 22:48 阅读:140
  • Windows编程----进程:命令行参数

    什么是进程的命令行参数每个进程在启动(双击exe启动、cmd命令行启动或者由其他程序通过CreateProcess启动)的时候,都会有一个命令行参数给它。命令行的参数以空格区分。这个命令行总是不为空,因为命令行参数的第第一参数是exe程序的启动路径。但是一般情况下,我们会忽略这个参数。一般情况下,我们忽略第一个参数,将后面的内容作为命令行参数对待。如何获取命令参数一方法一:通过Windows AP

    时间:2025-02-09 14:32 阅读:184
  • Windows如何获取系统语言

    开发中需要适配多语言,根据系统语言选择App的语言,所以需要获取当前Window系统的用户展示语言。打开Window系统主界面,按照以下途中顺序,打开语言设置界面。我们可以看到Window显示语言为中文。今天我们就来看看这里的语言如何获取。我一直尝试通过一个WIN32的API直接获取到这个Window显示语言,但遗憾的是一直没有找到直接获取Window显示语言的API。因为语言API和他的区域是绑

    时间:2024-09-18 19:43 阅读:712
  • Window下如何部署Redis并且设置为Windows服务自启动。

    Redis作为一款优秀的缓存服务器,目前官方只提供了Linux版本。其部分分支的Windows版本在github有维护。如果想在Windows上部署Redis,有两种方案。方案一:通过WSL的形式运行Redis程序,主要是通过Window的linux子系统来运行。方案二:运行Redis的Windows版本。GitHub地址为:https://github.com/tporadowski/redis

    时间:2024-09-03 22:57 阅读:837
  • .NET Core如何部署到Window服务,并且使用IIS反向代理?

    IIS服务器需要安装两个插件1、URL Rewrite插件安装该插件主要功能是用于Url重写,插件地址:https://www.iis.net/downloads/microsoft/url-rewrite ,选择中文简体的64位版本下载,下载之后,双击一步步安装。安装完插件之后,重启IIS服务器软件,点击服务器,可以看到URL重写的模块。当看到这个模块的时候,说明我们的插件已经安装成功了!2、

    时间:2024-09-02 22:24 阅读:573
    IIS 反向代理
  • RGB和十六进制之间的对应关系。

    在开发中,我们会遇到 类似 RGB(126,210,130) 这样的颜色表示法。也遇到过类似#A65CDA这样的十六进制颜色表示法。RGB转换为十六进制RGB(126,210,130)中,有三组数据,每组数据分别代表R、G、B三种颜色。每种颜色的取值为0-255(十六进制0X00-0XFF)。每组数据为1个字节,也就是8个二进制位。.所以只需要把126、210、126分别转换为二进制即可。126对

    时间:2024-08-13 21:10 阅读:620
    RGB 二进制
  • win32 api记录

    InvalidateRect(HWND hWnd,RECT *,BOOL bErase):使更新区域变为无效。SetBkColor:设置设备上下文(HDC)的背景颜色。ExtTextOut:绘制文本,也可以使用SetBkColor设置的背景色填充背景。GetClientRect:获取某个窗体的客户区域坐标,不包括标题栏。GetClientRect(_In_ HWND hWnd,_Out_ LPRE

    时间:2024-08-11 14:10 阅读:623
    windows api win gui
  • win32如何给一个窗体画一个背景颜色。

    在win32中,要想给一个windows窗体设置背景颜色,有多种方式,我们来介绍两种比较常用的方式。方式一:注册窗体的时候,设置背景画刷。//定义窗口类WNDCLASS wndClass; WNDCLASSEX a;//窗口类样式wndClass.style = CS_HREDRAW | CS_VREDRAW | CS_DBLCLKS;//窗口过程函数wndClass.lpfnWndProc =

    时间:2024-08-05 21:21 阅读:984
    win32 gdi+ windows开发
  • Win32如何注册系统热键

    微信电脑版的Alt+A截图,相比大家一定都用过。只要 微信在电脑上没有关闭,即使微信窗口被缩放到最小或者最小化到托盘状态,都能通过这个快捷键使用截图功能,那这样的功能是如何实现的呢。这个快捷键实际上输入Windows系统中的热键注册。我们可以使用RegisterHotKey注册一个系统级别的热键。当用户按下热键的时候,Windows会将WM_HOTKEY消息发送给线程所在的窗口过程函数。 只要当前

    时间:2024-06-25 22:48 阅读:758
    windows 系统热键
  • Win32 GUI入门代码参考

    // TestWin.cpp : 定义应用程序的入口点。//#define _CRT_SECURE_NO_WARNINGS#include <windows.h>#include <WinUser.h>//#include <stdio.h>#include "TestWin.h"//#include "fileapi.h"//#include <str

    时间:2024-06-25 22:48 阅读:597
    win32