execute the follwoing code in DELPHI program the answer should contain the screen shot of result
execute the follwoing code in DELPHI
unit UnMW;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics,
Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Edit1: TEdit;
Label1: TLabel;
Label2: TLabel;
10
Edit2: TEdit;
Button1: TButton;
Button2: TButton;
procedure Button2Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action:
TCloseAction);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
var
mSize : Cardinal;
MemPtr : Pointer;
implementation
{$R *.dfm}
procedure TForm1.Button2Click(Sender: TObject);
begin
mSize := Length(Edit1.Text) + 1;
MemPtr := VirtualAlloc(NIL, mSize, MEM_COMMIT,
PAGE_READWRITE);
VirtualLock(MemPtr, mSize);
CopyMemory(MemPtr, PChar(Edit1.Text), mSize);
VirtualUnlock(MemPtr, mSize);
end;
procedure TForm1.FormClose(Sender: TObject; var Action:
TCloseAction);
begin
if MemPtr <> NIL then
VirtualFree(MemPtr, MDIChildCount, MEM_RELEASE);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if MemPtr = NIL then
ShowMessage('Память пуста')
else
begin
VirtualLock(MemPtr, mSize);
Edit2.SetTextBuf(MemPtr);
VirtualUnlock(MemPtr, mSize);
end;
end;
Trending now
This is a popular solution!
Step by step
Solved in 2 steps