- 博客(83)
- 资源 (14)
- 收藏
- 关注
原创 OpenHarmony系统编译环境
3. 修改/usr/bin/repo文件,源改成清华。4. 设置~/.pip/pip.config。1. 推荐系统Ubuntu 2204。2. 必须安装的软件。
2023-11-18 11:25:23
785
原创 C语言实现base64编解码函数
C语言实现的base64编解码函数,原文:https://www.jianshu.com/p/125c4bbed460,编码函数做了小改动以解决字节流中的负数异常问题。//// base64.c// base64//// Created by guofu on 2017/5/25.// Copyright © 2017年 guofu. All rights reserved.///** * 转解码过程 * 3 * 8 = 4 * 6; 3字节占24位, 4*6=24 *
2020-07-22 14:49:35
2720
1
原创 frps远程连接家庭电脑
frps 是一款优秀的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由转发。 这次我们使用frps通过远程桌面连接家庭电脑(当然也可以是办公电脑)。因为家庭网络一般都没有固定的公网地址,因此我们需要准备以下内容: 1. 一个公网的虚拟主机VPS。现在各大公有云如阿里云、...
2020-02-13 15:15:12
798
原创 KVM中GeForce显卡穿透
Nvidia的驱动中对Geforce的显卡做了检查,消费级显卡不允许在虚拟机中运行,只允许专业卡比如P4000进行虚拟化。所以我们将Geforce显卡做了直通的时候,驱动就会自己检查报错停止工作。在Windows虚拟中安装完显卡驱动后会显示驱动异常43#错误,导致显卡无法正常工作。 要在虚拟机中使用GeForce显卡穿透:修改grub.cfg,请注意Legacy和U...
2019-11-27 13:03:50
1513
转载 Installsheild 64位平台打包注意事项
1、安装目录 64位系统下,安装目录分Program Files和Program Files(x86)。64bit Application会自动安装在Program Files下;32bit Application会自动安装在Program Files(x86)下。 2、系统目录 64位系统下,系统目录分system32和syswow64。 64bit AP ...
2019-01-18 14:59:32
1089
原创 使用VMware workstation调试Windows内核驱动
使用VMWare workstation调试Windows内核驱动的方法在网上很容易就能找到一大堆文章,不过方法只有那么一个,其原理上都是通过重定向虚拟机串口设备到管道然后使用Windbg程序关联管道进行调试。不过其中有两个小地方需要需要特别留意: 在workstation上添加出来的串口设备是"Serial Port 2"。 出现这种现象时可以删除虚拟机...
2018-11-02 10:47:23
785
原创 redmine修改主页
redmine默认的主页没有内容,在 管理|配置|一般 里可以修改标题并添加主页内容。app/views/welcome/index.html.erb 文件是主页的代码文件,可以在这里增加自定义的任何内容。...
2018-05-16 13:49:41
7889
原创 redmine解决代码库无法连接的问题
代码库如果使用https发布,在使用redmine连接代码库时会提示“redmine 版本库中不存在该条目和(或)其修订版本。”。查询apache日志(/var/log/apache2/error.log)可以看到“svn: E230001: Server SSL certificate verification failed: certificate issued for a diff...
2018-05-14 19:01:14
1292
原创 Debian安装redmine
MYSQL_PASSWD is root user password of MySQL.REDMINE_PASSWD is redmine user password of MySQL.#!/bin/shset -eMYSQL_VERSION=5.5[ -z "${MYSQL_PASSWD}" ] && MYSQL_PASSWD=mysql[ -z "${REDMINE...
2018-05-10 10:45:11
645
原创 Vuls安装和使用
Vuls是针对Linux系统的安全扫描工具,可以扫描各种系统安全漏洞并给出修订建议。安装依赖组件yum -y install sqlite git gc wget gcc下载安装golangwget https://storage.googleapis.com/golang/go1.10.linux-amd64.tar.gztar -C /usr/local -x...
2018-04-23 10:17:07
5210
原创 windows 证书管理
windows系统有两个证书管理工具certlm.msc和certmgr.msc,前者是本地计算机的证书管理工具,而后者是当前用户的证书管理工具。在导入证书时需要注意。如果证书仅是给当前用户使用那么就可以使用后者。并且在启动后者时不需要管理权限,而前者需要管理权限,否则就只能查看证书而不能导入证书。
2017-05-28 08:55:12
18781
原创 无限试用软件的方法
1:无限试用Navicat for mysql打开注册表到HKEY_CURRENT_USER\Software\Classes\CLSID,删除UUID下面只有一个info项,里面有一个以UUID前四个字节开始的键值。如:[HKEY_CURRENT_USER\Software\Classes\CLSID\{135AC6CD-8C05-8A1B-3A92-03FA247E771F}]
2017-02-23 12:37:26
23248
2
原创 Windows路由设置一例
公司内部给了两条网线,一条千兆的一条百兆的。千兆的公网访问速度慢,但内网快;百兆的公网访问速度快,但内网慢。于是想通过路由设置将内网网访问全部走千兆网络,而公网访问全部走百兆网络。但是,如果直接把两个网线都接上,网络访问完全不受控,即使设置了静态路由也无用。查看路由表设置会出现下面的结果:设置了静态路由,但是活动路由中出现了两条公网路由,因为两条路由都可以访问公网,因此导致网络分流失败
2016-12-13 10:20:25
603
转载 公钥密码学中的素数以及对称加密
转来的科普文章。 密码学,一向被人们认为门槛很高,特别高端...这也是实际,但是这决不意味着普通人无法了解它的精髓,对于喜欢画圆的人来讲,即便是理解了密码技术背后的哪怕一点理论,也是激动人心的。声明和悲叹最近,一次联调SSLVPN协议的机会,让我终于有时间可以弄点关于密码学的东西,只是简单的沾个边儿,因此本文既不是技术文档亦非学术论文,你不可能通过阅读本
2016-12-01 16:31:49
1915
原创 Linux shell 脚本互斥同步
在Linux shell中当两个脚本需要同时访问同一个文件时,就会出现冲突。对于这种冲突可以使用flock命令解决。flock的加锁和解锁方法如下:加锁:exec 3>filename # open a file handle; this part will always succeedflock -x 3 # lock the file handle; this part
2016-11-23 17:28:52
3646
原创 Linux Shell脚本中对IP、子网掩码和网关的有效性判断
以下示例只是提供一些思路和简易的方法。请参考使用。1:IP格式效性判断#return 1(failure) invalid ip,0(success) valid ipis_valid_ip_format() { if [[ "$1" =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]] ;then return 0 el
2016-11-16 18:11:55
5717
原创 Linux下 Apache+SVN 让用户自行修改SVN密码
默认在Linux下Apache+SVN没有提供用户修改密码功能,这里利用PHP脚本来为用户提供一种修改密码的方法。第一步:用户在修改密码之前需要先登录,而登录的验证方法和访问SVN是一样的,在/etc/apache2/mods-available/alias.conf中加入如下配置Alias /svntools/ "/var/www/svntools/" AuthType
2016-09-08 10:50:38
5377
原创 创建samba共享文件夹脚本
创建samba共享文件夹的脚本,也可以删除创建的samba共享文件夹。创建时输入参数为用户名和密码;删除时为用户名。#!/bin/shDATA_FOLDER_PATH=/var/cache/share_folderSMB_CONFIG=/etc/samba/smb.conf# 检查参数个数if [ $# -ne 2 ] && [ $# -ne 3 ] ; then echo "E
2016-08-29 11:22:34
1790
原创 Linux服务器性能日志收集和分析脚本
最近老大要求分析服务器的性能数据,找到服务器运行的性能瓶颈,结果花了两天时间,写了两个脚本可以生成日志并可以进行数据提取,最终生成数据可以放到excel生成报表。过程中也学到了不少shell编程技术。收集性能数据系统日志,每3秒收集一次,将脚本放到后台运行就行。#!/bin/shwhile :doALLVMS=`ps -ef|grep qemu-kvm|gawk {'print $
2016-07-08 17:22:20
4951
2
原创 outlook HTML签名制作方法
最近公司要求统一邮件签名格式,好一顿折腾啊!因为统一提供的签名是HTML格式 而outlook不直接提供HTML的签名生成和修改。但其实outlook的签名是有HTML格式的,并且可以直接编辑,方便而且更好控制,只是outlook对HTML的支持限制很多,很多元素无法使用。以前基本上不会写HTML,为了这个签名,HTML倒是学会了不少,也算意外收获吧。痛并快乐着! 首先,要制作out
2015-09-02 23:26:15
38757
1
原创 Windows 2003密码重置
原理:在windows中摁5下shift之后会提示启用粘滞键 这是因为摁5下shift键之后就调用%SystemDrive%\windows\system32\sethc.exe来启动粘滞键功能因此只要将sethc.exe替换成cmd.exe,开机后按5下shift就可以打开cmd窗口,然后就可以使用net user命令重置密码。方法:1 使用PE盘启动服务器,打开服务器系统磁盘。
2015-08-29 17:26:39
3325
转载 修改本地磁盘和网络磁盘(驱动器)的名字(卷标)
修改本地磁盘和网络磁盘(驱动器)的名字(卷标)Technorati 标签: 修改,网络磁盘驱动器名,卷标,修改网盘名,modify,modify Drive Name作者:夏明亮也许大家都知道想要修改客户端计算机的本地磁盘名字,可以通过label命令来修改,具体操作如下:下图是我这里没有本地磁盘卷标前的截图:然后我使用label命令修改C:的卷标
2015-05-13 15:52:11
22776
2
原创 shell中嵌入程序模板
需要做的事情:1:写好程序的安装脚本,将其命名为installer.sh2:程序打包为tar.gz格式,推荐使用tar zcvf xxx.tar.gz xxx创建3:将以下脚本保存为xxx.sh,名称与程序包一致4:附加程序包到脚本 cat xxx.tar.gz >> xxx.shGood Luck!#!/bin/shecho "Preparing....
2014-12-26 09:50:06
917
原创 SVN备份与恢复
SVN代码的备份至少有三种方法,这里只是说下用svnsync命令的备份和恢复过程。 svnsync命令是建立两个完全相同的代码库,属于完整同步备份,因此,如果代码库已经很大了,第一次备份会非常耗时,但后续备份只是处理增量,会比较快。同时,svnsync备份和主库完全一致,当主库宕机后,从库可以直接投入使用,使用上比较简单。主库恢复后,可以将原来的主库作为备库,继续使用。主备之间可以任
2014-01-18 12:39:54
6696
1
原创 libthreadpool线程池库
项目要用线程池,网上找了很多后发现了这个开源的项目http://sourceforge.net/projects/libthreadpool/,但是测试发现这个项目代码的Bug实在太多了基本上没法用,然后就自己一点点修改调试,大约花了一周时间终于可以使用了,测试效果还不错,CPU使用率比之前能降低一大半。libthreadpool这个项目源文件只有两个,thread-pool.h和thread-p
2013-12-05 19:54:19
5392
1
转载 Windows下查看进程的命令行参数
我们可以使用下面方法得到: 在XP下是可以查看进程命令行参数的。使用下面的命令。 wmic process get caption,commandline /value 如果想查询某一个进程的命令行参数,使用下列方式: wmic process where caption="update.exe" get caption,commandline /value 其中update.exe可以换成你
2013-10-16 13:49:06
7831
原创 Linux top命令输出重定向
for ((;;)) ; do echo -n `date`>>myprog.txt;echo -n " ">>myprog.txt;echo `top -b -n1 | grep myprog` >> myprog.txt;sleep 3; done
2013-09-22 11:18:30
5145
原创 Windows和Linux系统的Debug调试信息输出方法
#ifndef WIN32#define DBG_OUT(args...) \do{ \ char buf[1024],line[512],file[512]; \ char *p=file,*q; \ sprintf(buf,args); \ sprintf(line,"%s,%d",__FUNCTION__,__LINE__); \ sprintf(file,"%s",__FIL
2013-04-19 14:53:56
1930
原创 一段位操作代码
//buf 数组区,pos从左到右数的位数#define TEST_ARRAY_BIT(buf,pos) (!!(buf[(pos)/8] & (1UL<<(7-((pos)%8)))))#define SET_ARRAY_BIT(buf,pos) (buf[(pos)/8] = (buf[(pos)/8] | (1UL<<(7-((pos)%8)))))//v 数值,pos从右到左数的位
2013-04-19 09:10:59
1008
原创 Linux系统字符终端自动登录问题
Linux系统字符终端自动登录的一解决办法:Linux中如何自动登录虚拟控制台This article describes how to automatically login to a virtual console at the end of the boot process. This article only covers console logins; methods
2012-11-29 15:42:47
3526
原创 关于container_of宏
先看一段代码:#include #include #define container_of(ptr, type, member) ({ \ const typeof(((type *) 0)->member) *__mptr = (ptr); \ (type *) ((char *) __mptr
2012-09-28 15:45:35
1729
原创 MySQL外键示例
外键语法如下:外键的定义语法:[CONSTRAINT symbol] FOREIGN KEY [id] (index_col_name, ...) REFERENCES tbl_name (index_col_name, ...) [ON DELETE {RESTRICT | CASCADE | SET NULL | NO ACTION | SET DEFAULT}]
2012-08-23 16:12:07
1015
原创 如何在Win32窗口程序中发命令打开一个控制台,往里面打印(printf())输出一些数据
代码:AllocConsole(); HANDLE hOutput=GetStdHandle(STD_OUTPUT_HANDLE); unsigned long lgsize; WriteFile(hOutput,strbuf,strlen(strbuf),&lgsize,0); FreeConsole();
2012-08-08 11:37:03
5700
转载 一个获取计算机硬件信息和安装软件清单的脚本
'=========================================================================='' Date:2009/3/19' Name: 查询软件和硬件列表清单' Comment: blogs.itecn.net/smileruner' Author:Smileruner' www.overmcse.com' 不支持Win
2012-07-07 15:09:46
13290
4
原创 在WinCE 6.0上使用远程桌面控件
说明:这个程序是从命令行执行的,解析命令行传入的参数信息,执行远程桌面连接。只描述实现过程,不讨论实现原理。1. 打开VS 2005,新建一个“MFC智能设备应用程序”项目2. 在应用程序类型处选择“单文档”;取消“文档/视图结构支持”;选择“在共享库中使用MFC”3. 在高级功能处选上“ActiveX控件”和“Windows套接字”4. 项目新建完成后,从项目源文件中排除"Chi
2012-06-07 16:50:19
5258
5
原创 注册表操作样例
#define MAX_VALUE_NAME 256#define TS_ROOT_KEY TEXT("Software\\Microsoft\\Terminal Server Client")#define TS_DEFAULT_KEY TEXT("Software\\Microsoft\\Terminal Server Client\\Default")#define TS_USERNA
2012-05-22 14:01:07
1074
原创 C#调用C++动态库时出错的解决方法
在C#工程中调用C++写的动态库,运行时出现了如下描述的错误:其他信息: 对 PInvoke 函数“WindowsFormsApplication1!WindowsFormsApplication1.Form1::check_sn”的调用导致堆栈不对称。原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配。请检查 PInvoke 签名的调用约定和参数与非托管的目标签名是否匹配。
2012-05-10 14:19:22
2775
原创 你知道以下程序的输出吗?
#include "stdio.h" main(){ char ch[]="aehi"; char *pch=ch,*p,*t,*q,*m; m=p=t=q=pch; printf("%p ",pch); printf("\n"); printf("%p ",p); printf("%c ",*(p+1)); printf("%p ",p); printf(
2012-04-26 17:46:53
809
原创 星期计算函数
int is_leap_year( int year ){ int iRet; iRet = 0; if( 0 == ( year % 400 ) ) { iRet = 1; } else if( ( 0 == ( year % 4 ) ) && ( 0 != ( year % 100 ) ) )
2012-04-26 17:18:36
911
Android自动发送天气预报短信程序(新版本3.0)
2014-06-11
Android自动发送天气预报短信程序
2014-05-16
Vi for windows part2
2007-12-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人