当前位置: 首页 > news >正文

C#快键精灵

我发过挺多工作中用到的C#内容,整体链接和内容去这里看下:C#基础知识体系框架图,及起对应我发过的博客_花开莫与流年错_的博客-CSDN博客_c#架构图

可以记住电脑上鼠标、键盘操作记录,用处就很多,比较灵活了,只要记下自己电脑上操作的内容,可以循环去模拟人为的执行。而我呢是用在自动化生产中,接收PLC命令后模拟人操作控制电脑上的软件。键盘和鼠标功能码与ascll码一致

对应开源代码:KeyMouseHook: 这是一个基于globalmousekeyhook 和 InputSimulator 的类似于按键精灵的模拟键盘按键和鼠标点击操作的扩展类库。可以检测并记录键盘和鼠标的活动,你可以录制你的键鼠操作的记录并进行回放,可模拟键盘输入和鼠标点击操作。

使用的话基本都是基于MouseKeyHook开发的,下面我来介绍下详细内容。

使用MouseKeyHook

其中主要两个接口:key键盘点击事件、mouse鼠标点击事件

namespace Gma.System.MouseKeyHook
public interface IKeyboardMouseEvents : IKeyboardEvents, IMouseEvents, IDisposablenamespace Gma.System.MouseKeyHook
{public static class Hook{public static IKeyboardMouseEvents AppEvents();public static IKeyboardMouseEvents GlobalEvents();}
}

使用代码

