createprocess创建进程并获取进程窗口HWND,不管窗口是否在显示状态都可以获取。
2024/7/13 21:36:30 2KB 进程ID HWND
1
用易语言写的一个正则替换小工具,把按键精灵录制的脚本转换为后台使用的脚本:支持转换为按键大漠语句、易语言大漠语句、Bkgnd插件后台语句例如:把语句MoveTo464,396转换为CallPlugin.Bkgnd.MoveTo(Hwnd,454,386)这是最新免注册414版比2.3001版改进了很多!
2024/1/19 14:12:33 1.33MB 易语言 前台脚本 后台脚本 按键精灵
1
动态效果,黑客帝国#include#defineID_TIMER1#defineSTRMAXLEN25//一个显示列的最大长度#defineSTRMINLEN8//一个显示列的最小长度LRESULTCALLBACKWndProc(HWND,UINT,WPARAM,LPARAM);typedefstructtagCharChain//整个当作屏幕的一个显示列,这是个双向列表{structtagCharChain*prev;//链表的前个元素TCHARch;//一个显示列中的一个字符structtagCharChain*next;//链表的后个元素}CharChain,*pCharChain;typedefstructtagCharColumn{CharChain*head,*current,*point;intx,y,iStrLen;//显示列的开始显示的x,y坐标,iStrLen是这个列的长度intiStopTimes,iMustStopTimes;//已经停滞的次数和必须停滞的次数,必须停滞的次数是随机的}CharColumn,*pCharColumn;/***********************/........................................
2023/11/24 9:22:47 9KB 特效C语言
1
delphi微软手写输入法源码interfaceusesWindows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,Dialogs,OleServer,MSINKAUTLib_TLB,ExtCtrls,StdCtrls,MSINKAUTLib;typeTForm1=class(TForm)InkCLT:TInkCollector;Memo1:TMemo;Panel1:TPanel;Button1:TButton;InkRecognizerContext1:TInkRecognizerContext;procedureFormCreate(Sender:TObject);procedureInkCLTStroke(ASender:TObject;constCursor:IInkCursor;constStroke:IInkStrokeDisp;varCancel:WordBool);procedureButton1Click(Sender:TObject);private{Privatedeclarations}public{Publicdeclarations}end;varForm1:TForm1;implementation{$R*.dfm}procedureTForm1.FormCreate(Sender:TObject);beginInkCLT.hWnd:=panel1.Handle;InkCLT.Enabled:=true;InkCLT.DefaultDrawingAttributes.Color:=clRed;//墨水颜色InkCLT.DefaultDrawingAttributes.Width:=200;//笔的宽度end;procedureTForm1.InkCLTStroke(ASender:TObject;constCursor:IInkCursor;constStroke:IInkStrokeDisp;varCancel:WordBool);beginMemo1.Lines.Clear;Memo1.Lines.Add(Stroke.Ink.Strokes.ToString);end;procedureTForm1.Button1Click(Sender:TObject);beginInkCLT.Ink.DeleteStrokes(InkCLT.Ink.Strokes);Panel1.Refresh;end;end.
2023/8/17 20:53:57 9.38MB 手写输入法
1
用易语言写的一个正则替换小工具,把按键精灵录制的脚本转换为后台使用的脚本:支持转换为按键大漠语句、易语言大漠语句、Bkgnd插件后台语句例如:把语句MoveTo464,396转换为CallPlugin.Bkgnd.MoveTo(Hwnd,454,386)这是最新免注册414版比2.3001版改进了很多!
2016/5/13 18:10:12 1.33MB 易语言 前台脚本 后台脚本 按键精灵
1
CSerialPortFirstVersionbyRemonSpekreijseon2000-02-08http://www.codeguru.com/cpp/i-n/network/serialcommunications/article.php/c2483/A-communication-class-for-serial-port.htmSecondVersionbymrlongon2007-12-25https://code.google.com/p/mycom/增加ClosePort增加WriteToPort两个方法增加SendData与RecvData方法byliquanhaion2011-11-04http://blog.csdn.net/liquanhai/article/details/4955253增加ClosePort中交出控制权,防止死锁问题byliquanhaion2011-11-06http://blog.csdn.net/liquanhai/article/details/6941574增加ReceiveChar中防止线程死锁byviruscampon2013-12-04https://github.com/viruscamp/CSerialPort增加IsOpen判断能否打开修正InitPort中parityOddEven参数取值错误修改InitPort中portnr取值范围,portnr>9时特殊处理取消对MFC的依赖,使用HWND替代CWnd,使用win32thread函数而不是MFC的增加用户消息编号自定义,方法来自CnCommbyitas109on2014-01-10http://blog.csdn.net/itas109/article/details/18358297解决COM10以上端口无法显示的问题扩展可选择端口,最大值MaxSerialPortNum可以自定义添加QueryKey()和Hkey2ComboBox两个方法,用于自动查询当前有效的串口号。
byliquanhaion2014-12-18增加一些处理措施,主要是对减少CPU占用率byitas109on2016-05-07http://blog.csdn.net/itas109修复每次打开串口发送一次,当串口无应答时,需要关闭再打开或者接收完数据才能发送的问题。
解决办法:在m_hEventArray中调整m_hWriteEvent的优先级高于读的优先级。
CommThread(LPVOIDpParam)函数中读写的位置也调换。
参考:http://zhidao.baidu.com/link?url=RSrbPcfTZRULFFd2ziHZPBwnoXv1iCSu_Nmycb_yEw1mklT8gkoNZAkWpl3UDhk8L35DtRPo5VV5kEGpOx-Gea修复停止位在头文件中定义成1导致SetCommState报错的问题,应为1对应的停止位是1.5。
UINTstopsbits=ONESTOPBITswitch(stopbits)和switch(parity)增加默认情况,增强程序健壮性byitas109on2016-06-22http://blog.csdn.net/itas109增加ReceiveStr方法,用于接收字符串(接收缓冲区有多少字符就接收多少字符)。
解决ReceiveChar只能接收单个字符的问题。
byitas109on2016-06-29http://blog.csdn.net/itas109解决RestartMonitoring方法和StopMonitoring方法命令不准确引起的歧义,根据实际作用。
将RestartMonitoring更改为ResumeMonitoring,将StopMonitoring更改为SuspendMonitoring。
增加IsThreadSuspend方法,用于判断线程能否挂起。
改进ClosePort方法,增加线程挂起判断,解决由于线程挂起导致串口关闭死锁的问题。
增加IsReceiveString宏定义,用于接收时采用单字节接收还是多字节接收byitas109on2016-08-02http://blog.csdn.net/itas109https://github.com/itas109改进IsOpen方法,m_hComm增加INVALID_HANDLE_VALUE的情况,因为CreateFile
2021/9/12 2:07:30 19KB CSerialPort 串口类 串口
1
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