,我越來越C# - 值不能爲空。參數名:類型
「值不能爲空參數名:鍵入」
運行時錯誤。
如何處理此異常以及爲什麼我的objectName
在這裏爲空?我期待objectName
在本機上保存本地用戶帳戶的值。
命名空間的用戶 { 類EnableDisableUsers { 公共靜態無效的主要(字串[] args){
Console.WriteLine("Enter user account to be enabled or disabled");
var user = Console.ReadLine();
Console.WriteLine("Enter E to enable and D to disable the user account");
string enableStr = Console.ReadLine();
bool enable;
var computer = ".";
if (enableStr.Equals("E") || enableStr.Equals("e"))
{
enable = true;
var objectName = "WinNT://" + computer + "/" + user + ",user";
dynamic objUser = Activator.CreateInstance(Type.GetTypeFromProgID(objectName));
objUser.AccountDisabled = false;
objUser.SetInfo();
Console.WriteLine(user + " Enabled = " + result.ToString());
Console.ReadLine();
}
else if (enableStr.Equals("D") || enableStr.Equals("d"))
{
enable = false;
var objectName = "WinNT://" + computer + "/" + user + ",user";
dynamic objUser = Activator.CreateInstance(Type.GetTypeFromProgID(objectName));
objUser.AccountDisabled = true;
objUser.SetInfo();
Console.WriteLine(user + " Enabled = " + result.ToString());
Console.ReadLine();
}
else
{
Console.WriteLine("Operation for " + user + " failed ");
}
}
}
} 任何幫助將是有益的。
您將需要比這張貼更多的代碼。用戶和計算機在哪裏定義? – 2012-07-17 08:14:18
是Type.GetTypeFromProgID(objectName)null? – 2012-07-17 08:15:54
您可能想爲此考慮System.DirectoryServices。請參閱http://msdn.microsoft.com/en-us/library/system.directoryservices.directorysearcher.aspx。你這樣做的方式與你在VBScript中如何做的方式是一致的。您可以使用DirectoryEntry UserFlags屬性設置/取消設置啓用。 – dash 2012-07-17 08:19:03