自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 C/C++指针

指针是用来存储内存地址的数据类型,那么内存地址是什么?计算机软件在运行过程中使用内存进行数据存储,操作系统开辟的每一块内存区域都有相应的内存地址,每块内存区域又可以存储不同的数据,计算机通过内存地址来读取和写入内存区域的数据。当然开辟内存区域存储的内容为何类型,是整数还是字符串需要在定义时明确。指针与普通的常量变量一样,使用前需要先定义,意思是让操作系统开辟内存区域。指针定义后必须立即初始化,否则编译将会报错。初始化可以赋值某个内存地址,当不确定目标类型时可以初始化为空指针。

2024-01-15 10:29:10 1023

原创 Python图形化编程开源项目拼码狮Pinmashi

PinMaShi采用electron开发,图形化拖拽式编程有效降低编程难度,对Python编程的初学者非常友好;积木式编程加快Python程序的开发,代码使用积木封装加快编程速度;打通硬件间通信实现计算机和智能设备协同编程,一键在本地机器和远程机器调试运行,是Python程序快速开发的利器。PinMaShi采用模块化构建项目工程,通过模块创建工程能够应用在多种场景,例如windows/linux/macos程序开发,爬虫项目、物联网项目,乐高EV3机器人的远程开发调试等。

2023-05-10 15:25:09 1068

原创 Python图形界面开发——系统资源监视器System-Monitor

Python图形界面程序怎么开发呢?很多人推荐python自带的tkinter自带库,还有pyqt这个这种拖拽式界面开发方案,但是他们开发界面比较难定制界面样式。现在web前端这么多框架用来开发python的图形界面其实不是很好?

2023-05-06 07:36:58 1555 2

原创 C#控制台程序执行CMD命令

c#启动cmd程序并执行命令,读取cmd输出结果输出到c#控制台中。

2023-04-25 21:13:54 1217

原创 C#添加Windows环境变量

某些程序在安装时需要添加安装目录路径到PATH环境变量中才能使用,比如Python、Node等程序,C#要使用这些程序就需要在程序中安装和配置这些程序,首先就是通过C#代码来添加PATH.

2023-04-25 21:12:09 1866

原创 Electron开发生产环境的主进程渲染进程相对路径

Electron因为是集成nodejs,Electron应用在开发时和打包后的相对路径是不同的,在开发时JS文件在项目目录中,Electron打包后项目存放在resources\app目录中,如果程序使用了相对路径这是需要注意的问题。:不管是开发环境还是生产环境获取到的都在js文件所在目录。:不管是开发环境还是生产环境获取到的都在js文件绝对路径。:开发环境是项目目录,生产环境是exe可执行文件目录。:开发环境是项目目录,生产环境是exe可执行文件目录。

2023-03-17 12:14:31 1748

原创 C++多文件编程和cmake构建编译

C++多文件编程是项目工程化的模式,把多个功能拆分到独立的文件再在主入口文件中引用。在编写简短的程序时,通常一个源文件就够用了,所有的方法、函数、类都在一个文件中实现,优点是编译方便只需要g++编译器而不用额外的构建工具,但是当项目工程越来越大时,拆分源文件到独立文件进行开发,这样让程序源码结构更加清晰维护更加方便更利于团队协作。

2023-03-17 12:05:21 1591

原创 Windows没有gpedit.msc组策略管理器怎么解决

因为升级到Windows10 22H2家庭版任务栏增加了“资讯和兴趣”,但是这个东西会导致任务栏频繁卡死,在任务栏没卡死前鼠标右键关闭“资讯和兴趣”就可以解决问题,但是如果要让他永久禁止使用还是得用gpedit.msc策略组管理器来操作。Windows10家庭版默认没有组策略管理器,需要自行安装。文件,鼠标右键”以管理员权限运行“,之后将会自动下载相关程序,安装结束之后WIN+R运行gpedit.msc就能进入组策略管理器了。

2023-01-21 00:18:12 590

原创 Electron使用preload预加载及安全策略

