我有一个应用程序,有时访问本地网络中的文件共享。 在这种情况下,路径存储在fEBookPath中。 如果用户输入登录名和密码,那么一切都好之前。但如果不是,FindFirst不会返回0.在这种情况下,我想显示Windows资源管理器显示的相同安全对话框。 喜欢这个
我的简化代码
if FindFirst(fEBookPath + '*.*', faDirectory, vSearchRecFolder) = 0 then
begin
// Existing code to access fEBookPath
end
else
// Display Windows security dialog to enter login + password
答案 0 :(得分:3)
此代码应该做我想要的
function TLogonForm.ShowSecurity: DWORD;
var
UNCPath,UserName,PassWord: string;
NwR : TNetResource;
begin
UNCPath := '\\xenapp06';
NwR.lpLocalName:= '';
NwR.lpProvider := '';
NwR.dwType := RESOURCETYPE_DISK;
NwR.lpRemoteName:= PChar(UNCPath);
Result := WNetAddConnection2(NwR, nil, nil, CONNECT_INTERACTIVE or CONNECT_PROMPT);
end;