locked
Erreur 0xe0434352 en tache planifiée RRS feed

  • Question

  • Bonjour tout le monde, 

    Aujourd'hui je tente de mettre mon appli dans une tache planifiée mais je me retrouve toujours avec l'erreur 0xe0434352 (erreur de .net) et rien ne se passe avec l'appli. J'ai mis des exception, des MessageBox entre chaque traitement, mais rien. C'est comme ça sur plusieurs machines avec des OS différents et avec des .Net 4.5 et d'autres qui sont en 4.7.

    Mon code est en WPF/C#. 

    Si je lance le programme à la main, ça fonctionne correctement (sans permission Windows particulières).

    Dans la tâche planifiée, j'ai tenté "uniquement si l'utilisateur est connecté", avec les droits maximum, en mettant un compte admin, etc...

    Mon programme n'est qu'un seul .exe qui ne fait appel à aucune DLL. 

    Si je mets une exception dès le début du programme, je n'ai plus l'erreur 0xe0434352 dans le journal d'evenement. Il me reste néanmoins l'erreur ci dessous.

    Qu'est ce qui peut faire que ça marche à la main et pas de manière planifiée ?

    Nom de l’application défaillante MULTILABO Export dispo.exe, version : 1.0.0.0, horodatage : 0xa1e89ace
    Nom du module défaillant : ntdll.dll, version : 10.0.18362.1171, horodatage : 0x103a4719
    Code d’exception : 0xc0000005
    Décalage d’erreur : 0x000000000001e312
    ID du processus défaillant : 0x75f8
    Heure de début de l’application défaillante : 0x01d6e43678fd0a28
    Chemin d’accès de l’application défaillante : G:\MULTILABO Export dispo.exe
    Chemin d’accès du module défaillant: C:\WINDOWS\SYSTEM32\ntdll.dll
    ID de rapport : a38d5e5d-af28-4b24-a40e-2436359caee0
    Nom complet du package défaillant : 
    ID de l’application relative au package défaillant : 

    Par avance merci.


    MCITP EA Windows Server 2008 R2 MCSA Windows Server 2012 Apprenti développeur C# EF WPF

    mercredi 6 janvier 2021 14:33

Réponses

  • Bonjour,

    Le code d’exception 0xc0000005 représente une erreur générique de violation d'accès. Cela peut se produire pour de nombreuses raisons différentes. Il peut également s'agir de l'application qui tente d'accéder à la mémoire privée d'un autre processus sans activer au préalable les privilèges système appropriés. 
    Je vous suggère de spécifier le chemin du programme dans "Start In (optional) " et de vérifier que l'utilisateur a les droits nécessaires pour accéder à ce répertoire.


    Pour déboguer ce genre de problèmes internes au système, je vous suggère d'essayer Process Monitor.

    Cordialement,
    Nina



    Microsoft propose ce service gratuitement, dans le but d'aider les utilisateurs et d'élargir les connaissances générales liées aux produits et technologies Microsoft. Ce contenu est fourni "tel quel" et il n'implique aucune responsabilité de la part de Microsoft.

    jeudi 7 janvier 2021 10:04
    Modérateur
  • Bonjour Sébastien,

    Avez-vous essayé de spécifier le chemin du programme dans "Start In (optional)" comme j'ai écrit dans ma réponse précédente? Quel était le résultat? Si vous utilisez des chemins relatifs dans votre code, vous devez spécifier l'emplacement du programme.
    0xe0434352 est un code d'exception CLR de niveau bas et ne fournit pas suffisamment d'informations. Dans ce cas on peut écrire un "event handler" pour AppDomain.CurrentDomain.UnhandledException et enregistrez la valeur de e.ExceptionObject.ToString(). Pour plus d'informations: "AppDomain.UnhandledException Événement".


    Cordialement,
    Nina

    Microsoft propose ce service gratuitement, dans le but d'aider les utilisateurs et d'élargir les connaissances générales liées aux produits et technologies Microsoft. Ce contenu est fourni "tel quel" et il n'implique aucune responsabilité de la part de Microsoft.

    mercredi 13 janvier 2021 09:26
    Modérateur

Toutes les réponses

  • Bonjour,

    Le code d’exception 0xc0000005 représente une erreur générique de violation d'accès. Cela peut se produire pour de nombreuses raisons différentes. Il peut également s'agir de l'application qui tente d'accéder à la mémoire privée d'un autre processus sans activer au préalable les privilèges système appropriés. 
    Je vous suggère de spécifier le chemin du programme dans "Start In (optional) " et de vérifier que l'utilisateur a les droits nécessaires pour accéder à ce répertoire.


    Pour déboguer ce genre de problèmes internes au système, je vous suggère d'essayer Process Monitor.

    Cordialement,
    Nina



    Microsoft propose ce service gratuitement, dans le but d'aider les utilisateurs et d'élargir les connaissances générales liées aux produits et technologies Microsoft. Ce contenu est fourni "tel quel" et il n'implique aucune responsabilité de la part de Microsoft.

    jeudi 7 janvier 2021 10:04
    Modérateur
  • Bonjour Nina,

    J'ai tenté Process Explorer mais ça ne me donne rien. Je ne vois rien passer. 

    Je pense que le gros du problème est l'erreur 0xe0434352 que je ne comprends pas. Pourquoi je ne l'ai pas quand je lance l'appli en directe et pourquoi je l'ai en tache planifiée... ?


    MCITP EA Windows Server 2008 R2 MCSA Windows Server 2012 Apprenti développeur C# EF WPF

    lundi 11 janvier 2021 11:28
  • Je pense avoir trouvé un début d'explication.

    Pour une raison que j'ignore pour le moment, Windows m'indique que mon appli est lancée depuis c:\windows\system32.

    Pourtant l'application se trouve sur un disque g:\

    Je ne comprends pas bien pourquoi...


    MCITP EA Windows Server 2008 R2 MCSA Windows Server 2012 Apprenti développeur C# EF WPF

    lundi 11 janvier 2021 16:07
  • Bonjour Sébastien,

    Avez-vous essayé de spécifier le chemin du programme dans "Start In (optional)" comme j'ai écrit dans ma réponse précédente? Quel était le résultat? Si vous utilisez des chemins relatifs dans votre code, vous devez spécifier l'emplacement du programme.
    0xe0434352 est un code d'exception CLR de niveau bas et ne fournit pas suffisamment d'informations. Dans ce cas on peut écrire un "event handler" pour AppDomain.CurrentDomain.UnhandledException et enregistrez la valeur de e.ExceptionObject.ToString(). Pour plus d'informations: "AppDomain.UnhandledException Événement".


    Cordialement,
    Nina

    Microsoft propose ce service gratuitement, dans le but d'aider les utilisateurs et d'élargir les connaissances générales liées aux produits et technologies Microsoft. Ce contenu est fourni "tel quel" et il n'implique aucune responsabilité de la part de Microsoft.

    mercredi 13 janvier 2021 09:26
    Modérateur
  • Bonjour, 

    J'ai en effet indiqué le répertoire de l'application dans Start In et cette fois ci c'est passé. 

    Merci pour votre aide et votre solution !


    MCITP EA Windows Server 2008 R2 MCSA Windows Server 2012 Apprenti développeur C# EF WPF

    mercredi 13 janvier 2021 09:34