Frage : Laufender ftp-Befehl von einer Reihenakte

Ich versuchte, eine Reihenakte von VB.Net using den Oberteilbefehl zu benennen. Dieses arbeitet tadellos u. ist der Befehl von der VB.NET Anwendung, wie folgt:

Shell („C:\daemons\getslice r1.bat“, vbNormalFocus).

The getslicer1.bat Akte ist diese:

" ftp - s: getslicer1.ftp "

This ist okay too.
The ftp-Akte, die durch den oben genannten Hieb hervorgerufen, den, Akte ist:

open 192.168.0.21
hc
cd C:\STATEX
delete statex_slicer1.txt
rename statex.txt statex_slicer1.txt
get statex_slicer1.txt
quit

Which arbeitet zu meistens. Wenn ich meistens mich sage, bedeuten, dass das manchmal, wenn die Reihenakte die Position genannt, in der die .ftp Akte durch die .bat Akte gesucht!!! ändert!
So der Oberteilbefehl benennt die getslicer1.bat Akte von C:\daemons und die getslicer1.ftp Akte ist im C:\-Verzeichnis, also durchgeführt sie jedoch manchmal doch, wenn ich die Reihenakte pausiere, die ich sehen kann, dass der Reihenbefehl in der Befehlszeile zu einem anderen Verzeichnis!! schaut!
I kann nicht verstehen warum, während niemand und nichts alles WEDER im ftp-oder HIEB-Code änderten, aber dennoch, wenn es durchführt, es versucht, nach der ftp-Akte in einer anderen Position zu suchen.
I denken, dass ich die Reihenakte zwingen sollte, um nach dem fpt in einem bestimmten location.
When zu suchen, das ich ersten Lauf die getslicer1.bat Akte using den Oberteilbefehl tat, es durch Rückstellung in C:\ schaute, also ich annahm, dass dieses die Rückstellung ist.
However, wenn ich an die Hiebakte innerhalb klicke: C \ Dämonen, in denen es ihm lokalisiert, zeigen eine Störung (wenn ich der Code pausiere), während er nach dem ftp innerhalb C:\daemons sucht. von
So offensichtlich die Position, in der die Reihenakte nach der ftp-sucht Akte, abhängt von der e Methode, die es ist invoked.
If, das durch Oberteil von hervorgerufen VB.NET, sucht nach dem ftp in C:\ aber, wenn Durchlauf am Ort es nach der Akte im gleichen sucht Verzeichnis, dem er eingeleitet. Jedoch wenn Sie benannt durch den SHELL-Befehl, den die Position, in der die Hiebakte versucht, die ftp-Akte laufen zu lassen, chnaging, gründete auf Gott weiß, dass what.
Could Sie mir bitte mit diesem helfen?

Antwort : Laufender ftp-Befehl von einer Reihenakte

Es ist so:

Sie können eine Reihenakte laufen lassen, die ÜBERALL auf Ihrem System vorbei sitzt:

   (1) sie spezifizierend, ist voller Weg zusammen mit dem Dateinamen

   (2) durch die Steuerung zum Verzeichnis, in dem die Reihenakte existiert, dann auf es gerade namentlich beziehend

Der Unterschied ist, die Reihenakte sieht nur Akten z.Z. „Arbeitsdateiverzeichnis“: wo SIE sind - nicht wo die Reihenakte ist.

Wenn Sie tun, ist ein CD Befehl auf ihm, DOS zu besitzen zurückbringt das aktuelle Dateiverzeichnis, das Ihnen zeigt, wo Sie sind.

ANMERKUNG: Normalerweise weil die Rückstellungsaufforderung „$p$g“ ist, wird Ihr aktuelles Dateiverzeichnis immer als Teil der DOS-Aufforderung gezeigt. Sie können dieses ändern, indem Sie den folgenden Befehl eingeben:

   SOFORTIGES $g

oder sogar:

   AUFFORDERUNG %username% $+$g

In diesem Fall, Sie gelegentlich überprüfen müssen, wo Sie sind, indem Sie gerade hereinkommen, soll CD auf ihm besitzen (oder sogar ECHO %cd%).

Was CD zurückgeht, ist Ihr aktuelles Dateiverzeichnis.

Egal wo Sie Reihenakte lokalisiert werden, wenn sie sich auf irgendwelche Akten beziehen muss, schaut sie IMMER NUR im aktuellen Dateiverzeichnis, ES SEI DENN…

Es sei denn Sie spezifizieren, ist der volle Weg der Akte als Teil er Dateiname (damit die Reihenakte weiß, wo man nach der Akte sucht).

Folglich muss GetSlicer1.bat wie dieses aussehen:

   ftp - s: c:\getslicer1.ftp

(wenn GetSlicer1.ftp im c:\-Verzeichnis ist).
Weitere Lösungen  
 
programming4us programming4us