Fermer une fenêtre DOS active

Lolo - 20 janv. 2000 à 10:42
 ceyquem - 6 avril 2000 à 07:08
Comment fermer une fenêtre DOS qui est active.
shell( "command.com")

2 réponses

Je t'encourage à aller lire ce document en anglais:
http://support.microsoft.com/support/kb/articles/Q77/3/94.ASP

Cependant, en résumé tu peux faire comme suis:

Si tu la démarre toi-même, dans tes variables globales tu
peux ajouter:

Dim TaskID1 as Double

Ensuite au moment d'appeller ton application DOS:

TaskID1 = Shell("c:\command.com", vbNormalFocus)

Enfin pour l'arrêter:

AppActivate TaskID1
SendKeys "% c", True

En gros ça exécute ALT + Espace et ensuite 'c' qui en anglais est
la commande "Close" en français ça devrait être 'F'.
Il y as sûrement moyen d'envoyer l'équivalent de ALT+F4 la
fermeture universelle des Apps Win, j'ai cherché et fais
'patate' comme on dit en Québécois ('choux gras' en Français?
Bon, passons).

Si tu tente d'arrêter une fenêtre créée par un autre logiciel ou
par l'usager, je n'ai aucune idée...

Et si tu veux lui envoyer une commande:

AppActivate TaskID1 ' , True
Clipboard.Clear
Clipboard.SetText "dir" & chr$(13)
SendKeys "% ep", True

Ce code place donc la commande dans le Presse-Papier
de Windows et oblige la fenêtre DOS à faire une opération Coller.
Comme c'est une demande de répertoire, on as ajouté la touche
<ENTRÉE> en dernier.
0
il faut faire dans la commande shell :
utilise cette fonction :

Private Function ExeDos(chemin As String) As Boolean
On Error Goto traiterr
ExeDos = True
Shell "command.com /c " + chemin, 1
End Select
Exit Function
traiterr:
ExeDos = False
End Function

ceyquem
[www.lesiteweb.fr.st Programmation VB]
0
Rejoignez-nous