fanybupt

日出而作,日入而息,凿井而饮,耕田而食,帝力于我何有哉?

导航

2012年5月4日

摘要: function GetSysFuncAddr(AFunc: Pointer): Integer;begin asm mov eax, AFunc add eax, 2 mov eax, [eax] mov eax, [eax] mov Result, eax end;end; procedure GetRemoteCommandLine(ABuf: PChar;... 阅读全文

posted @ 2012-05-04 18:10 fanybupt 阅读(434) 评论(0) 推荐(0)

摘要: unit ToolTip;interfaceuses SysUtils, Classes, Graphics, Controls, Windows, CommCtrl;type TIconType = (titNONE, titINFO, titWARNING, titERROR, titINFOLARGE, titWARNINGLARGE, titERRORLARGE); TToo... 阅读全文

posted @ 2012-05-04 18:04 fanybupt 阅读(429) 评论(0) 推荐(0)

摘要: 注意事项一个表如果建有大量索引会影响 INSERT、UPDATE、DELETE 和 MERGE 语句的性能,因为当表中的数据更改时,所有索引都须进行适当的调整。测试1:CREATE TABLE [dbo].[TEST]( [ID] char(36) not NULL, [Index] [int] NULL, [Data] [int] NULL ) DECLARE @i INT select GETDATE() SET @i=0 WHILE @i<1000000 BEGIN INSERT INTO [TEST] ([ID],[Index],[Data]) SELECT cast(NewID 阅读全文

posted @ 2012-05-04 17:59 fanybupt 阅读(409) 评论(0) 推荐(0)

摘要: 1、索引扫描和表扫描索引扫描就是先查找索引,然后再读取索引对应的数据表扫描则是直接在数据页上面查找数据在查找数据占表中总数据量百分比很小的情况下,索引的优势是很大的,然而,如果需要取出表中绝大部分的数据,那索引将会消耗更多的资源简单的理解就是:如果我们只想知道某个单词的意思,那么我们使用目录找到那个单词就行了,如果我们想要顺着词典背诵单词,再通过目录那就是在犯傻了。2、聚集索引和非聚集索引聚集索引在一个表中只能建立一个,其顺序与数据库表中顺序一致非聚集索引在一个表中可以建立多个,其顺序和数据表存储顺序不一样简单的理解就是:一本词典可以按照拼音进行查找,也可以按照部首进行查找,拼音查找就扮演了聚 阅读全文

posted @ 2012-05-04 17:57 fanybupt 阅读(210) 评论(0) 推荐(0)

摘要: 1、JOIN 的执行时机 select * from xm, orgselect * from xm join org on xm.xmid=org.xmid书中所说的顺序为两表会先进行笛卡尔连接,然后从连接后的虚拟表中应用过滤条件,去除不需要的行 查看执行计划发现,SQLServer并没有按照预想的方式进行执行,而是在连接的时候就进行过滤, 对于外连接,也不是在连接后再插入外部行,而是使用特殊的运算符执行外连接 重绕 select * from xm, org执行计划中包含一个运算符SPool用于优化重绕,那么重绕是指什么呢? 重绕实际上是对于需要两个输入的运算符,第一个输入在对第二个输入. 阅读全文

posted @ 2012-05-04 17:55 fanybupt 阅读(143) 评论(0) 推荐(0)

摘要: function EnablePriv: Boolean;var hToken: THandle; tkpNew, tkpOld: TTokenPrivileges; dwLen: DWORD;begin Result := False; if (OpenProcessToken(GetCurrentProcess(),TOKEN_ADJUST_PRIVILEGES, &hToke... 阅读全文

posted @ 2012-05-04 17:37 fanybupt 阅读(170) 评论(0) 推荐(0)

摘要: function OpenAs_RunDLL(const AWND1, AWND2: HWND; const AFilename: PChar;AShow: Integer = SW_SHOW):integer; stdcall; external 'shell32.dll ';也可使用ShellExecute,lpOperation 设置为‘OpenAS’,不过这个不太好使,需要保证对应... 阅读全文

posted @ 2012-05-04 17:32 fanybupt 阅读(195) 评论(0) 推荐(0)

摘要: //uses OleDB, ComObj, ActiveX, ADOConst,DB, ADODB, ADOInt,SysUtils;function CreateADOObject(const ClassID: TGUID): IUnknown;var Status: HResult; FPUControlWord: Word;begin asm FNSTCW FPUControlWord end; Status := CoCreateInstance(ClassID, nil, CLSCTX_INPROC_SERVER or CLSCTX_LOCAL_SERVER, IUnknown, R 阅读全文

posted @ 2012-05-04 16:40 fanybupt 阅读(581) 评论(0) 推荐(0)

摘要: unit ProgressFrm;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, jpeg;type IProgress = interface ['{7AE77698-5497-44CD-8925-A33077147FD4}'] end; TProgressForm = class(TForm) lblmsg: TLabel; imgWait: TImage; end; TMyProgres 阅读全文

posted @ 2012-05-04 16:33 fanybupt 阅读(225) 评论(0) 推荐(0)

摘要: unit Everything;interfaceuses Windows; const EVERYTHING_OK= 0; EVERYTHING_ERROR_MEMORY=1; EVERYTHING_ERROR_IPC= 2; EVERYTHING_ERROR_REGISTERCLASSEX = 3; EVERYTHING_ERROR_CREATEWINDOW=4; EVERYTHING_ERROR_CREATETHREAD=5; EVERYTHING_ERROR_INVALIDINDEX= 6; EVERYTHING_ERROR_INVALIDCALL = 7; EverythingDLL 阅读全文

posted @ 2012-05-04 16:30 fanybupt 阅读(856) 评论(0) 推荐(0)

摘要: 1、层叠窗口Set objShell = CreateObject("Shell.Application") objShell.CascadeWindows2、平铺窗口Set objShell = CreateObject("Shell.Application") objShell.TileVertically3、最大化所有窗口set htmlfile=createobject("htmlfile")Set objWord = CreateObject("Word.Application") objword.Vis 阅读全文

posted @ 2012-05-04 12:09 fanybupt 阅读(179) 评论(0) 推荐(0)