DelphiÖÐÁ÷µÄʹÓ㨱ȽÏÈ«Ãæ£©
Delphi ÖÐÁ÷µÄʹÓÃ(1) Óà TMemoryStream(ÄÚ´æÁ÷) ÈëÃÅ
ǰÑÔ:
Ëùν"Á÷", ¾ÍÊÇÒ»¶ÎÊý¾Ý»òÊÇÒ»¿éÄÚ´æ;
ÔÚ½øÐÐÁ÷²Ù×÷ʱ, ÎÒÃDz»±Ø¹ØÐÄÁ÷ÖеÄÊý¾Ýµ½µ×ÊÇʲô; Ö»ÐèÒªÖªµÀÁ÷µÄ´óСºÍµ±Ç°µÄÖ¸ÕëλÖÃ. ËùÒÔÁ÷Ö»ÓÐÁ½¸öÊôÐÔ:
Size¡¢Position.
¶ÔÁ÷µÄ²Ù×÷, ²»¹ý¾ÍÊǶÁÈ¡ºÍдÈë. ËùÒÔÁ÷×îÖ÷ÒªµÄ·½·¨¾ÍÊÇ Read ºÍ Write.
ÔÚºÜ¶à¿Ø¼þµÄʹÓÃÖÐ, ¶ÁÈ¡Ö÷ÒªÓà LoadfromStream; дÈëÖ÷ÒªÓà SaveToStream.
¾Ù¸öÀý×Ó: (½¨Á¢Ð¹¤³Ì, Ìí¼ÓÁ½¸ö Memo¡¢Á½¸ö Button)
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Memo1: TMemo;
Memo2: TMemo;
Button1: TButton;
Button2: TButton;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormDestroy(Sender: TObject);
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
var
mStream: TStream; {ÉùÃ÷Ò»¸öÁ÷¶ÔÏó}
procedure TForm1.FormCreate(Sender: TObject);
begin
mStream := TMemoryStream.Create;
{TStream ÊdzéÏóÀà, Ö»ÄÜͨ¹ýÆä×ÓÀàʵÀý»¯; ÕâÀïÎÒÃÇÓÃÁËÄÚ´æÁ÷À´Éú³ÉʵÀý}
Memo1.Lines.Text := 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
{¸ø Memo1 ¸ö³õʼֵ}
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Lines.SaveToStream(mStream); {°Ñ Memo1 ÖеÄÄÚÈÝдÈëµ½Á÷}
ShowMessage(IntToStr(mStream.Size)); {26, µ±Ç°Á÷µÄ´óС}
ShowMessage(IntToStr(mStream.Position)); {26, µ±Ç°Á÷µÄÖ¸Õë}
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
mStream.Position := 4; {µ÷ÕûÁ÷µÄµ±Ç°Ö¸ÕëλÖÃ}
Memo2.Lines.LoadfromStream(mStream); {¶Á³öÁ÷ÖеÄÄÚÈݵ½ Memo2}
{
ÏÖÔÚ Memo2 ÖеÄÄÚÈÝÓ¦¸ÃÊÇ: EFGHIJKLMNOPQRSTUVWXYZ
Èç¹û Position ÊÇ 0, Memo2 ¶Á³öµÄÄÚÈÝ»áÊÇ: ABCDEFGHIJKLMNOPQRSTUVWXYZ
Èç¹û Position µÈÓÚ Size, ÔÚÕâÀïÈç¹ûÊÇ 26, Memo2 ¾Í¶Á²»³öʲôÁË.
}
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
mStream.Free; {Á÷ÊÍ·Åʱ, ËùÓÃÄڴ浱ȻҲ»áͬʱÊÍ·Å}
end;
end.
ÓÃTFileStream£¨Îļþ
Ïà¹ØÎĵµ£º
Ò»¡¢Dll½¨Á¢
£¨Ò»£©DLLÏîÄ¿µÄ½¨Á¢
library mydll;
uses
base in 'base.pas';
exports
Triple name 'Tr';
{$R *.res}
begin
end.
£¨¶þ£©º¯Êýµ¥Ôª
unit base;
interface
uses windows;
function Triple(N:integer):integer;stdcall;
  ......
