C# champ manquant requête WMI
Bonjour,
Le projet sur lequel je travaille actuellement comporte 9 environnements et environ 8 serveurs par environnement j'ai un outil qui se connecte aux différents serveurs et intègre les logs EventViewer dans une base de données.
Cette base est utilisée par un autre outil pour permettre un suivis des serveurs.
J'utilise le WMI et la requête suivante:
Code:
select * from Win32_NTLogEvent
Tout fonctionnement correctement sauf:
J'ai l'erreur suivante dans l'EventViewer (cf ci-dessous) que la requête ci-dessus me retourne avec un champ vide!
La requête me retourne bien l'enregistrement de cette erreur avec le type de l'erreur, le nom du serveur, la date de l'évènement.... mais la description de l'erreur est vide.
serveur : Windows serveur 2003
SQL : SQL Server 2005
DEV : C# et FrameWork 2
Savez-vous d'où provient cette erreur? Peut-on la corriger?
Faut-il utiliser autre chose que le WMI? Si oui, quoi?
Cela peut-il provenir de la taille du message?
Je ne sais plus quoi faire. Merci de votre aide :cry:
Citation:
Event Type: Error
Event Source: X-X
Event Category: (000)
Event ID: 1
Date: 12/09/2010
Time: 23:07:39
User: N/A
Computer: test0001
Description:
The description for Event ID ( 1 ) in Source ( X-X ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: [R6E101]
Une erreur est survenue lors de la récupération d’une demande, lors de l’appel à** la procédure stockée SPR_aaaa_aa_aaaa_aa_aa, dans la méthode Recupereraaaaaaaaaaaa.
**********************************
Message technique : System.Data.SqlClient.SqlException: Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <, <= , >, >= or when the subquery is used as an expression.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlDataReader.HasMoreRows()
at System.Data.SqlClient.SqlDataReader.ReadInternal(Boolean setTimeout)
at aaaa.aaaaaa.aa.Sql.aaaa.aa.aaaaaa.Recupéreraaaaaa(String aa, DateTime bb).