我花时间在PowerShell中创建它只是为了意识到我需要在C#中使用一个简单的EXE来创建这个URL,它将创建这个URL并将浏览器启动到该URL。基本上它是从AD获取本地登录用户的电子邮件地址及其计算机名称,并使用JSON将其提交给另一个表单。
$email = ([adsi]"LDAP://$(whoami /fqdn)").mail
$workstation = $env:computername
$url = 'https://www.cognitoforms.com/SupportRequestForm?entry={{"CreateSupportTicket":{{"Workstation":"{0}","YourEmailAddress":"{1}","ConfirmEmail":"{1}"}}}}' -f $workstation, $email.value
有人可以帮助我将其转换为C#吗?
答案 0 :(得分:3)
我没有在这里安装Active Directory进行测试,但我希望这有帮助。对于初学者,在代码中包含System.DirectoryServices.AccountManagement
之前,在解决方案资源管理器的“引用”节点中添加对using System.DirectoryServices.AccountManagement;
的引用。然后尝试以下代码:
string email = UserPrincipal.Current.EmailAddress;
string url = string.Format("https://www.cognitoforms.com/SupportRequestForm?entry={{\"CreateSupportTicket\":{{\"Workstation\":\"{0}\",\"YourEmailAddress\":\"{1}\",\"ConfirmEmail\":\"{1}\"}}}}", Environment.MachineName, email);
Console.WriteLine(url);
如果你需要fqdn,请使用:
string fdqn = System.Net.Dns.GetHostEntry(Environment.MachineName).HostName;