j'ai écrit un code de base en C# comme ceci:appel de fonction n'a pas pu être évalué a expiré
//Connection credentials to the remote computer - not needed if the logged in account has access
ConnectionOptions oConn = new ConnectionOptions();
oConn.Username = "";
oConn.Password = "";
System.Management.ManagementScope oMs = new System.Management.ManagementScope("\\MachineX", oConn);
//get Fixed disk stats
System.Management.ObjectQuery oQuery = new System.Management.ObjectQuery("select FreeSpace,Size,Name from Win32_LogicalDisk where DriveType=3");
//Execute the query
ManagementObjectSearcher oSearcher = new ManagementObjectSearcher(oMs,oQuery);
//Get the results
ManagementObjectCollection oReturnCollection = oSearcher.Get();
//loop through found drives and write out info
foreach(ManagementObject oReturn in oReturnCollection)
{
// Disk name
Console.WriteLine("Name : " + oReturn["Name"].ToString());
// Free Space in bytes
Console.WriteLine("FreeSpace: " + oReturn["FreeSpace"].ToString());
// Size in bytes
Console.WriteLine("Size: " + oReturn["Size"].ToString());
}
Lorsque le nom d'utilisateur et mot de passe sont fournis les informations d'identification pour mon compte de bureau local.
Lorsque j'arrive à la ligne où le type ManagementObjectCollection est renvoyé à partir de la méthode ManagementObjectSearcher Get(), j'obtiens une erreur (à l'exécution) indiquant que l'appel de fonction a expiré lorsque j'essaie d'évaluer cette ligne boucle).
Il n'y a pas d'exception, donc plus de détails sur l'erreur.
Comment puis-je résoudre ce problème? Le code me va bien? Ce code est sur une autre machine, donc je suis en utilisant le code d'ici (suit à peu près les mêmes étapes): http://www.csharphelp.com/archives2/archive334.html
Merci
Quel est le message d'erreur exact? Pouvez-vous exécuter la même requête en utilisant wbemtest? – Mark