2011-12-15 3 views
0

Lorsque je débogue mon application (dans l'IDE VB6), je dois spécifier le chemin absolu (par exemple c:\logfile.log) dans le fichier journal sinon rien n'est écrit dans le fichier journal. Cependant, lorsque l'application est en direct, je n'ai pas besoin de spécifier le chemin absolu, c'est-à-dire que je peux spécifier logfile.log. Pourquoi est-ce?FileSystemObject - emplacement par défaut

Le fichier journal se trouve toujours dans le même répertoire que les fichiers .exe et .dll.

+1

duplication possible de [Comment configurer le répertoire de travail lors du débogage de l'application VB6?] (Http://stackoverflow.com/questions/154299/how-to-set-working-directory-when-debugging-vb6-app) – GSerg

Répondre

1

Votre fichier est en cours d'écriture dans le répertoire de travail actuel. Lorsque votre exe est en cours d'exécution, il s'agit du dossier dans lequel l'exe est installé, mais en mode de débogage, votre exe est en cours d'exécution à partir de l'emplacement de construction temporaire (impossible de se souvenir où se trouve VB6).

Vous pouvez tester cela simplement en faisant MsgBox(App.Path) dans votre programme et en voyant quel emplacement apparaît.

Vous trouverez probablement un logfile.log à l'emplacement qui apparaît lorsque vous exécutez la commande ci-dessus pendant le débogage.

+0

Merci. App.Path semble être le répertoire de travail de mon application (en mode débogage). Ce n'est pas le fichier dans lequel il écrit. – w0051977

+0

Pas tout à fait, le répertoire de travail sera quelle que soit l'application qui l'a démarré. Parfois, il arrivera à être le dossier EXE (lorsqu'il est exécuté à partir de l'Explorateur). Voir le 'CurDir()' pour le chemin actuel. L'utilisation de App.Path vous donne le chemin vers l'exe mais n'est PAS accessible en écriture par défaut. – Deanna

+0

Je pense que le GUI Shell dans Windows a conduit les gens loin de la compréhension de CD la plupart d'entre nous gagné dans les jours DOS. Je soupçonne que App.Path a remplacé le concept dans l'esprit du programmeur VB6, puisque dans de nombreux cas, ils commencent au moins au même chemin. Cependant, un raccourci de programme peut également définir ce chemin ("Démarrer"). Ou l'utilisation d'un CommonDialog peut le modifier pendant l'exécution. – Bob77

Questions connexes