使用 Electron 很重要的一点是要理解 Electron 不是一个 Web 浏览器。它允许您使用熟悉的 Web 技术构建功能丰富的桌面应用程序,但是您的代码具有更强大的功能。JavaScript 可以访问文件系统,用户 shell 等。这允许您构建更高质量的本机应用程序,但是内在的安全风险会随着授予您的代码的额外权力而增加。

2022-10-27 13:41:48 8887

原创 JavaScript异步同步和EvenLoop单线程机制

JavaScript 语言单线程执行,因为 JavaScript 设计的最初目的是更好地操作网页,采用单线程执行避免多线程互斥争夺资源,单线程执行不需要考虑多线程并行处理,让代码更为简单,程序开发速度更快。

2022-10-27 13:05:57 420

原创 Python全局变量跨模块变量定义和使用

在同一个py脚本中,定义在所有函数之外的变量可以理解为全局变量,因为所有函数可以直接访问函数外的变量(但不能访问其他函数的私有变量),这里涉及到变量的作用域,一般分为函数作用域和全局作用域,函数作用域包含在全局作用域中,子作用域可以访问全局作用域的变量,全局作用域不能访问子作用域的变量。

2022-10-26 15:07:52 4430

原创 Conda在各操作系统平台安装配置和使用Python环境(保姆级教程)

Conda是python程序运行环境的管理工具。Python是目前最流行的计算机语言,由于python是胶水语言,功能上的实现依赖第三方包。有的python脚本需要特定版本的依赖包运行,如果直接在电脑上安装该依赖包,可能影响到其他python脚本运行,因此python提出了虚拟环境和公共环境的概念,使用虚拟环境来单独为此python脚本安装依赖包。虚拟环境解决了依赖包安装的问题,那么如果脚本对python解释器版本有要求怎么办呢,conda就是解决为python解释器创建隔离环境的工具。

2022-10-26 14:51:37 9159

原创 Electron调试主进程和渲染进程

主进程因为运行在NodeJS环境中,本身没有显示界面可以直观调试程序,不过按照官方的文档说明,Electron主进程可以利用VSCode进行调试。调试前首先得先创建electron应用(本文省略)。渲染进程因为运行在chromium内核中,因此可以使用chromium开发者工具进行调试,具体在主进程中设置开启开发者工具。Main进程运行过程中的输出将会在VSCode调试控制台看到结果。VSCode打开Electron应用目录,点击左侧“运行和调试”工具,选择。在electron应用根目录创建。

2022-09-22 23:05:56 1593

原创 VSCode头部注释文档函数注释文档

头部注释是对程序和函数的文档注释说明,用于标注程序的基本信息,函数的功能和参数说明等,完善的头部文档标注更利于程序阅读。

2022-09-22 22:47:31 421

原创 Nodejs调用python的几种方案

nodejs可以使用JavaScript进行后端应用开发,同时使用electron可以开发桌面应用,可以说是相当强大。如果要在nodejs中读取本地文件则可以使用fs模块进行,ffi模块可以调用C开发的动态库,也可以实现更多的本地化操作,但是C开发动态库难度比较大成本比较高,这时候可以考虑使用python代替。python可以说是相当简单,它的库非常丰富,几乎可以满足你能想到的需求,因此python代替C库开发是不错的选择,下面介绍几种nodejs调用python的方法。

2022-09-12 16:40:40 13255 7

原创 C++嵌入Python解释器

Python作为可以扩展的编程语言,提供了完整的Python/C API,用于扩展Python程序的功能。一方面是使用API编写Python程序模块在Python脚本中使用,另一方面是在C/C++中嵌入Python,从而实现C/C++调用Python程序。C++嵌入Python解释器就是在c++程序中创建一个python解释器,并通过api让解释器去执行python代码。使用嵌入解释器有配置解释器、初始化、执行语句、加载模块、调用函数等过程,这些过程全部都是python提供的API操作。

2022-09-12 12:05:31 2641 1

原创 C++string与wstring类型转换

在c++开发时有的库函数必须传递wstring宽字符串作为参数,在代码中通过L"wstring"定义宽字符串传递参数这没什么难度,问题是实际过程中需要接收输入string数据,这时候就需要将string转换为wstring。

