C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。C++是在C语言的基础上开发的一种面向对象编程语言,应用广泛。C++支持多种编程范式 --面向对象编程、泛型编程和过程化编程。
文章浏览阅读3.7w次,点赞5次,收藏4次。完整错误信息错误 7 未能加载文件或程序集“System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”或它的某一个依赖项。系统找不到指定的文件。 行 123,位置 5。 F:CsProjectsCSharp实现SPY++CSharp实现SPY++PropertiesResour_python调用dll时未能从程序集“system.runtime, version=4.0.0.0, culture=neutra
文章浏览阅读4.3k次,点赞4次,收藏3次。Windows APIWindows 这个多作业系统除了协调应用程序的执行、分配内存、管理资源…之外, 它同时也是一个很大的服务中心,调用这个服务中心的各种服务(每一种服务就是一个函数),可以帮应用程式达到开启视窗、描绘图形、使用周边设备等目的,由于这些函数服务的对象是应用程序(Application), 所以便称之为 Application Programming Interface,简称 API_c# flashwindow
文章浏览阅读2.4w次,点赞3次,收藏14次。c#通过纯代码创建桌面快捷方式、创建程序菜单项、将网页添加到收藏夹本文章源代码Src下载地址:http://download.csdn.net/detail/testcs_dn/5141580开始菜单》程序菜单项:添加到收藏夹: 相关函数代码:public const int SW_SHOWNORMAL = 1; /// /_c# 创建快捷方式并添加到开始菜单程序目录
文章浏览阅读3.4k次,点赞2次,收藏2次。为什么有第二版  首先感谢 jenlynn 同学的留言“DATA URL两种生成方式,C#和HTML5 两者同一张生成的base64编码貌似不一样,能有什么方法让他们达成一致吗”。  其次,在研究这个问题时发现了Bug和异常。 Bug:图片编码判断问题,不管什么扩展名的都默认使用了PNG编码。 异常:检测到 ContextSwitchDeadlock界面预览针对相关问题的改进方法图片编码判断问题_c# dataurlmaker
文章浏览阅读2.8w次,点赞6次,收藏22次。Windows APIWindows 这个多作业系统除了协调应用程序的执行、分配内存、管理资源…之外, 它同时也是一个很大的服务中心,调用这个服务中心的各种服务(每一种服务就是一个函数),可以帮应用程式达到开启视窗、描绘图形、使用周边设备等目的,由于这些函数服务的对象是应用程序(Application), 所以便称之为 Application Programming Interface,简称 API_c# 获取桌面句柄
文章浏览阅读5.7k次。C# Winform程序的toolStrip中toolStripButton的背景是蓝色的,如何改变背景及边框的颜色和样式呢?实现此功能需要重写toolStripButton的Paint方法这里只是给出解决问题的思路和方法,如下图,当鼠标移到按钮上,背景会变为黑色实现代码如下: ToolStripButton tsb = (ToolStripButton)sender;_c# toolstripbutton控件 鼠标在上 变色
文章浏览阅读4.8k次。在使用QQ的截图功能的时候,是不是觉得它的光标很酷呢?今天就说一下怎么应用自定义光标,在我们的截图工具中使用QQ截图的光标。打开资源:切换到文件资源视图:打开资源文件目录,将光标文件复制到此目录下:选中Resources目录,刷新,显示出刚刚复制进来的光标文件:选中光标文件,拖动到资源的文件视图中:资源资源名称中的单词第一个字母改为大写。光标预览:在Form1类中添加私有变量:_如何替换qq截图的光标
文章浏览阅读1.3w次。为了将问题描述清楚,我们先来看一个例子。在这个例子中,WinForm上有一个按钮,当用户点击这个按钮后,就会装载一个已经存在的Assembly,并且在界面的Label控件上显示出这个Assembly的FullName。对Reflection稍微熟悉一点的朋友都知道,这是非常简单的事情,只需要用Assembly.LoadFile方法获得Assembly,然后用FullName属性来显示即可,比如下面_c# appdomain卸载assembly
文章浏览阅读3k次。最近在研究c#局部刷新重绘的功能,来提高用户体验,但是在OnPaint事件中接收到的e.ClipRectangle和我在其它方法中调用mainForm.Invalidate(cutOutRect, false);时传递的大小不一致,经过一番排查才发现,是Windows底层做了处理!!!!我们来看图1:上面是调用mainForm.Invalidate(cutOutRect, false);前输出的信_c# e.cliprectangle
文章浏览阅读3.1w次,点赞11次,收藏46次。C#多线程编程实例 线程与窗体交互代码: public partial class Form1 : Form { //声明线程数组 Thread[] workThreads = new Thread[10]; public Form1() { InitializeComponent();_c#线程数组
文章浏览阅读9.1k次,点赞5次,收藏13次。C#软件开发实例.私人订制自己的屏幕截图工具(二)创建项目、注册热键、显示截图主窗口实现热键功能这里需要使用WindowsAPI注册热键:RegisterHotKey该函数定义一个系统范围的热键。函数原型:BOOL RegisterHotKey(HWND hWnd,int id,UINT fsModifiers,UINT vk);取消热键注册:UnregisterHotKey该函数释放调用线程先前登记的热键。获取热键ID:GlobalAddAtom只适用于桌面应用程序。向全局原子表添加一个_获取热键id
文章浏览阅读5.2k次。由于在实现的时候偷了个赖,没有使用主窗体的区域重绘技术,而是使用一个Label组件来展现截取的图片区域,所以在拖拽将截取区域变小或者是反向截图的时候,闪烁及卡顿的现象会比较严重,这里针对这两个问题对行一些针对性的优化。启用双缓冲 public Form1() { InitializeComponent(); //_c#自定义截屏时卡顿
文章浏览阅读1.3w次,点赞9次,收藏12次。实现原理:基本截图的功能主要靠响应主窗体的鼠标按下、鼠标移动、鼠标抬起几个事件的功能来实现的。截取的图片区域使用“Label”组件来显示,需要重新实现“Label”组件的“Paint”方法。左键单击开始截图,右键单击取消截图,双击鼠标左键完成截图,将截取的图片保存到Windows剪贴板中。_c# 区域截图 实例下载
文章浏览阅读1.2w次,点赞7次,收藏33次。本实例全部文章目录(一)功能概览(二)创建项目、注册热键、显示截图主窗口(三)托盘图标及菜单的实现(四)基本截图功能实现(五)针对拖拽时闪烁卡顿现象的优化(六)添加配置管理功能(七)添加放大镜的功能(八)添加键盘操作截图的功能(九)使用自定义光标,QQ截图时的光标(十)在截图中包含鼠标指针形状概述开发该软件的原因主要是想订制实现自己想要的功能,..._c#截屏包含鼠标图代码
文章浏览阅读2.6w次,点赞6次,收藏7次。概述添加托盘图标功能主要是为了添加菜单功能,可以通过托盘图标来管理程序;托盘菜单包括“打开保存目录、录制Flash动画、录制GIF动画、延时5秒截图、截图、设置、退出”等功能。系统托盘系统托盘是个特殊区域,通常在桌面的底部,在那里,用户可以随时访问正在运行中的那些程序。在微软的Windows里,系统托盘常指任务栏的状态区域;在Gnome的桌面时,常指布告栏区域;在KDE桌面时,指系统托_notifyicon1.icon = properties.resources.
文章浏览阅读246次。异步委托主要用于解决ThreadPool.QueueUserWorkItem没有提供获取线程执行完成后的返回值问题
文章浏览阅读246次。在日常开发中,我们经常会用到命令行参数,比如cmd下的各种指令;还有C#的控制台类型的项目,在默认入口Main函数中,那个args参数,就是有系统传入到程序进程的命令行参数;在C#的技术栈中可以使用System.CommandLine这个专门的命令行参数解析库来实现。老规矩通过NuGet获取该类库:需要说明的是由于项目还是处于beta状态,所以要把包括预发型版选项勾起来才能找到。
文章浏览阅读378次。日常用法就是爬虫获取到内容后,先用XPath获取目标节点,再用正则进行匹配;使用XPath的目的主要是将目标节点或内容限定在一个较小的范围,如果一上来就用正则那效率肯定不行,因为正则的规则设计耗时较长;而XPath直接可以用浏览器F12开发者工具窗口,鼠标右键复制XPath获得,非常方便。但在微观内容的操作上XPath就显得太粗糙了,这时候就需要用正则来匹配,由于范围已经用XPath做过了筛选,所以此时的正则规则的设计要考虑的就很少了。
文章浏览阅读707次。C# 执行Excel VBA宏工具类_c# excel 宏
文章浏览阅读386次。CSV文件采用纯文本的存储形式,字段间以分隔符进行区分,行之间以换行符进行切换,既可以用文本编辑器打开也可以用Excel编辑,可读性非常好,在游戏开发领域经常将其作为数值配置文件使用。文本编辑器推荐EmEditor,轻巧而不失强大,策划们用的爱不释手。程序将配置反序列化后,装箱成对象列表,就可以随意访问和操作了。_c# csv 转list集合泛型对象
文章浏览阅读469次,点赞4次,收藏2次。雪花算法主要用于解决分布式系统的唯一Id生成问题,在生产环境中可以部署一个单独的服务来运行雪花算法,然后通过请求该服务获取全局Id。
文章浏览阅读686次,点赞13次,收藏8次。使用Task类来控制多线程的同步执行,可应用于多任务分发执行后,再做归并处理。Tas既拥有线程池的优点,同时也解决了使用ThreadPool不易控制的弊端;可以非常简便并可靠地实现多线程的顺序执行。
文章浏览阅读714次。由于C#中生成随机数使用的算法是线性同余法,意味着得出的是伪随机数,直接调用Random类来生成,出现重复数值的概率非常高
文章浏览阅读803次,点赞21次,收藏14次。在.Net的System.Net.Sockets 命名空间中包含托管的跨平台套接字网络实现。 System.Net 命名空间中的所有其他网络访问类均建立在套接字的此实现之上。
文章浏览阅读534次,点赞14次,收藏7次。如何将Pipelines类库运用到Socket通讯过程中来解决粘包和分包
文章浏览阅读914次。在导出Excel文件的时候,为了防止文件内容被篡改,这时候就需要对Excel设置工作簿保护和工作表保护
文章浏览阅读539次。正则表达式在文本处理领域号称是神的语言,在主流的编程语言中是标配特性,对字符串的操作来说,无论是匹配还是替换都绕不开它
文章浏览阅读257次。Task Parallel Library 是微软.NET框架基础类库(BCL)中的一个,主要目的是为了简化并行编程,可以实现在不同的处理器上并行处理不同任务,以提升运行效率。Parallel常用的方法有For/ForEach/Invoke三个静态方法
文章浏览阅读335次,点赞3次,收藏3次。用WinForm做RPA项目时经常需要模拟鼠标操作,通过调用Windows Api 可以实现控制鼠标的移动、点击以及滚轮滚动,做到跟人工一样的操作_c#模拟鼠标点击
文章浏览阅读492次。在WinForm开发中,经常会碰到主线程代码运行过程中需要刷新窗体控件的情况,如果直接在其他线程中去操作窗体控件,这时会抛出线程间操作无效的异常信息,因为窗体控件是由主线程创建的,C#强制要求代码必须是线程安全的,所以不允许跨线程访问。需要使用控件的Invoke方法,通过拥有控件的基础窗口句柄的线程来执行。