private IKeyboardMouseEvents m_GlobalHook;public void Subscribe()
{m_GlobalHook = Hook.GlobalEvents();m_GlobalHook.MouseDownExt += GlobalHookMouseDownExt;m_GlobalHook.KeyDown += KeyEventHandler;
}
private void KeyEventHandler(object sender, KeyEventArgs e)
{// keyValue值对应键盘事件要参考下面System.Windows.Forms中Keys的定义Console.WriteLine(e.KeyValue);}
private void GlobalHookMouseDownExt(object sender, MouseEventExtArgs e)
{if (e.Button == MouseButtons.Left){Console.WriteLine("左键");key = 1;}if (e.Button == MouseButtons.Right){Console.WriteLine("右键");m_GlobalHook.MouseDownExt -= GlobalHookMouseDownExt;m_GlobalHook.Dispose();key = 2;}
}

上面只触发了点击事件,还要获取当前点击位置

// 当前查看的代码是在定时器里面获取的,Cursor对象对应命名控件:System.Windows.Forms
Cursor.Position.X.ToString() + "," + Cursor.Position.Y.ToString();
// 获取屏幕整体宽度和高度,但是这里不是真实大小(被屏幕显示百分比重新计算后的)
Screen.PrimaryScreen.Bounds.Width + ", " + Screen.PrimaryScreen.Bounds.Height;// 添加事件处理
keyboardWatcher.OnKeyboardInput += (s, e) =>{ }
mouseWatcher.OnMouseInput += (s, e) => { }

运行快键记录

[DllImport("user32.dll")]
static extern void mouse_event(int flags, int dX, int dY, int buttons, int extraInfo);
// 通过定时器和鼠标、键盘事件记录鼠标位置和事件,控制实现
mouse_event(MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_MOVE, x * 65536 / 1920, y * 65536 / 1080, 0, 0);

InputSimulator对象中KeyPress虚拟按键、Mouse虚拟鼠标,由IKeyboardSimulator和IMouseSimulator声明。

鼠标Mouse移动

MoveMouseTo(double absoluteX, double absoluteY);
LeftButtonDown();
LeftButtonUp();
LeftButtonClick();
LeftButtonDoubleClick();
RightButtonDown();
RightButtonUp();
RightButtonClick();
RightButtonDoubleClick();
MiddleButtonDown();
MiddleButtonUp();
MiddleButtonClick();
Sleep(int millsecondsTimeout);

代码中触发键盘。KeyPress(单个键盘触发)、ModifiedKeyStroke(多个键盘同时触发)、TextEntry(输入文件)、Sleep(暂停)

sim.Keyboard.ModifiedKeyStroke(VirtualKeyCode.LWIN, VirtualKeyCode.VK_R).Sleep(1000).TextEntry("notepad").Sleep(1000).KeyPress(VirtualKeyCode.RETURN).KeyPress(VirtualKeyCode.RETURN).Sleep(1000).TextEntry("0123456789").Sleep(1000).TextEntry(".").Sleep(1000).TextEntry(".").Sleep(1000).TextEntry(".").Sleep(1000).ModifiedKeyStroke(VirtualKeyCode.MENU, VirtualKeyCode.SPACE).KeyPress(VirtualKeyCode.DOWN).KeyPress(VirtualKeyCode.RETURN);

windows上每个按键的功能(可以自己在vs找到Forms中的Keys,按F12跳转到定义查看所有内容),对应映射的值拷贝到下面了,这里其实和ascll码是一样的,只不过还多了一些命令而已。

#region 程序集 System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
// C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.7.2\System.Windows.Forms.dll
#endregionusing System.ComponentModel;
using System.Drawing.Design;
using System.Runtime.InteropServices;namespace System.Windows.Forms
{//// 摘要://     指定键代码和修饰符。[ComVisible(true)][Editor("System.Windows.Forms.Design.ShortcutKeysEditor, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a", typeof(UITypeEditor))][Flags][TypeConverter(typeof(KeysConverter))]public enum Keys{//// 摘要://     若要从一个密钥值中提取修饰符位掩码。Modifiers = -65536,//// 摘要://     不按任何键。None = 0,//// 摘要://     鼠标左键。LButton = 1,//// 摘要://     鼠标右键按钮中。RButton = 2,//// 摘要://     CANCEL 键。Cancel = 3,//// 摘要://     鼠标中键 (三个按钮的鼠标)。MButton = 4,//// 摘要://     第一个 x 鼠标按钮 (五个按钮的鼠标)。XButton1 = 5,//// 摘要://     第二个鼠标按钮 (五个按钮的鼠标) x。XButton2 = 6,//// 摘要://     BACKSPACE 键。Back = 8,//// 摘要://     TAB 键。Tab = 9,//// 摘要://     LINEFEED 键。LineFeed = 10,//// 摘要://     CLEAR 键。Clear = 12,//// 摘要://     RETURN 键。Return = 13,//// 摘要://     ENTER 键。Enter = 13,//// 摘要://     SHIFT 键。ShiftKey = 16,//// 摘要://     CTRL 键。ControlKey = 17,//// 摘要://     ALT 键。Menu = 18,//// 摘要://     PAUSE 键。Pause = 19,//// 摘要://     CAPS LOCK 键。Capital = 20,//// 摘要://     CAPS LOCK 键。CapsLock = 20,//// 摘要://     IME Kana 模式键。KanaMode = 21,//// 摘要://     IME Hanguel 模式键。 (保留为了兼容; 使用HangulMode)HanguelMode = 21,//// 摘要://     IME Hangul 模式键。HangulMode = 21,//// 摘要://     IME Junja 模式键。JunjaMode = 23,//// 摘要://     IME 最终模式键。FinalMode = 24,//// 摘要://     IME Hanja 模式键。HanjaMode = 25,//// 摘要://     IME Kanji 模式键。KanjiMode = 25,//// 摘要://     ESC 键。Escape = 27,//// 摘要://     IME convert 键。IMEConvert = 28,//// 摘要://     IME nonconvert 键。IMENonconvert = 29,//// 摘要://     IME 接受密钥,替换System.Windows.Forms.Keys.IMEAceept。IMEAccept = 30,//// 摘要://     IME 接受密钥。 已过时,请System.Windows.Forms.Keys.IMEAccept相反。IMEAceept = 30,//// 摘要://     IME 模式更改密钥。IMEModeChange = 31,//// 摘要://     SPACEBAR 键。Space = 32,//// 摘要://     PAGE UP 键。Prior = 33,//// 摘要://     PAGE UP 键。PageUp = 33,//// 摘要://     PAGE DOWN 键。Next = 34,//// 摘要://     PAGE DOWN 键。PageDown = 34,//// 摘要://     END 键。End = 35,//// 摘要://     HOME 键。Home = 36,//// 摘要://     LEFT ARROW 键。Left = 37,//// 摘要://     UP ARROW 键。Up = 38,//// 摘要://     RIGHT ARROW 键。Right = 39,//// 摘要://     DOWN ARROW 键。Down = 40,//// 摘要://     SELECT 键。Select = 41,//// 摘要://     PRINT 键。Print = 42,//// 摘要://     EXECUTE 键。Execute = 43,//// 摘要://     PRINT SCREEN 键。Snapshot = 44,//// 摘要://     PRINT SCREEN 键。PrintScreen = 44,//// 摘要://     INS 键。Insert = 45,//// 摘要://     DEL 键。Delete = 46,//// 摘要://     HELP 键。Help = 47,//// 摘要://     0 键。D0 = 48,//// 摘要://     1 键。D1 = 49,//// 摘要://     2 键。D2 = 50,//// 摘要://     3 键。D3 = 51,//// 摘要://     4 键。D4 = 52,//// 摘要://     5 键。D5 = 53,//// 摘要://     6 键。D6 = 54,//// 摘要://     7 键。D7 = 55,//// 摘要://     8 键。D8 = 56,//// 摘要://     9 键。D9 = 57,//// 摘要://     A 键。A = 65,//// 摘要://     B 键。B = 66,//// 摘要://     C 键。C = 67,//// 摘要://     D 键。D = 68,//// 摘要://     E 键。E = 69,//// 摘要://     F 键。F = 70,//// 摘要://     G 键。G = 71,//// 摘要://     H 键。H = 72,//// 摘要://     I 键。I = 73,//// 摘要://     J 键。J = 74,//// 摘要://     K 键。K = 75,//// 摘要://     L 键。L = 76,//// 摘要://     M 键。M = 77,//// 摘要://     N 键。N = 78,//// 摘要://     O 键。O = 79,//// 摘要://     P 键。P = 80,//// 摘要://     Q 键。Q = 81,//// 摘要://     R 键。R = 82,//// 摘要://     S 键。S = 83,//// 摘要://     T 键。T = 84,//// 摘要://     U 键。U = 85,//// 摘要://     V 键。V = 86,//// 摘要://     W 键。W = 87,//// 摘要://     X 键。X = 88,//// 摘要://     Y 键。Y = 89,//// 摘要://     Z 键。Z = 90,//// 摘要://     左 Windows 徽标键 (Microsoft Natural Keyboard)。LWin = 91,//// 摘要://     右 Windows 徽标键 (Microsoft Natural Keyboard)。RWin = 92,//// 摘要://     应用程序密钥 (Microsoft Natural Keyboard)。Apps = 93,//// 摘要://     计算机休眠键。Sleep = 95,//// 摘要://     数字键盘上的 0 键。NumPad0 = 96,//// 摘要://     数字键盘上的 1 键。NumPad1 = 97,//// 摘要://     数字键盘上的 2 键。NumPad2 = 98,//// 摘要://     数字键盘上的 3 键。NumPad3 = 99,//// 摘要://     数字键盘上的 4 键。NumPad4 = 100,//// 摘要://     数字键盘上的 5 键。NumPad5 = 101,//// 摘要://     数字键盘上的 6 键。NumPad6 = 102,//// 摘要://     数字键盘上的 7 键。NumPad7 = 103,//// 摘要://     数字键盘上的 8 键。NumPad8 = 104,//// 摘要://     数字键盘上的 9 键。NumPad9 = 105,//// 摘要://     乘号键。Multiply = 106,//// 摘要://     加号键。Add = 107,//// 摘要://     分隔符键。Separator = 108,//// 摘要://     减号键。Subtract = 109,//// 摘要://     句点键。Decimal = 110,//// 摘要://     除号键。Divide = 111,//// 摘要://     F1 键。F1 = 112,//// 摘要://     F2 键。F2 = 113,//// 摘要://     F3 键。F3 = 114,//// 摘要://     F4 键。F4 = 115,//// 摘要://     F5 键。F5 = 116,//// 摘要://     F6 键。F6 = 117,//// 摘要://     F7 键。F7 = 118,//// 摘要://     F8 键。F8 = 119,//// 摘要://     F9 键。F9 = 120,//// 摘要://     F10 键。F10 = 121,//// 摘要://     F11 键。F11 = 122,//// 摘要://     F12 键。F12 = 123,//// 摘要://     F13 键。F13 = 124,//// 摘要://     F14 键。F14 = 125,//// 摘要://     F15 键。F15 = 126,//// 摘要://     F16 键。F16 = 127,//// 摘要://     F17 键。F17 = 128,//// 摘要://     F18 键。F18 = 129,//// 摘要://     F19 键。F19 = 130,//// 摘要://     F20 键。F20 = 131,//// 摘要://     F21 键。F21 = 132,//// 摘要://     F22 键。F22 = 133,//// 摘要://     F23 键。F23 = 134,//// 摘要://     F24 键。F24 = 135,//// 摘要://     NUM LOCK 键。NumLock = 144,//// 摘要://     SCROLL LOCK 键。Scroll = 145,//// 摘要://     左的 SHIFT 键。LShiftKey = 160,//// 摘要://     右 SHIFT 键。RShiftKey = 161,//// 摘要://     左 CTRL 键。LControlKey = 162,//// 摘要://     右 CTRL 键。RControlKey = 163,//// 摘要://     左 ALT 键。LMenu = 164,//// 摘要://     右 ALT 键。RMenu = 165,//// 摘要://     浏览器后退键 (Windows 2000 或更高版本)。BrowserBack = 166,//// 摘要://     浏览器前进键 (Windows 2000 或更高版本)。BrowserForward = 167,//// 摘要://     浏览器刷新键 (Windows 2000 或更高版本)。BrowserRefresh = 168,//// 摘要://     浏览器停止键 (Windows 2000 或更高版本)。BrowserStop = 169,//// 摘要://     浏览器搜索键 (Windows 2000 或更高版本)。BrowserSearch = 170,//// 摘要://     浏览器收藏键 (Windows 2000 或更高版本)。BrowserFavorites = 171,//// 摘要://     浏览器主页键 (Windows 2000 或更高版本)。BrowserHome = 172,//// 摘要://     卷静音键 (Windows 2000 或更高版本)。VolumeMute = 173,//// 摘要://     音量降低键 (Windows 2000 或更高版本)。VolumeDown = 174,//// 摘要://     音量增大键 (Windows 2000 或更高版本)。VolumeUp = 175,//// 摘要://     媒体下一曲目键 (Windows 2000 或更高版本)。MediaNextTrack = 176,//// 摘要://     媒体上一曲目键 (Windows 2000 或更高版本)。MediaPreviousTrack = 177,//// 摘要://     媒体停止键 (Windows 2000 或更高版本)。MediaStop = 178,//// 摘要://     在媒体播放暂停键 (Windows 2000 或更高版本)。MediaPlayPause = 179,//// 摘要://     启动邮件键 (Windows 2000 或更高版本)。LaunchMail = 180,//// 摘要://     选择媒体键 (Windows 2000 或更高版本) 中。SelectMedia = 181,//// 摘要://     启动应用程序一个键 (Windows 2000 或更高版本)。LaunchApplication1 = 182,//// 摘要://     启动应用程序两个键 (Windows 2000 或更高版本)。LaunchApplication2 = 183,//// 摘要://     美国标准键盘 (Windows 2000 或更高版本) 上的 OEM 分号键。OemSemicolon = 186,//// 摘要://     OEM 1 键。Oem1 = 186,//// 摘要://     OEM 加上任何国家/地区键盘 (Windows 2000 或更高版本) 上的密钥。Oemplus = 187,//// 摘要://     任何国家/地区键盘 (Windows 2000 或更高版本) 上的 OEM 逗号键。Oemcomma = 188,//// 摘要://     OEM 减号键 (Windows 2000 或更高版本) 任何国家/地区键盘上。OemMinus = 189,//// 摘要://     任何国家/地区键盘 (Windows 2000 或更高版本) 上的 OEM 期间键。OemPeriod = 190,//// 摘要://     美国标准键盘 (Windows 2000 或更高版本) 上的 OEM 问号键。OemQuestion = 191,//// 摘要://     OEM 2 键。Oem2 = 191,//// 摘要://     美国标准键盘 (Windows 2000 或更高版本) 上的 OEM 颚化符键。Oemtilde = 192,//// 摘要://     OEM 3 键。Oem3 = 192,//// 摘要://     美国标准键盘 (Windows 2000 或更高版本) 上的 OEM 左大括号键。OemOpenBrackets = 219,//// 摘要://     OEM 4 键。Oem4 = 219,//// 摘要://     美国标准键盘 (Windows 2000 或更高版本) 上的 OEM 管道键。OemPipe = 220,//// 摘要://     OEM 5 键。Oem5 = 220,//// 摘要://     美国标准键盘 (Windows 2000 或更高版本) 上的 OEM 右大括号键。OemCloseBrackets = 221,//// 摘要://     OEM 6 键。Oem6 = 221,//// 摘要://     OEM 意见/双精度型引号密钥美国标准键盘 (Windows 2000 或更高版本) 上。OemQuotes = 222,//// 摘要://     OEM 7 键。Oem7 = 222,//// 摘要://     OEM 8 键。Oem8 = 223,//// 摘要://     OEM 尖括号或 RT 102 键键盘 (Windows 2000 或更高版本) 上的反斜杠键。OemBackslash = 226,//// 摘要://     OEM 102 键。Oem102 = 226,//// 摘要://     PROCESS 键键中。ProcessKey = 229,//// 摘要://     用于传递 Unicode 字符,就像它们是击键一样。 Packet 键值是用于非键盘输入方法的 32 位虚拟密钥值的低位字。Packet = 231,//// 摘要://     ATTN 键。Attn = 246,//// 摘要://     CRSEL 键。Crsel = 247,//// 摘要://     EXSEL 键。Exsel = 248,//// 摘要://     ERASE EOF 键。EraseEof = 249,//// 摘要://     播放键。Play = 250,//// 摘要://     缩放键。Zoom = 251,//// 摘要://     留待将来使用的常数。NoName = 252,//// 摘要://     PA1 键。Pa1 = 253,//// 摘要://     CLEAR 键。OemClear = 254,//// 摘要://     从一个密钥值中提取键代码的位屏蔽。KeyCode = 65535,//// 摘要://     SHIFT 修改键。Shift = 65536,//// 摘要://     CTRL 修改键。Control = 131072,//// 摘要://     ALT 修改键。Alt = 262144 }
}

相关文章:

C#快键精灵

我发过挺多工作中用到的C#内容,整体链接和内容去这里看下:C#基础知识体系框架图,及起对应我发过的博客_花开莫与流年错_的博客-CSDN博客_c#架构图 可以记住电脑上鼠标、键盘操作记录,用处就很多,比较灵活了&#xff0c…...

谷歌、微软、Meta?谁才是 Python 最大的金主?

你知道维护 Python 这个大规模的开源项目,每年需要多少资金吗? 答案是:约 200 万美元! PSF(Python 软件基金会)在 2022 年 6 月发布了 2021 的年度报告,其中披露了以下这份支出明细&#xff08…...

面向对象笔记

标准JavaBean类1.类名见名知意2.成员变量由private修饰3.提供两个构造方法 无参构造和带全部参数构造4.提供每一个成员变量对应的set/get方法5.如果有其它行为,也要写上空参构造 初始化默认值带参构造 初始化参数 创建对象由虚拟机调用,不能手动调用每创…...

tofu:一款功能强大的模块化Windows文件系统安全测试工具

关于tofu tofu是一款功能强大的针对Windows文件系统安全的模块化工具,该工具可以使用离线方法对目标Windows文件系统进行渗透测试,并通过绕过Windows系统登录界面来帮助广大研究人员测试Windows主机的安全性。除此之外,该工具还可以执行哈希…...

VS中scanf为什么会报错

简单来讲&#xff0c;scanf会强行输入内容&#xff0c;所以是不安全的。 我们来看这样的例子&#xff1a; #include <iostream> using namespace std;int main() {char demo[3];scanf("%s", demo);return 0; }对于以上代码&#xff0c;当我们输入字符不超过3时…...

使用kubeadm部署k8s1.24.0版本,遇到的坑总结

使用kubeadm部署k8s1.24.0版本&#xff0c;遇到的坑总结环境安装遇到的问题环境 操作系统&#xff1a;centos7 内核&#xff1a;5.4.231-1.el7.elrepo.x86_64 kubeadm&#xff1a;1.24.0 kubelet&#xff1a;1.24.0 kubectl&#xff1a;1.24.0 cri&#xff1a;docker cni&…...

【C++】特殊类设计

&#x1f308;欢迎来到C专栏~~特殊类设计 (꒪ꇴ꒪(꒪ꇴ꒪ )&#x1f423;,我是Scort目前状态&#xff1a;大三非科班啃C中&#x1f30d;博客主页&#xff1a;张小姐的猫~江湖背景快上车&#x1f698;&#xff0c;握好方向盘跟我有一起打天下嘞&#xff01;送给自己的一句鸡汤&a…...

中创教育PMP如何轻松应对公司90%以上的沟通难题

掌握沟通技能&#xff0c;可以让问题从1变成0&#xff1b; 掌握沟通技能&#xff0c;可以让机会从0变成1&#xff1b; 掌握沟通技能&#xff0c;可以让成功从1变成100&#xff1b; 难题一、当领导问你某件事&#xff0c;但你又不太清楚时 【说话公式】需要思考需要确认晚点回…...

#笨鸟先飞# 数据结构与算法基础 课程笔记 第六章 图

图的定义和基本术语图&#xff1a;G( V , E ) Graph&#xff08;Vertex&#xff0c;Edge&#xff09;V&#xff1a;顶点&#xff08;数据元素&#xff09;的有穷非空集合&#xff1b;E&#xff1a;边的有穷集合。无向图&#xff1a;每条边都是无方向的有向图&#xff1a;每条边…...

深入浅出带你学习Apache中间件常见漏洞

前言 上一篇文章给大家总结了一下IIS中间件的漏洞&#xff0c;这篇文章就给大家讲一下apache中间件漏洞&#xff0c;说起apache大家一定不会陌生&#xff0c;这是我们日常中经常用到的中间件&#xff0c;下面由我来给大家讲解一下改中间件常见的漏洞。 Apache是什么&#xff…...

用多种指针方法访问数据元素,实现逆序输出

这里注意下数组指针的下标表示&#xff1a; 我们已经知道&#xff0c;数组名a总是指向a[0]的指针&#xff0c;*(ai)是对a[i]的引用&#xff0c;实际上&#xff0c;编译器中&#xff0c;对数组的引用&#xff0c;如a[i]&#xff0c;总是被编译器改写成*(ai)的形式。 另外说明下…...

WebDAV之葫芦儿·派盘+NMM

NMM 支持WebDAV方式连接葫芦儿派盘。 推荐一款文件管理器,可以对手机中的文件进行多方面的管理,支持语法高亮和ftp等远程的文件的管理。支持从WebDav服务器连接葫芦儿派盘服务下载文件和上传文件。 NMM文本编辑器是一款文件管理器,在功能上面更加的适合于一些编程人员进行使…...

Redis多级缓存

文章目录一. 什么是多级缓存二. JVM进程缓存一. 什么是多级缓存 传统的缓存策略一般是请求到达Tomcat后&#xff0c;先查询Redis&#xff0c;如果未命中则查询数据库&#xff0c;如图&#xff1a; 存在下面的问题&#xff1a; 请求要经过Tomcat处理&#xff0c;Tomcat的性能…...

【原创】java+swing+mysql会议室管理系统设计与实现

本文主要介绍使用javaswingmysql等技术去设计完成一个企业公司的会议室管理系统&#xff0c;帮助企业员工去进行会议室的预约安排。 功能分析&#xff1a; 会议室管理系统的使用角色&#xff0c;一般分为管理员和员工用户&#xff0c;管理员进行数据管理&#xff0c;员工进行…...

【Redis】Redis 常用数据类型操作 ① ( 数据库操作 | Redis 数据库连接参数 | Redis 数据库个数 | Redis 访问机制 )

文章目录一、Redis 数据库连接参数二、Redis 数据库个数三、Redis 访问机制一、Redis 数据库连接参数 连接 Redis 数据库 , 只需要 IP 地址 , 端口号 , 访问密码 即可 , 如果没有 设置 访问密码 可忽略该选项 ; Redis 默认端口号是 6379 ; 参考 【Redis】Redis 数据库 安装、…...

GAMES101-计算机图形学入门 LEC4: TRANSFORMATION-3D

本节课程视频地址&#xff1a;https://www.bilibili.com/video/BV1X7411F744/?p4 补充上一节课的一个内容&#xff0c;旋转矩阵的逆矩阵是它的转置&#xff0c;也就是说有R−θRθ−1RθTR_{-\theta} R_\theta^{-1}R_\theta^TR−θ​Rθ−1​RθT​ 上节课讲了&#xff0c;…...

robot实战:截取字符串

一&#xff1a;变量标识符号(1) Scalar型变量: "$"作为标识符号&#xff0c;例如&#xff1a;${var}&#xff0c; 这个打印log时只能用logset赋值&#xff1a;a: ${var} Set Variable abcb:${var2} Set Variable If ${Var}abc efgh ace 如果var的值和abc相等&#xf…...

【面经】滴滴测开一面

滴滴测开一面 面试官自我介绍面试者自我介绍大概实习多久&#xff1f;你在在校经历比较丰富&#xff0c;说一下打ACM那些比赛中的一些经验&#xff0c;找一些具体的项目说一下在打ACM中团队里几个人&#xff1f; 你负责什么&#xff1f;在上段实习的过程中都做了哪些事情&…...

数据治理-主数据

二、某企业集团旗下有房地产、供应链、物流、酒店等多个业务子公司&#xff0c;为了统一管理&#xff0c;集团推进数字化转型&#xff0c;建立了统一的数据仓库&#xff0c;各子公司将数据集成到集团信息部负责管理的 数据平台。集团在实施数据治理过程中&#xff0c;发现各业务…...

软考-中级-软件设计师-成绩

低分飘过&#xff0c;备考经验主要就是刷题。...

学习笔记<二> MySQL学习(3):分库、分表

文章目录为什么分库分表一、垂直分片、水平分片二、常用的数据分片策略三、垂直分表、垂直分库、水平分库、水平分表四、垂直切分、水平切分优缺点五、数据分片规则六、分库分表带来的问题本文参考博主「小Y是我的」的文章&#xff0c;原文链接&#xff1a;https://blog.csdn.n…...

重生之我是赏金猎人-SRC漏洞挖掘(八)-记一次移花接木的GetShell

0x00&#xff1a;前言 https://github.com/J0o1ey/BountyHunterInChina 欢迎亲们点个star 作者&#xff1a;RGM78sec 某天测厂商业务时&#xff0c;发现其中有一个提供音乐播放业务的资产&#xff0c;正好里面有我想听的歌&#xff0c;于是就有了这篇文章 0x01&#xff1a;…...

离线数仓(五):数仓搭建

文章目录一、创建数据库二、ODS 层&#xff08;原始数据层&#xff09;三、DWD 层&#xff08;明细数据层&#xff09;3.1 get_json_object 函数使用3.2 启动日志表 DWD层创建四、DWS 层&#xff08;服务数据层&#xff09;五、DWT 层&#xff08;数据主题层&#xff09;六、AD…...

安装SQL Server2017 过程中报KB29119355失败的解决方案

SQLServer 2017脱机版下载地址&#xff1a;http://download.microsoft.com/download/6/4/A/64A05A0F-AB28-4583-BD7F-139D0495E473/SQLServer2017-x64-CHS-Dev.isoMicrosoft SQL Server Management Studio 18管理工具下载https://learn.microsoft.com/zh-cn/sql/ssms/download-…...

2023年浙江建筑特种工(施工升降机)真题题库及答案

百分百题库提供特种工&#xff08;施工升降机&#xff09;考试试题、特种工&#xff08;施工升降机&#xff09;考试预测题、特种工&#xff08;施工升降机&#xff09;考试真题、特种工&#xff08;施工升降机&#xff09;证考试题库等,提供在线做题刷题&#xff0c;在线模拟考…...

2023年进入互联网行业好找工作吗?

俗话说&#xff1a;选择大于努力。年后求职小高峰&#xff0c;大家在找工作的时候选择肯定也多了。说真&#xff0c;不是人人都有铁饭&#xff0c;普通家庭的孩子想要在2023年进入互联网行业去找工作可能吗&#xff1f;01有一点大家要清楚&#xff0c;2022年是进入过一个寒冬的…...

基于策略模式企业实战中策略命中设计

背景 在公司实际项目项目开发中&#xff0c;有一个策略命中的开发需求。根据用户请求参数的不同来动态返回不同的业务数据。比如说有城市、客户年龄、请求时间3个策略维度&#xff0c;不同的城市返回不同的地区的地标&#xff0c;根据时间地标的背景色要发生变化等等的需求。当…...

pod生命周期,pod控制器service

一&#xff1a;pod-demo.yml apiVersion: v1 # <string> kind: Pod # <string> metadata: # <Object>对象&#xff1a;键值对的集合&#xff0c;又称为映射&#xff08;mapping&#xff09;/ 哈希&#xff08;hashes&#xff09; / 字…...

SAP FICO 深入讲解会计凭证

SAP系统在数据处理&#xff0c;无论是业务处理&#xff0c;还是财务处理都会产生大量的凭证&#xff0c;无论是什么凭证&#xff0c;最终的反映形式就是 会计凭证。 1.凭证原则Code 每笔记账都一直以凭证形式存储&#xff0c;每一凭证都作为前后一致的单位保留在系统中&#xf…...

LeetCode 2341. 数组能形成多少数对

【LetMeFly】2341.数组能形成多少数对 力扣题目链接&#xff1a;https://leetcode.cn/problems/maximum-number-of-pairs-in-array/ 给你一个下标从 0 开始的整数数组 nums 。在一步操作中&#xff0c;你可以执行以下步骤&#xff1a; 从 nums 选出 两个 相等的 整数从 nums…...

青岛做网站的/广告主平台

CSS 四1.内填充(margin)和外边距(padding)2.清除浮动3.盒子模型4.padding&#xff08;内填充&#xff09;5.margin外边距6.margin塌陷现象7.margin居中8.margin和padding遇见的一些问题1.内填充(margin)和外边距(padding) 1.body标签默认有margin的属性。 2.在CSS代码的第一步…...

重庆建材网站建设/网站seo综合诊断

现在服务器的大多数是管理员来远程管理的&#xff0c;服务器所在的机房重地闲人免进&#xff0c;既安全&#xff0c;又能使得管理员们足不出户就可以登陆服务器。 远程登录服务器需要在服务器端开启“允许远程连接到此计算机”&#xff0c;右击“我的电脑”--“远程”--勾选“允…...

i深圳网站建设/营销型网站的公司

p9 svn配置多仓库与权限控制...

佛教网站大全网/办理培训机构需要具备的条件

1、在Java中&#xff0c;没有goto语句。因为大量使用goto语句会降低程序的可读性和可维护性&#xff0c;所以Java语言取消了goto的使用。同时&#xff0c;为了避免程序员自行使用goto所带来的混乱&#xff0c;Java语言仍将goto定义为一个关键字&#xff0c;但是没有定义任何语法…...

为什么很多公司没自己的网站/百度seo哪家公司好

创建容器时指定网络模式 docker run -d -p 外部访问端口:容器内端口 --net"网络模式" -v 本机目录:容器内目录 --name"容器名称" 镜像名 要执行的角本 docker ps 查看启动的容器列表 docker ps -a 查看所有的容器列表 docker start 容器名称 …...

备案域名买卖/竞价关键词优化软件

HTTP Servlet继承了GencenServlet类 GencenServlet实现了两个接口一个用于ServletConfig设置接口&#xff0c;一个为Servlet接口只要是(1) init() 方法 控制Servlet的生命周期重点记忆8个方法HTTP Servlet 使用一个 HTML 表格来发送和接收数据。要创建一个 HTTP Servlet&…...