Delphi WMI[2] 响应网线断开
uses
WbemScripting_TLB,ActiveX,ComObj;
procedure OnDisconnect(Sender: TObject;
var objWbemObject: OleVariant;
var objWbemAsyncContext: OleVariant);
procedure TForm1.OnDisconnect(Sender: TObject;
var objWbemObject: OleVariant;
var objWbemAsyncContext: OleVariant);
begin
ShowMessage(' 网络中断啦! TaoRoy');
end;
procedure TForm1.BitBtn11Click(Sender: TObject);
var
Locator: TSWbemLocator;
Services: ISWbemServices;
SinkClassesC: TSWbemSink;
SinkClassesD: TSWbemSink;
begin
Locator := TSWbemLocator.Create(self);
Services := Locator.ConnectServer('', '\root\wmi', '', '', '', '', 0, nil);
SinkClassesD := TSWbemSink.Create(self);
SinkClassesD.OnObjectReady:=OnDisconnect; // Event Notifier 事件通知程序
// Connect Async Event 连接异步事件
Services.ExecNotificationQueryAsync(
SinkClassesD.DefaultInterface,
'Select * from MSNdis_StatusMediaDisconnect',
'WQL',
0, nil, nil);
end;
Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号
执行时间: 0.041524887084961 seconds