ÓÃdelphi ÔÚWordÉÏÃæÔö¼ÓÒ»¸ö°´Å¥
н¨Ò»¸öActive Library
2. н¨Ò»¸öCOM Object£¬ÔÚClass NameÌîÒ»¸öÃû×Ö£¬ÈçTest¡£
µãÒ»ÏÂImplemented InterfaceºóÃæµÄList°´Å¥¡£ÔÙµãһ϶Ի°¿òÖеÄAdd Library°´Å¥£¬
Ñ¡Ôñ“Program Files\Common Files\Designer”Ŀ¼ÏµÄmsaddndr.dllÎļþ¡£
È»ºóÔÚÁбíÖÐÕÒµ½msaddndr.dllÀïÃæµÄ_IDTExtensibility2½Ó¿Úµã»÷È·¶¨¡£
3. ÏÖÔÚCom AddIn²¿·ÖÒѾÍê³É£¬ÏÖÔÚÒªÔÚWordÀïÃæ¼ÓÒ»¸öCommandBarºÍÒ»¸ö°´Å¥£¬²¢ÇÒÈð´Å¥ÏìӦʼþ¡£
4. ´´½¨Ò»¸öTcommandBarButtonµÄOleServerÀàÒÔÁ¬½Óµ½CommandButton²¢ÏìӦʼþ¡£´úÂ룺ÈçÏÂ
¶¨Ò岿·Ö
TCommandBarButtonClick = procedure(const Ctrl: OleVariant; var CancelDefault: OleVariant) of Object;
TCommandBarButton = class(TOleServer)
private
FIntf: CommandBarButton;
FOnClick: TCommandBarButtonClick;
function GetDefaultInterface: CommandBarButton;
procedure SetOnClick(const Value: TCommandBarButtonClick);
protected
procedure InitServerData; override;
procedure InvokeEvent(DispID: TDispID; var Params: TVariantArray); override;
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
procedure Connect; override;
procedure ConnectTo(svrIntf: CommandBarButton);
procedure Disconnect; override;
property DefaultInterface: CommandBarButton read GetDefaultInterface;
published
property OnClick : TCommandBarButtonClick read FOnClick write SetOnClick;
end;
ʵʩ²¿·Ö
{ TCommandBarButton }
procedure TCommandBarButton.Connect;
var
punk: IUnknown;
begin
if FIntf = nil then
begin
punk := GetServer;
ConnectEvents(punk);
Fintf:= punk as CommandBarButton;
end;
end;
procedure TCommandBarButton.ConnectTo(svrIntf: CommandBarButton);
begin
Disconnect;
FIntf := svrIntf;
ConnectEvents(FIntf);
end;
constructor TCommandBarButton.Create(AOwner: TComponent);
begin
inherited;
end;
destructor TCommandBarButton.Destroy;
begin
inherited;
end;
procedure TCommandBarButton.Disconnect;
begin
if Fintf <> nil then
begin
DisconnectEvents(FIntf);
FIntf := nil;
end;
end;
function TCommandBarButton.GetDefaultInterface: Com
Ïà¹ØÎĵµ£º
Uses Tlhelp32;
//ÓÃListboxÏÔʾ·½·¨
procedure TForm1.Button1Click(Sender: TObject);
var
lppe:TProcessEntry32;
found:boolean;
Hand:THandle;
begin
Hand:=CreateToolhelp32Snapshot(TH32CS_SNAPALL,0);
lppe.dwSize := Sizeof(lppe); //³õʼ»¯
found:=Process32First(Hand,lppe);
......
Ò»¡¢KOLÊÇʲô?KOLÄÜ×öʲô? MCKÊÇʲô?MCKÄÜ×öʲô?
KOLÊÇÒ»Ì×¶ÔÏó¿â£¬Ãâ·Ñ¶øÇÒ¿ª·ÅÔ´´úÂ룬´ó¼Ò¿ÉÒÔhttp://www.kolmck.net/È¥ÏÂÔØµ½
Ëü¡£ËüÄܹ»Ê¹Delphi±à³ö³ß´ç·Ç³£Ð¡µÄ32λWindowsͼÐÎÓû§½çÃæµÄÓ¦ÓóÌÐò¡£
Ŀǰ֧³ÖµÄDelphi°æ:Delphi6,Delphi5,Delphi4,Delphi3ºÍDelphi2¡£
ʹÓÃKOLÔÚD2-D5ÖбàдµÄ×îСͼÐνçÃæ³ÌÐò ......
ǰÑÔ
¾¡ÈýÄêÀ´£¬±¾ÈËÂ½ÐøÐ´ÁËÁùÊ®¶àƪBOLOÎÄÕ£¬ÆäÖоø´ó²¿·ÖÊÇÓйØÍ¼Ïñ´¦ÀíµÄ£¬Òò´Ë£¬ÓÐÈËÏ·³ÆÎÒΪͼÏñ´¦Àíר¼Ò£¨»òGDI+ר¼Ò£©£¬´ËÏ·³Æµ±È»ÊǶÔÎÒµÄÔÞÑµ«ÎÒ×Ô¼ºÈ´¾õµÃÂÔº¬Ò»Ë¿Ë¿±áÒ壬¼´³ýÁËͼÏñ´¦Àí£¬±ðµÄ·½Ã棨ÈçÍøÂç¡¢Êý¾Ý¿âµÈ£©¶¼²»Õ¦µÄ£¬ÊÂʵҲȷʵÈç´Ë¡£
ÎÒÊÇÒ»Ãû»ú¹Ø¹¤ ......
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, OleCtrls, SHDocVw;
t ......
1.1¡¢¼¤»î
var doc,url:Olevariant ;
begin
url:='about:blank' ;//»òÕßÒ»¸öÓÐʵ¼ÊÒâÒåµÄurl
WebBrowser1.Navigate2(url);//ÕâÑù¾Í¼¤»îÁË£¡
end;
1.2¡¢Ð´HTML´úÂë
var doc:Olevariant ;
s:string;
begin
doc:=WebBrowser1.Document;
doc.clear;//Çå³þÔµÓÉÄÚÈÝ£¬ÒÔ±ãдÐÂÄÚÈÝ
doc.write('<html>');
//ÆäË ......