如何使用 delphi 弹出这个表单?是ShellExecuteEx
或ShellExecute
可以做到这一点?
问问题
687 次
1 回答
4
您可以从命令行执行此操作。(至少,对我来说,在 Win7 上......()
rundll32.exe van.dll,RunVAN
因此,只需将其包装在合适ShellExecute
或类似的电话中即可。
请注意,该对话框设计为在系统托盘中弹出。我不知道你如何让它出现在更明显的地方。
另外,看看这个线程。这里提到了另一种方法,描述了如何以一种可能更有用的方式做到这一点:
如果你想从你的程序中调用它,跳过rundll32
调用会更简单。您可以自己加载 DLL 并调用该函数。例如:
procedure RunVANW(hwnd: HWND; hinst: HINST; lpszCmdLine: LPSTR;
nCmdShow: Integer); stdcall; external 'van.dll';
procedure ShowViewAvailableNetworksDialog;
begin
RunVANW(0, 0, nil, 0);
end;
我希望此功能在旧版本的 Windows 上不可用,并且几乎可以肯定会在未来版本的 Windows 上进行修改。因此,您可能更喜欢使用LoadLibrary
和编写 DLL 导入GetProcAddress
,并在运行时根据RunVANW
函数是否可用来切换行为。
于 2012-11-05T09:48:23.987 回答