首页 › 分类存档 › 未分类

win11右键功能杂乱,想换回win10

第一步:

打开终端:

输入一串代码:

之后就可以了,要是不行的话就重启下电脑,或者不想重启的就重启下资源管理器

执行:

即可返回win11的操作

如何从DLL或者DEF文件生成LIB文件

Visual C++ 开发工具提供了两个命令行工具,一个是dumpbin.exe,另一个是lib.exe。利用这两个工具即可从dll导出其对应的lib。

1、在命令行执行:
dumpbin /exports yourdll.dll > yourdll.def

2、编辑 yourdll.def 文件,使之格式与.def文件格式一致。比如:

EXPORTS;
fn1;
fn2;

3、在命令行执行:
lib /def:yourdll.def /machine:i386 /out:yourdll.lib

 

注:上面两个命令所在文件夹为:安装的vs目录下。即..\vc\bin\amd64\

密码保护:缅怀”水蜜桃”

此内容受密码保护。如需查阅,请在下列字段中输入您的密码。

[转]虚拟机软件VMware Workstation发布16.2.0更新:添加对Win11的TPM支持

10 月 17 日消息,据 Neowin 报道,在几天前,VMWare 发布了 16.2.0 版本更新,但是黑暗模式出现了问题,VMWare 已经承认了这一点,并将很快发布修复程序。

值得一提的是,官方的更新日志并没有提到,在更新中,VMWare 还添加了对Win11软件级别 TPM 的支持。

此前,如果用户一直在启用 TPM 的 VMware Workstation Pro 中使用 Win11 虚拟机,用户必须为每个加密的 VM 设置和输入密码。但是本次更新之后,用户可以移除加密,并加入软件级 TPM 标志来代替,不必每次都要输入密码。

如果你在 Windows 中用 BitLocker 进一步加密虚拟机,可能需要在执行下面的步骤前先解密驱动器。

如果你已经在Windows 10或 11 中添加了 TPM:

确保你已经更新到 16.2.0 版本。
继续阅读 »

c++使用protobuf3,附例子

protobuf编译器是用c++写的,对于c++用户而言,除了安装protoc之外,还要安装c++运行时。

Please follow the C++ Installation Instructions to install protoc along with the C++ runtime.

或者直接根据以下步骤进行操作:

继续阅读 »

密码保护:基于QT+MySQL实现的学生信息管理系统

此内容受密码保护。如需查阅,请在下列字段中输入您的密码。

oracle 利用shell脚本自动执行raman热备(全量和增量)

1、不废话直接上脚本
vim oracle_rman_bak.sh
#!/bin/sh
source /home/oracle/.bash_profile

if [ -z $1 ]
then
echo “Please Input a number,Usage: 0|1|2”
exit
else
RMAN_LEVEL=$1
fi

export ORACLE_SID=jkdata
export TODAY=date '+%Y%m%d'
export RMAN_DIR=/data/backup/oracledata/rmanbak/$ORACLE_SID/$TODAY-$RMAN_LEVEL
#######
mkdir -p $RMAN_DIR
cd $RMAN_DIR
LogFile=ora_rman_bk_$ORACLE_SID-L$RMAN_LEVEL-date '+%Y%m%d'.log

# rman backup
rman target / msglog=$RMAN_DIR/$LogFile<<EOF
delete noprompt obsolete;
CONFIGURE BACKUP OPTIMIZATION ON;
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO ‘$RMAN_DIR/cf%F’;
run {
allocate channel c1 type disk;
allocate channel c2 type disk;
backup as compressed backupset incremental level $RMAN_LEVEL filesperset 3 tag ‘dbL$RMAN_LEVEL’ format ‘$RMAN_DIR/ora_o_%d_%t_%c%s%p%u’
database skip readonly include current controlfile;
sql ‘alter system archive log current’ ;
backup(archivelog all format ‘$RMAN_DIR/ora_a_%d_%t_%c%s%p%u’ delete input);
release channel c1;
release channel c2;
}

list backup;
exit;
EOF

#mail backup log
mail -s “$ORACLE_SID rman L$RMAN_LEVEL backup log $TODAY” [email protected] <$RMAN_DIR/$LogFile

 

2、在crontab 中设置如下:
0 4 * * 5 sh /home/oracle/backup_scripts/oracle_rman_bak.sh 0 > /data/backup/oracledata/logs/rman.log 2>&1
0 4 * * 2 sh /home/oracle/backup_scripts/oracle_rman_bak.sh 1 > /data/backup/oracledata/logs/rman.log 2>&1

宏定义转字符串

 

输出

(C语言)多进程实现消费者生产者pv操作(Windows和Linux版本)

多进程实现消费者生产者问题

一,实验目的
1,了解生产者消费者的互斥与同步问题
2,掌握Windows和Linux的进程通信方法

二,实验要求
完成Windows版本和Linux版本。
一个大小为3的缓冲区,初始为空。
2个生产者
随机等待一段时间,往缓冲区添加数据,
若缓冲区已满,等待消费者取走数据后再添加
重复6次

3个消费者
随机等待一段时间,从缓冲区读取数据
若缓冲区为空,等待生产者添加数据后再读取
重复4次

显示每次添加和读取数据的时间及缓冲区的状态

三,实验环境
Windows版本:Windows 10 64位系统,Dev-cpp编译器
Linux版本:Fedora29版本,gcc环境 vim文本编辑器

四,实验代码结构
1),pv操作伪代码:
array[3]:interger//缓冲区定义,大小为三
int empty=3,full=0;
int mutex=1;
i=0,j=0//缓冲区指针
x,y:item //产品变量
生产者: 消费者:
begin:
produce a product to x;
P(empty);
P(mutex);
array[i]=x;
ii=(i+1)%3;
V(full);
V(mutex);
,,,,,, ………,
End

消费者:

2)实验代码分析

Windows版本:

思路分析:Windows创建多进程使用creatprocess()函数调用自己,通过多次创建得到两个生产者进程三个消费者进程,在之中运行相应的生产者函数,消费者函数。在通过传入参数不同,来辨别是第一次主进程还是生产者进程,消费者进程。通过构建共享内存区进行进程间通信。

①多进程创建

② 构建共享内存区,再将文件映射到本进程,初始化

③在主创建进程间信号量full empty

分别在生产者消费者进程创建互斥访问量mutex

④同过argv量的不同判断进程归属

⑤运行结果:

全部代码见后

Linux版本:

思路分析:Linux使用fork进行多进程创建,分别在进程中运行消费者函数,生产者函数。建立共享主存区很信号量在进程建进行通信和缓存访问

②建立共享主存并进行映射

③创建进程间信号量full,empty和互斥量 mutex,并初始化

④实验结果:

五, 实验总结

本次实验获得圆满成功。

本次实验通过分别编写Windows和Linux版本的多进程实现消费者和生产者问题,了解生产者消费者的互斥与同步问题,掌握Windows和Linux的进程通信方法,也同时加强自己对多进程操作的理解。

代码:
Windows版本:

Linux版本:

SSL 认证之后,request.getScheme()获取不到https的问题记录

通过浏览器输入https://www.xxx.com,request.getScheme()获取到的确实http而不是https
通过request.getRequestURL()拿到的也是http://www.xxx.com
分析原因,是因为用nginx+tomcat部署web服务,tomcat接受到的请求都是来自于nginx的http请求。

继续阅读 »