delphiºÜÔç¾ÍÒѾ¿ÉÒÔ½øÐÐÈý²ãµÄ¿ª·¢ÁË. µ«Ò»Ö±µ½ÏÖÔÚ, ÍøÉÏÕâ·½ÃæµÄ¶«Î÷Ì«ÉÙ ÁË. Ҫô̫ÀÏ, ÉõÖÁ²»ÍêÈ«ÕýÈ·. ÀýÈç:
ÈçºÎ½øÐжà±í¸üÐÂ(Ìá½»), ºÜ¶à»Ø¸´»¹ÊÇ˵ÓÃADOConnectionµÄÊÂÎñ, (Èç¹ûҪͬʱ¸üÐÂSQL SERVERºÍOracleÊý¾Ý¿âµÄ±íÔõô°ì).
µ±È»Ò²ÓÐ˵ÓÃSetComplete, SetAbortµÄ. µ«ËµµÄºÜ¼òµ¥, ÆäÖеÄ×¢ÒâÊÂÏîÓÖÊÇÊ ......
¶ÔÏó¿Õ¼ä
ÄÚ´æ½á¹¹
¶ÔÏóµÄÄÚ´æ½á¹¹Êǹ̶¨µÄ£¬¶ÔÏó´´½¨Íê³Éºó¾ÍÎÞ·¨¸Ä±ä¡£ËüÖ÷Òª´æ´¢Á˶ÔÏóÖ±ÊôÀàµÄµØÖ·£¨µÈ¼ÛÓÚÀàµÄVMT£©£¬¶ÔÏó±¾ÉíµÄ³ÉÔ±Êý¾Ý£¬¶ÔÏóµÄ½Ó¿Ú·½·¨±íµØÖ·¡£½á¹¹ÈçͼËùʾ£º
˵Ã÷£ºÈôÀàδÉùÃ÷½Ó¿Ú£¬Ôò¶ÔÏó¿Õ¼ä²»´æ´¢½Ó¿Ú·½·¨±íµØÖ·¡£
Àà¿Õ¼äÓë¶ÔÏó¿Õ¼äµÄ¹ØÏµ
Àà¿Õ¼äÓë¶ÔÏó¿Õ¼ä£º
ʾÀý£º·ÖÎö¶ÔÏóµÄ» ......
*ÀàµÄ¹«¿ªÊôÐÔ£¨´úÂ룩
ʾÀý£º·ÃÎÊÀàµÄpublishedÊôÐÔ
˵Ã÷£ºvmtFieldTable£¨Published Field±í£©Ö¸ÏòPublished Field±íÓÐÐòÅÅÁУ¬Ö»´æ´¢µ±Ç°ÀàµÄPublishedField±í£¬µÃµ½¸¸ÀàµÄPublished Field±íÐèÒªÍùÉϱéÀú¡£
×¢Ò⣺ֻÓÐÀàÐÍÊÇÀà»ò½Ó¿ÚµÄÊý¾Ý³ÉÔ±²Å¿É¶¨ÒåΪpublishedµÄ·ÃÎʼ¶±ð
´úÂ룺
type
TMyO ......
ÔÚÌÖÂÛÕâ¸ö»°Ìâ֮ǰ£¬±ØÐëҪ˵Ã÷µÄÊÇ£¬Èç¹ûÄã¸Õѧϰdelphi£¬Ç벻Ҫģ·Â£¬ÒòΪ̸²»ÉÏתÐÍ£»Èç¹ûÄãÓÃdelphiÒѾ³Éϰ¹ß£¬²¢ÇÒÊìϤhtmlÓïÑÔ¡¢ÓÐBS½á¹¹»ù´¡¡¢¶ÔJAVAÓ﷨ûÓÐÕϰ£¨Èç¹ûÄã¿´²»¶®¼òµ¥µÄ»ù´¡JAVA´úÂ룬½¨ÒéÄ㻹ÊǼÌÐøÄãµÄd°É£©£¬Ï£ÍûÕâ¶ÎÄÚÈݶÔÄãÓÐËù°ïÖú£¬´Ë»°Ìâ²»ÌÖÂÛ¾ßÌå¼¼Êõ£¬Ö»ËµËµÎÒµÄѧϰ²½ÖèºÍÐĵá£
1¡¢ ² ......