Lire Journal des Événements à Distance .NET

Je veux lire le Journal des Événements sur un ordinateur distant pour vérifier les erreurs pendant le test. Voici quelques code:

public bool CheckEventLogs(DateTime start)
{
  EventLog myEventLog = new EventLog("CustomLog", "ServerName");
  bool errorFound = false;
  foreach (EventLogEntry entry in myEventLog.Entries)
  {
    if (entry.EntryType == EventLogEntryType.Error && entry.TimeGenerated >= start)
    {
       Console.WriteLine("Error in Event Log:\n" + entry.Message + "\n");
       errorFound = true;
    }
  }
  return errorFound;
}

Actuellement, ce code génère une exception (Tenté d'effectuer une opération non autorisée). Selon MSDN, j'ai besoin de EventLogPermission, mais j'ai eu du mal à trouver des exemples d'utilisation de cette autorisation. Quelqu'un aurait-il un exemple de comment faire cela?

Edit: Réponse aux Commentaires

Merci à tous pour les commentaires - ici est le complément d'information demandé:

L'exception est générée à partir de la foreach déclaration. Plus précisément, lorsque vous exécutez le code jeté dans l'étape d'après, quand in est mis en surbrillance. Il semble que j'ai été capable de créer le journal des événements de l'objet mais je ne suis pas en mesure d'accéder à des entrées dans le journal des événements.

Mon compte n'est pas autorisé à lire le journal des événements sur le système cible, mais j'ai des informations pour un compte qui ne. Lors de la connexion manuellement par l'intermédiaire de l'observateur d'événements, il ya une option pour se connecter en tant qu'un autre utilisateur. Après le faire manuellement, mon code a fonctionné sans problème. Cependant, je ne peut pas se fier à le faire manuellement à chaque fois que ce programme fonctionne. Ce dont j'ai besoin est un moyen de se connecter en tant qu'un autre utilisateur programmaticly. Je pensais que le EventLogPermission serait la façon de le faire, mais peut-être il ya une autre façon. Si quelqu'un sait comment faire pour se connecter à distance à un journal comme un autre utilisateur en C#, ce serait exactement ce que je cherchais.

La ligne qui lance l'exception? L'article MSDN seulement dit que vous avez besoin de l'autorisation d'écrire, il ne faut pas dire n'importe quoi sur la lecture.
Est-ce que votre compte d'utilisateur autorisé à lire le journal des événements sur l'ordinateur distant? Ouvrez l'Observateur d'Événements et essayez de vous connecter à l'ordinateur distant à partir de votre ordinateur pour vérifier.
Je viens d'essayer ton code et obtenir les journaux de serveur distant. Tout fonctionne très bien.
Merci @Gabe, Stefan @et @Polaris pour vos commentaires. J'ai mis à jour la question avec les informations supplémentaires.

OriginalL'auteur Brian | 2011-03-15