2022-09-12 10:59:52 6962 1

原创 github新建仓库首次提交代码error: src refspec xxx does not match any error: failed to push some refs to xxx错误解决

github新建仓库首次提交代码error: src refspec xxx does not match any error: failed to push some refs to xxx错误解决

2022-09-09 12:35:09 2629

原创 Python使用Cython+MinGW编译Pyd动态链接库

Python是解释型编程语言,代码可以不经过编译直接被解释器执行,如果直接开源发布py程序,对于某些不应公开的源码来说无疑是不可取的。那么如何安全地发布py程序而又不被反编译呢,经过对比pyd是最合适的发布方式。pyd是python源码经过Cython转换后再编译而来的Windows系统下Python可用的动态链接库,与dll动态链接库文件类似,区别在于pyd库可以被python直接引用,Linux系统下编译结果为so动态链接库。...

2022-08-31 11:17:20 3358 2

原创 VMware安装macOS High Sierra 10.13苹果系统并设置共享文件夹详细教程(图文)

VMware默认不能创建macos系统的虚拟机,但是其本身是支持amcos系统运行的,通过特殊手段可以解除虚拟机的限制。程序映像在VMware安装目录内,VMware默认是没有darwin.iso,这是unlock解锁后增加的映像。共享文件夹,指定Windows下的文件夹,用于Windows系统与虚拟机系统的文件共享。重启系统后,桌面出现了VMware tools映像,双击安装。

2022-08-23 12:15:00 4172

原创 VMware虚拟机安装ubuntu系统并设置共享文件夹详细教程(图文)

VMware虚拟机建议安装VMware15Pro或者16Pro(VMware14Pro在Windows10操作系统下运行无法启动虚拟机)。VMware Tools是VMware虚拟机提供的增强工具,以便能够实现主机和虚拟机之间的文件共享和直接拖拽等功能。

2022-08-22 00:57:10 8427 1

原创 Python使用Pyinstaller打包为exe文件

如果python脚本使用了第三方依赖包,让用户自己安装依赖包显然是不实际的;另外python一般使用虚拟环境隔离,脚本运行进入虚拟环境需要使用命令行,这对普通用户来说有难度。打包为exe文件是为了解决以上问题,exe可以直接在windows系统执行。打包需要包含多个目录,可以在执行打包时生成的“文件名.spec”文件中的pathex添加多个目录,用英文逗号隔开,然后重新打包这个.spec文件。cmd中进度python脚本所在目录,然后使用命令进行打包。-F:表示打包为exe文件。-p:指定打包包含的目录。

2022-08-21 10:15:00 313

原创 Python使用Flask模块创建本地服务器

Flask是一个使用 Python 编写的轻量级 Web 应用框架。Flask和Django是Python中最流行的web开发框架,与Django不同的是,Flask适合开发小型项目,通过服务器提供服务,而Django适合用来开发大型web项目。使用Flask搭建服务器,通过浏览器访问来使用Python功能,Python+Flask搭建服务器代码量少,实现起来相当简单,下面通过demo来介绍如何实现。

2022-08-20 19:20:44 2427

原创 Linux/macOS系统安装NodeJs

包管理器除了nodejs自带的npm外,还有yarn、cnpm第三方包管理器,一般情况下载npm无法正常安装时首先考虑使用yarn,cnpm不应首先考虑,因为其安装的包相比其他包管理器安装的包体积都大。/usr/local目录下创建bin目录,/usr/local/bin目录一旦创建也将成为系统命令搜索路径。注意:每个包管理器都有自己的配置,比如npm的配置文件为.npmrc,yarn配置文件为.yarnrc,他们存放在用户目录~下。-g 全局安装yarn包管理器,因为每个node项目都要用到。

2022-08-20 19:07:16 1242

原创 Windows系统安装Node.Js及环境配置

