2014年4月12日

delphi实现二分查找

摘要: 假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。重复以上过程,直到找到满足条件的记录,使查找成功,或直到子表不存在为止,此时查找不成功。条件:数组必须先排好序优点:查找速度快,适用于不经常变动频繁查找的有序列表缺点:插入删除困难假设其数组长度为n,其算法复杂度为o(log(n))实现:function TForm1.binarySearch(a: array of Integer;n:Integer): Integer; 阅读全文

posted @ 2014-04-12 23:57 小提提 阅读(598) 评论(0) 推荐(1)

windows消息函数

摘要: BroadcastSystemMessage将一条系统消息广播给系统中所有的顶级窗口GetMessagePos取得消息队列中上一条消息处理完毕时的鼠标指针屏幕位置GetMessageTime取得消息队列中上一条消息处理完毕时的时间PostMessage将一条消息投递到指定窗口的消息队列PostThreadMessage将一条消息投递给应用程序RegisterWindowMessage获取分配给一个字串标识符的消息编号ReplyMessage答复一个消息SendMessage调用一个窗口的窗口函数,将一条消息发给那个窗口SendMessageCallback将一条消息发给窗口SendMessag 阅读全文

posted @ 2014-04-12 01:07 小提提 阅读(180) 评论(0) 推荐(0)

2014年4月10日

判断磁盘类型

摘要: 需要用到的函数:判断磁盘类型UINT GetDriveType(LPCTSTR lpRootPathName // root directory);参数说明lpRootPathName 包含了根目录路径的字符串指针返回值Long,如驱动器不能识别,则返回零。如指定的目录不存在,则返回1。如执行成功,则用下述任何一个常数指定驱动器类型:返回值说明DRIVE_UNKNOWN未知的磁盘类型DRIVE_NO_ROOT_DIR说明lpRootPathName是无效的DRIVE_REMOVABLE可移动磁盘DRIVE_FIXED固定磁盘DRIVE_REMOTE网络磁盘DRIVE_CDROM光驱DRIVE_ 阅读全文

posted @ 2014-04-10 21:52 小提提 阅读(225) 评论(0) 推荐(0)

2014年4月9日

Windows编程之提权2

摘要: 实现打开程序自动关机:需要用到的函数BOOL ExitWindowsEx(UINT uFlags, // 关闭参数DWORD dwReserved // 系统保留,一般取0);uFlags说明EWX_FORCE强制终止进程。EWX_LOGOFF关闭所有进程,然后注销用户。EWX_POWEROFF关闭系统并关闭电源。该系统必须支持断电。EWX_REBOOT关闭系统,然后重新启动系统。EWX_SHUTDOWN关闭系统,安全地关闭电源。所有文件缓冲区已经刷新到磁盘上,所有正在运行的进程已经停止。(Windows要求:Windows NT中:调用进程必须有SE_SHUTDOWN_NAME特权。Wind 阅读全文

posted @ 2014-04-09 01:19 小提提 阅读(293) 评论(0) 推荐(1)

2014年4月7日

Windows编程之提权

摘要: 最近工作有点忙,学习进度会减慢, 整理了一下要用到的函数,下次开始写程序测试。OpenProcessToken函数OpenProcessToken用来打开与进程相关联的访问令牌BOOL OpenProcessToken(__in HANDLE ProcessHandle, //要修改访问权限的进程句柄__in DWORD DesiredAccess, //指定你要进行的操作类型__out PHANDLE TokenHandle //返回的访问令牌指针);TOKEN_PRIVILEGES结构体typedef struct _TOKEN_PRIVILEGES { DWORD PrivilegeCo 阅读全文

posted @ 2014-04-07 00:20 小提提 阅读(408) 评论(0) 推荐(0)

2014年4月3日

oracle数据库

摘要: 表Abm name表 B accounttype limit需求: 实现表A中bm 与 表B 中accounttype 字段保持数据一致性(增删改) 触发器:create or replace trigger zd_br_kind_TRGafter insert or update or delete on zd_br_kind for each rowbegin if inserting then insert into gf_receipt_limit(accounttype) values(:new.bm); elsif deleting then delete fr... 阅读全文

posted @ 2014-04-03 10:50 小提提 阅读(145) 评论(0) 推荐(1)

2014年4月2日

汇编语言

摘要: 用文本编辑器编写 asm文件通过masm编译成obj文件link后生成exe 可执行文件通过debug 查看 exe文件 执行结果如下:assume cs:codesg ; 代码段 程序长度 cx=16(字节) codesg segmentstart: mov ax,2000h ; --> ax=2000h mov ss,ax ; --> ss=2000h mov sp,0 add sp,10 ; --> sp=Ah pop ax ; --> ... 阅读全文

posted @ 2014-04-02 22:40 小提提 阅读(168) 评论(0) 推荐(0)

2014年3月30日

第一天

摘要: 第一天加入博客园,以后会记录每天的学习情况。 阅读全文

posted @ 2014-03-30 19:31 小提提 阅读(119) 评论(1) 推荐(0)

导航