Je suis nouveau sur le VB. Je veux tester quelques vieux code VB, mais j'ai besoin de la capacité d'imprimer à la console pour être en mesure de tester certaines valeurs qui sont définies dans le code. Comment imprimer à la console à partir de VB?
Ce n'est pas prévu pour être accepté de répondre à cause de Débogage.L'impression est le chemin à parcourir pour les IDE test.
Cependant tout juste à montrer comment utiliser les e/S standard flux facilement en VB6:
Option Explicit
''Reference to Microsoft Scripting Runtime.'Public SIn As Scripting.TextStream
Public SOut As Scripting.TextStream
'--- Only required for testing in IDE or Windows Subsystem ===PrivateDeclareFunction AllocConsole Lib"kernel32"()AsLongPrivateDeclareFunction GetConsoleTitle Lib"kernel32" _
Alias"GetConsoleTitleA"( _
ByVal lpConsoleTitle AsString, _
ByVal nSize AsLong)AsLongPrivateDeclareFunction FreeConsole Lib"kernel32"()AsLongPrivate Allocated AsBooleanPrivateSub Setup()Dim Title AsString
Title = Space$(260)If GetConsoleTitle(Title,260)=0Then
AllocConsole
Allocated =TrueEndIfEndSubPrivateSub TearDown()If Allocated Then
SOut.Write "Press enter to continue..."
SIn.ReadLine
FreeConsole
EndIfEndSub'--- End testing ---------------------------------------------PrivateSub Main()
Setup 'Omit for Console Subsystem.WithNew Scripting.FileSystemObject
Set SIn =.GetStandardStream(StdIn)Set SOut =.GetStandardStream(StdOut)EndWith
SOut.WriteLine "Any output you want"
SOut.WriteLine "Goes here"
TearDown 'Omit for Console Subsystem.EndSub
Remarque que très peu de code n'est nécessaire pour une véritable Console de programme en VB6. L'essentiel de il est au sujet de l'allocation d'une fenêtre de Console lorsque le programme n'est pas en cours d'exécution dans le sous-système de la Console.
+1: une Belle. Donc, comme je l'ai dit alors, facile quand vous savez comment 🙂
Utilisation OutputDebugString et afficher les messages avec l'excellent gratuit DebugView. Plus d'informations et de code réutilisable de Karl Peterson ici
Ce n'est pas quelque chose que Vb6 pouvez facilement le faire (je suis sûr qu'il peut être fait, mais vous auriez du appeler native Api Win32, et ne vaut pas la douleur si vous êtes juste de l'utiliser pour le débogage)
Votre meilleur pari (à mon humble avis) est d'écrire ces valeurs dans un fichier journal.
En fait, il peut être fait assez trivialement à partir de VB6 à l'aide de l'OFS. Bien sûr, il ne s'applique que lorsque vous une console, qui vous font rarement dans un programme VB6 - à moins que vous AllocConsole() ou sont en cours d'exécution comme un EXE réédités pour la Console de sous-système. Mais je suis d'accord ce n'est pas le meilleur outil pour le débogage. Ainsi, se trouve sous la rubrique de "Facile quand vous savez comment" peut-être? 🙂 Pas grand-chose. Voir le parasite de réponse que j'ai posté.
Utilisation de débogage.d'impression. Mais il n'y a pas de console sur une application VB6, qui imprime à la fenêtre de débogage.
OriginalL'auteur gbianchi
Ce n'est pas prévu pour être accepté de répondre à cause de Débogage.L'impression est le chemin à parcourir pour les IDE test.
Cependant tout juste à montrer comment utiliser les e/S standard flux facilement en VB6:
Remarque que très peu de code n'est nécessaire pour une véritable Console de programme en VB6. L'essentiel de il est au sujet de l'allocation d'une fenêtre de Console lorsque le programme n'est pas en cours d'exécution dans le sous-système de la Console.
OriginalL'auteur Bob77
Utilisation
OutputDebugString
et afficher les messages avec l'excellent gratuit DebugView. Plus d'informations et de code réutilisable de Karl Peterson iciOriginalL'auteur MarkJ
Ce n'est pas quelque chose que Vb6 pouvez facilement le faire (je suis sûr qu'il peut être fait, mais vous auriez du appeler native Api Win32, et ne vaut pas la douleur si vous êtes juste de l'utiliser pour le débogage)
Votre meilleur pari (à mon humble avis) est d'écrire ces valeurs dans un fichier journal.
Ainsi, se trouve sous la rubrique de "Facile quand vous savez comment" peut-être? 🙂
Pas grand-chose. Voir le parasite de réponse que j'ai posté.
OriginalL'auteur Binary Worrier