文章分类 - 实现方法
摘要:Delphi中有一个EncdDecd单元,uses 它,以下的函数出自这个单元 1.用TBitmap对象Load图片 TBitmap.LoadFromFile 2.把TBitmap存入一个Stream中 TBitmap.SaveToStream(mapStream) 3.把图片流进行base64编码,生成一个字符串流 EncodeStream(Input, Output: TStream) ...
阅读全文
摘要:SetWindowLong(edtSockPort.Handle, GWL_STYLE, GetWindowLong(edtSockPort.Handle, GWL_STYLE) or ES_NUMBER);
阅读全文
摘要:procedureTForm2.btn1Click(Sender:TObject);vararr1,arr2:TBytes;len:Integer;beginSetLength(arr1,3);SetLength(arr2,3);arr1[0]:=65;arr1[1]:=66;arr1[2]:=67;arr2[0]:=68;arr2[1]:=69;arr2[2]:=70;len:=Length(a...
阅读全文
摘要:有时候需要根据类名来建立类的实例,比如把类名存于数据库,然后在程序中根据数据库中的内容建立不同的窗体,下面的例子可以实现这个需求.unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Controls, StdCtrls,Forms;type TForm1 = class(TForm) Button1: ...
阅读全文
摘要:《制作“浮动窗”心得》最近编了一个软件,无敌剪贴板,为了使其功能更多,于是我想到了加入netants,flashget之类的浮动窗,选中网页上的字,然后拖入浮动窗,一开始我不知道怎样制作,于是开始查葵花宝典,试了试,在我的系统(win2000)下根本行不通,在任务栏上有按钮,于是我又去论坛搜索,询问别人,谁知众说纷纭,我挨个的试,最后终于让我找到了自己的答案(集众人所长,加...
阅读全文
摘要:技术要点: 一、使用SHGetFileInfo函数获取指定扩展名的文件图标。需要引用ShellAPI单元。 二、使用TStringList来保存扩展名与其图标的索引号。当添加一个文件名至TListView后,我们已经取得了其图标,再次添加同样扩展名的文件时,不需再次获取其图标,只要从该TStringList中取得其图标索引号即可。 uses ShellAPI; var IconList:TSt...
阅读全文
摘要:在GIS应用中常常面对海量数据和有限的PC平台之间的矛盾,为此许多人设计了各种各样的数据索引和抽取机制,来实现低端PC访问海量数据之需;其实在Windows平台下,API提供了一种FileMapping机制来实现将文件映射到虚拟内存中,在内存中生成一个字节流指针(byte*)供程序访问,其实这个字节流指针没有占用到一点物理内存,而只是磁盘文件在虚拟内存中的一个映象,这样,就可以节省很多的内存空间;...
阅读全文
摘要:{CopyRight (c) 2006.10.27 咏南工作室ToDo: 使用DLL封装企业业务逻辑作者: 陈新光 QQ: 254072148邮箱: hnxxcxg@yahoo.com.cn}{界面部分和业务部分物理分离。将业务部分和界面部分分别编译成dll和exe可执行文件。定义一个接口部分以实现界面部分和业务部分之间通讯。接口部分可使用接口或抽象类来实现。一定要保持接 口的稳定,轻易不要改变接...
阅读全文
摘要:资料来源于 DFW 离线包:=====================================================================一.方法lich (2003-10-30 22:16:00)前言:如果你的程序中使用了 COM对象或者 OCX控件,发布程序的时候必须带上相关的 DLL文件或者 OCX文件,同时还需要注册到系统中,如果我想让我的程序 Copy &am...
阅读全文
摘要:有个需求是把一个DLL作为数据打包到EXE中,运行的时候动态加载.但要求不是释放出来生成DLL文件加载.花了一天时间做出来.效果还可以.不过由于是直接分配内存加载DLL的.有一些小缺陷.例如遍历进程中加载的模块的时候是找不到这个DLL的.GetModuleXXXX之类的API也就不能用了.当然也可以Hook这些函数做处理.不过便利不到这个模块也未必不是一个优点.例如写木马黑客之类的代码的时候,可以...
阅读全文
摘要:一、最为古老的DLL注入方法。虽说古老,但也经历了不少变动,最初的win9X的系统没有Psapi,没有进程快照,所以一般是三级跳。跳啊跳……NT下可以直接用 OpenProcess打开进程(打不开的话,提权到Debug权限),利用LoadLibrary,并且申请远程地址空间,然后把DLL注入到目标 EXE进程当中,可谓省时省力,这也是目前应用作为普遍的方法之一。典型代码...
阅读全文