D7的bug? 关于MessageBox(5分)

  • 主题发起人 主题发起人 千中元
  • 开始时间 开始时间

千中元

Unregistered / Unconfirmed
GUEST, unregistred user!
uses
Windows,SysUtils,Classes,Winsock,Messages,ToolWin,StdCtrls,
Controls;
.....
...
MessageBox(Handle,'WS2_32.DLL初始化失败'+#13#10+'即将退出程序!','异常错误',MB_OK+MB_ICONERROR);

这句程序在D7中调试,报告错误:
[Error] uClass.pas(31): Undeclared identifier: 'THanle'

D5中好好的。
 
帅哥 ,俺在D7中试过了,根本没错嘛???
 
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
MessageBox(Handle,'WS2_32.DLL初始化失败'+#13#10+'即将退出程序!','异常错误',MB_OK+MB_ICONERROR);
end;

end.
 
新建一个工程,按Ctrl + 鼠标双击THanle,看看包含在哪个文件里。
其实,就是你的uses 里面的这个单元被你去掉了。
 
Controls

把它uses上吧。
 
DELPHI怎么这样哦?不可思异哦。

THandle可是在System单元中声明的。编译器应该是自动调用哦。
 
多人接受答案了。
 
后退
顶部