Question

J'ai écrit un programme c auquel je passe un script comme un code, qui l'exécute et affiche les résultats pour moi. quelque chose comme si j'envoie

for i in 1 to 10
print i

il créerait et exécuterait du code qui afficherait essentiellement les valeurs de 1 à 10. Cependant, je souhaitais intégrer une exécution pas à pas du code pour lequel j’ai ajouté une fonctionnalité permettant d’ajouter un point d’arrêt en tant que point BP dans le script, que je transmets au programme. ainsi, chaque fois qu'un point de contact est rencontré, il s'exécute et attend que l'utilisateur saisisse la commande de continuation "CNT".

Maintenant, j'ai développé une petite idée pour écrire des scripts et l'exécuter sur mon programme. Cependant, j'ai du mal à fournir le support de débogage via l'EDI. Je veux mettre en œuvre quelque chose comme une étape chaque ligne de code ou exécuter un processus complet (comme F5, après que le point d'arrêt soit atteint).

for i in 1 to 10
{
    print i
    BP
}

Ainsi, le programme s’arrête après chaque ligne et attend que l’utilisateur saisisse CNT. Cependant, je veux pouvoir exécuter tout le programme après le premier point d'arrêt.

Je cherchais un moyen, en c #, de contrôler l’exécution du programme exe externe auquel je suis attaché. De cette façon, je pourrais envoyer une commande comme exécuter le programme pour la ligne suivante ou les cinq lignes suivantes, etc. De toute façon, sans modifier l'exe sous-jacent?

Était-ce utile?

La solution 2

La réponse à cette question peut être multiple et dépend de la mise en œuvre. J'ai ajouté une fonctionnalité dans mon programme pour imprimer le numéro de ligne chaque fois qu'un point d'arrêt est atteint. De cette façon, j'ai pu contrôler l'exécution.

Autres conseils

Peut-être pourriez-vous essayer de jeter un coup d’œil à cette question précédente: Comment fonctionne un débogueur?

Les liens fournis dans la réponse (actuellement) la plus votée vous permettront de comprendre le fonctionnement d'un débogueur sur la plate-forme Windows et la façon de mettre en œuvre votre propre.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top