因为npm历史原因,包下载速度非常慢,甚至因为下载太慢而出错,为了提升包下载速度,用yarn或cnpm代替npm包管理。yarn由facebook提供,下载速度非常快,是nodejs官方推荐的包管理器,且包管理下载速度都优于npm,而cnpm虽然下载速度也快,但是使用cnpm安装包会比其他管理器安装的包体积更大,这是由于文件结构不同的原因,因此推荐使用yarn替代npm。包主要是用npm包管理器进行安装,由于国内下载安装包较慢,这时候就需要修改服务器地址为国内镜像地址。,以便后面调整包管理路径。...

2022-08-13 12:15:00 5673

原创 Linux系统创建程序启动器(桌面快捷方式图标)

目标执行程序可以在任意目录,但是启动器必须在该目录下。在该目录下操作文件需要管理员权限,建议创建好启动器文件后再使用管理员权限拷贝到该目录。以.desktop后缀的文件。管理员权限拷贝文件。.........

2022-08-12 10:15:00 2159

原创 Linux/MacOS系统curl工具使用方法

curl是一个开源的用于数据传输的命令行工具与库,它使用URL语法格式,支持众多传输协议,包括:HTTP、HTTPS、FTP、FTPS、GOPHER、TFTP、SCP、SFTP、SMB、TELNET、DICT、LDAP、LDAPS、FILE、IMAP、SMTP、POP3、RTSP和RTMP。curl库提供了很多强大的功能,你可以利用它来进行HTTP/HTTPS请求、上传/下载文件等,且支持Cookie、认证、代理、限速等。......

2022-08-11 15:30:00 1936

原创 Linux/MacOS系统wget工具使用方法

Wget是Linux/MacOS系统非交互式的网络文件下载工具,支持 HTTP、HTTPS及FTP协议。wget还提供了很多选项,例如下载多个文件、后台下载,使用代理等等,使用非常方便。详细的参数可以在终端中使用wget -h查看wget的参数。curl和wget工具功能类似,在linux和macos都可以使用,但是linux自带wget,curl需要自行安装,macos自带curl,wget需要自行安装。............

2022-08-11 11:15:00 2713

原创 Linux操作系统学习——文件系统之文件与目录管理

从Linux目录结构我们知道,Linux目录是一个树状结构,从/根目录开始,不同的目录挂载在/根目录之下,通过解除挂载移除相应的文件系统。文件与目录管理主要是通过命令行来进行操作,因此我们必须了解文件系统的路径。路径分为绝对路径和相对路径是什么,绝对路径是从/根目录开始到目标目录的完整路径,例如/usr/lib/systemd/system就是一个绝对路径;

2022-08-11 01:39:17 425

原创 Linux操作系统学习——文件系统之文件属性

Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。其中包含的信息有第一列的文件类型和权限、第三列属主、第四列属组和最后一列的文件(目录)名。

2022-08-11 01:35:10 748

原创 Linux操作系统学习——文件系统之目录结构

Linux 是基于文件的操作系统,在 linux 操作系统中万物皆为文件包括目录和各种硬件设备,与 windows 通过提供 API 或者图形化应用程序对系统进行管理有本质区别。基于文件的操作系统优点是通过命令行可以很方便地管理系统和获取系统信息,而不需要任何图形化界面应用软件,甚至在软件开发过程中通过命令行就可以获取到系统信息。...

2022-08-09 23:03:03 957

原创 Linux操作系统学习——启动过程

Linux内核最初只是由芬兰人李纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Linux能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux内核实现了操作系统的基本功能,我们一般用的是Linux发行版。

2022-08-08 18:38:12 901

原创 MoreFileRename批量文件改名工具

文件批量改名程序可以为多个文件批量重命名,用户可以通过特定规则为批量文件生成新名称,同时也可以批量指定新名称,从而解决大批量文件重命名难题。一、命名通过“命名规则”生成特定格式文件名,通过数字或字母编号,生成有规则的文件名列表,通过可以更改文件扩展名,改变文件大小写等。二、替换将文件名中字符替换为指定字符。三、删除/添加在文件名前后添加字符,在文件名中指定位置插入字符;删除文件名中特定...

2020-03-04 10:54:03 344

空空如也

空空如也

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

TA关注的人

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