J'essaie d'implémenter quelques hooks, à la fois pré et post-fail cependant. Je reçois le même message d'erreur pour les deux lorsque je tente de commettre:Commit Hook Failure
'*-commit' hook failed (did not exit cleanly: apr_exit_why_e was 2, exitcode was -1073741515). with no output.
exitCode -1073741515 semble être une position bizarre et un peu rapide de google-fu m'a fait ceci:
Traitement non en tant que DWORD hexadécimal, le code d'erreur que vous voyez est 0xC0000135. Ceci est Sev = 11, C = 0, R = 0, Facility = 0, Code = 0x0135.
La valeur 0xc0000135 peut être trouvée dans ntstatus.h avec la définition suivante
//
// MessageId: STATUS_DLL_NOT_FOUND
//
// MessageText:
//
// {Unable To Locate Component}
// This application has failed to start because %hs was not found.
// Re-installing the application may fix this problem.
//
#define STATUS_DLL_NOT_FOUND ((NTSTATUS)0xC0000135L)
Ok, dll pas trouvé, ne devrait pas avoir raison trop difficile? J'ai une VM avec svn dessus qui est paisible avec ces hooks. Je lance donc Filemon.exe et Depends.exe sur les deux machines.
Je suis toujours en train de fouiller dans les logs de fichiers pour les deux serveurs, et dépend ne me donne pas de problèmes uniques avec n'importe quel exécutable que je peux penser être touché par un crochet de validation.
J'ai décidé de jeter un coup d'œil dans les journaux des événements, et Oh Boy! Le hook 'pré-commit' a échoué (ne s'est pas terminé proprement: apr_exit_why_e était 2, le code de sortie était -1073741515)
sans sortie. [409, # 165001]
Plus d'informations, ce [409, # 165001] est partout sur google, mais je ne trouve pas vraiment quelque chose d'utile.
Le hook appelle explicitement un exécutable avec trois paramètres.
C: \ SubversionNotify \ SubversionNotify.exe% 1% 2 -pre
J'ai même essayé d'utiliser des variables aussi bien.
SET REPOS=%1
SET REV=%2
C:\SubversionNotify\SubversionNotify.exe %REPOS% %REV% -pre
Regarder dans les journaux de FileMon me montre qu'il ne fait jamais à SubversionNotify.exe
Il devient au point où je ne peux pas vraiment passer beaucoup plus de temps à essayer de mettre en œuvre cela, me aider SO , tu es mon seul espoir.
Spécifications serveur:
Windows XP, en cours d'exécution VisualSVN Server, dernière version.
Edit: Il semble que SubversionNotify jette l'exception, de retour à Depends.exe vérifier pour voir ce que dll échoue.
erreur est la suivante:
L'application n'a pas réussi à initialiser correctement (0xc0000135).
Que 0xC0000135 a été vu plus tôt, dll chasse ahoy!
Le hook appelle explicitement un exécutable avec trois paramètres. C: \ SubversionNotify \ SubversionNotify.exe% 1% 2 -pre La question a été modifiée pour refléter cela. – Slipfish
La modification du répertoire en C :: \ SubversionNotify m'affecte: 'Commit bloqué par le crochet de pré-validation (code de sortie 1) avec la sortie: Le nom du fichier, le nom du répertoire ou la syntaxe de l'étiquette de volume est incorrect – Slipfish
SubversionNotify lance en fait l'exception , manquant une DLL, juste besoin de savoir ce que l'un. Heureusement, j'ai une VM qui semble fonctionner avec SubversionNotify. Comparez et contrastez le temps. Merci pour votre aide! – Slipfish