PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2025 → Crash service Windows
Crash service Windows
Iniciado por Code Source AGL, 25,oct. 2018 14:48 - 4 respuestas
Miembro registrado
11 mensajes
Publicado el 25,octubre 2018 - 14:48
Bonjour,

j'ai un service Windows en Windev qui crashe de manière aléatoire.

Dans l'observateur des évènements Windows j'ai trouvé cette erreur :

Le mécanisme de sécurité du WLangage a détecté une erreur dans l'application mon_service.
Contactez le fournisseur de l'application mon_service. Afin de l'aider à corriger l'erreur, veuillez lui transmettre les informations accessibles par le bouton 'Copier'.

------------------

What happened?
Unexpected system error.
If this error systematically occurs in the same conditions, contact PC SOFT Hot Line and specify:
- the error circumstances,
- a window, a project or the code lines used to replicate the problem,
- the details below.

Details techniques :

Module : ntdll.dll
Adresse de base : 772C0000
Erreur systeme : Access violation (GPF)
EIP = 77301C73
OS : Windows 2012 R2 (6.3.9600)

Error code: 1020
Level: fatal error

Dump of the error of 'wd220vm.dll' module (22.0.318.0).
Identifier of detailed information (.err): 1020
Debugging information:

Details techniques :

Module : ntdll.dll
Adresse de base : 772C0000
Erreur systeme : Access violation (GPF)
EIP = 77301C73
OS : Windows 2012 R2 (6.3.9600)
Registres :

EIP = 77301C73 EBP = 0963FD24
EAX = 00000000 EBX = 03C01F00
ECX = 00D491F8 EDX = 00000006
ESI = 0415C488 EDI = 00D4AEC8

Pile des appels :

[ntdll.dll (772C0000)] 77301BB0 : RtlFreeHeap() + 195 bytes
[wd220vm.dll (72EB0000), 22.0.318.0, 01F220073h] 73144A40 : pQueryProxy() + 83408 bytes
[wd220vm.dll (72EB0000), 22.0.318.0, 01F220073h] 72FD9C00 : TermDLL() + 55107 bytes
[???] 00D4AED0
[mon_service (00000000), 750.0] 00000003
Pile invalide

Auriez-vous une idée du problème ?

Merci

--
www.code-source-agl.com

Le site de code source externe (PHP, JAVA, Objective-C, JavaScript, CSS, C++, ...) pour WinDev, Webdev et WinDev Mobile.

Vous aussi, venez y déposer vos sources !
Miembro registrado
11 mensajes
Publicado el 25,octubre 2018 - 15:34
Je précise que ce service utilise des threads (3 en tout).

Le service tourne chaque minute, si un thread existe encore il n'est pas recréé, le service essaiera de le créer au passage suivant.

Ces threads peuvent appeler des procédures communes, par exemple une procédure pour écrire du log.
Pensez-vous que si les threads appellent au même moment cette procédure cela pourrait causer une instabilité du service ?
De manière générale auriez-vous quelques bonnes pratiques à mettre en place concernant la gestion des threads ?
J'ai vu qu'il y avait la notion de sémaphore et mutex, pensez-vous qu'il pourrait être opportun de gérer cela dans mon service ?

Merci

--
www.code-source-agl.com

Le site de code source externe (PHP, JAVA, Objective-C, JavaScript, CSS, C++, ...) pour WinDev, Webdev et WinDev Mobile.

Vous aussi, venez y déposer vos sources !
Miembro registrado
334 mensajes
Publicado el 25,octubre 2018 - 21:07
Sans voir le code, difficile de pouvoir t’aider, sinon, tu peux trouver de bon tuto sur YouTube, comme celui-ci :
https://m.youtube.com/watch…

Tu peux aussi regarder du côté de la fonction système OutputDebugString, complété du prog Debugview de Sysinternals pour suivre ce qui se passe dans ton service :
https://docs.microsoft.com/en-us/sysinternals/downloads/debugview
Mensaje modificado, 25,octubre 2018 - 21:11
Publicado el 30,octubre 2018 - 09:13
salut,

tu peux aussi en attendant protéger du plantage avec un

quand exception
faire
fin

l'erreur au moins ne plantera pas le service
Publicado el 01,noviembre 2018 - 22:23
Bonjour,

J'ai exactement le même problème que vous, en version 22 aucun problème et en version 23 cela ferme l'écran.
Ce genre de problème est aléatoire.
Pour ma part il s'agit d'une application en Windows 64.

Nom de l’application défaillante MonAppli.exe, version : 23.64.49.0, horodatage : 0x5aba83c1
Nom du module défaillant : ntdll.dll, version : 10.0.17134.254, horodatage : 0xa5a334d4
Code d’exception : 0xc0000374
Décalage d’erreur : 0x00000000000f4d3b
ID du processus défaillant : 0x560c
Heure de début de l’application défaillante : 0x01d4706d0aa24dfe
Chemin d’accès de l’application défaillante : C:\Users\JAUNE\ MonAppli\MonAppli.exe
Chemin d’accès du module défaillant: C:\WINDOWS\SYSTEM32\ntdll.dll
ID de rapport : 5944727f-cee8-4474-b775-06cd0e604fa7
Nom complet du package défaillant :