Exécuter le fichier de commandes. Comment appeler .le fichier bat, invite de commande visual studio et changer de répertoire dans ouvert fenêtre d'invite de commande
@echo off
echo copy masterDB file from one directory to another one
copy "C:\dir\dbfile" "C:\dir1\dbfile"
cd c:\lvsdir
call lvsrun.bat
timeout /t 180
start %comspec% /k ""C:\Program Files\Microsoft Visual Studio 10.0\VC\vcvarsall.bat"" x86
cd C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE
MSTest /testcontainer: C:\testdir\test.dll
Je veux le faire via un fichier de commandes pour copier un fichier de base de données à partir d'un répertoire à un autre(ce qui s'exécute correct), puis devrait commencer lvsrun.le fichier bat, qui devrait débuter le lvs serveur,
et puis pour ouvrir l'invite de commande visual studio dans une nouvelle fenêtre, changer de répertoire dans ouvert l'invite de commande pour tester répertoire et exécutez le fichier de test. Le problème survient quand je l'appelle lvsrun.chauve-souris, et il stucks là. Nouveau vs invite de commande ne peut pas être ouvert. Et avoir des problèmes avec le changement de répertoire dans le répertoire ouvert vs invite de commande et exécutez le fichier de test. Le Code ci-dessus ne fonctionne pas vraiment
Vous devez vous connecter pour publier un commentaire.
Vous avez posé deux questions. Vous devez les diviser et de les poser comme deux séparé des questions.
T1. Pourquoi mon fichier de commandes ne jamais avoir passé
call lvsrun.bat
?A1. Parce que
call
ne sera pas de retour jusqu'à ce que le fichier de commandes c'est l'appel qu'il a quitté. Si vous souhaitez lancer lvsrun.chauve-souris et de continuer l'exécution immédiatement, utilisezstart
.T2. Pourquoi ne pas la nouvelle fenêtre de commande j'ai lancer exécuter mon fichier de test?
A2. Votre fichier batch que le contrôle son fenêtre de commande. Si vous lancez une nouvelle fenêtre de commande, que l'on est sur son propre, vous ne pouvez pas envoyer des" commandes. Mais vous pouvez exécuter le test dans l' actuel fenêtre plutôt que d'en lancer une autre:
Ou vous pourriez faire une deuxième fournée de fichier pour exécuter le test. Par exemple, nous allons l'appeler
runtest.bat
, et de lui donner la même lignes:qui seraient alors appelés à partir de votre lot initial de fichier soit en mode synchrone:
ou asynchrone: