Post a reply

Options
Add an Attachment

If you do not want to add an Attachment to your Post, please leave the Fields blank.

(maximum 10 MB; please compress large files; only common media, archive, text and programming file formats are allowed)

Options

Topic review

me119394

That worked, that's for your help and I realise that is actually our fault and we should have spotted that the quotes were missing from the UNC path.

Regards
martin

me119394 wrote:

C:\Program Files\WinSCP>winscp.exe /console /command "open bXXXX\BXXXX:HXXXXX@f
tp.bXXXX.co.uk" "option confirm off" "put D:\Test\BXXXX\my test\more test\test\ /Home/bXXX-BXXX/Test"
"exit"

I do not see any double quotes around path in your command. This should work:
C:\Program Files\WinSCP>winscp.exe /console /command "open bXXXX\BXXXX:HXXXXX@f
tp.bXXXX.co.uk" "option confirm off" "put ""D:\Test\BXXXX\my test\more test\test\"" /Home/bXXX-BXXX/Test"
"exit"
me119394

I have upgraded to version 4.2.5 and it still does not work.
I don't agree that it's the script that's at fault because all that is doing is mimicing commandline instructions. In most programs double quotes " " are added at the start and end of a UNC path which contains a blank space so it is seen as a single string, however WinSCP does not appear to be able to handle this kind of UNC path (albeit very commonly used in directory names).
ie In a command Prompt, if you wanted to change the directory from C:\ to the Winscp folder you have to send the following command cd "Program files\Winscp" the use of the double quotes because of the blank space in the Program Files directory.
Even if I run this commandline manually from a command prompt

C:\Program Files\WinSCP>winscp.exe /console /command "open bXXXX\BXXXX:HXXXXX@f
tp.bXXXX.co.uk" "option confirm off" "put D:\Test\BXXXX\my test\more test\test\ /Home/bXXX-BXXX/Test"
"exit"


I still get the same following error

Searching for host...
Connecting to host...
Authenticating...
Using username "bXXXX\BXXXX".
Authenticating with pre-entered password.
Authenticated.
Starting the session...
Reading remote directory...
Session started.
Active session: [1] bXXXX\BXXXX@ftp.XXXX.co.uk
confirm off
File or folder 'D:\Test\BOXIT\my' does not exist.
System Error. Code: 2.
The system cannot find the file specified
(A)bort, (R)etry, (S)kip, Ski(p) all:


It does appear that WinSCP is unable to handle UNC paths with blank spaces, unless it works in a different way in which another kind of annotation is used so the path is seen as a full string instead of broken paths by the blank spaces.
Is this a bug in the program...?
martin

Re: UNC path with blank spaces

I do not know how you script language deals with quotes, so I do not know what's actual input into WinSCP. Though I won't work anyway, unless you use WinSCP 4.2.5.
me119394

UNC path with blank spaces

Hi,

I am using version 4.1.8 and have got a wise script which runs an automated file upload however I'm having an issue with the UNC path having a blank space ie "D:\Test\BOXIT\my[space]test\more[space]test\test"

This is the script:

Set Variable
Variable=WINSCP
Value=c:\Program Files\WinSCP\winscp.exe
end
Set Variable
Variable=FILELOC1
Value=""""D:\Test\BOXIT\my test\more test\test""""
end
Set Variable
Variable=PASS
Value=XXXXXXXXXXXX
end
Execute Program
Pathname=%WINSCP%
Command Line=/console /command "open XXXX\%PASS%" "option confirm off" "put %FILELOC1%\ /XXXX/XXXXX/Test" "exit"
Flags=00000010
end

I have tried the normal thing of using double quotes and even double double quotes but keeps erroring with the following:

[i][i]Searching for host...
Connecting to host...
Authenticating...
Using username "XXXXX\XXXXX".
Authenticating with pre-entered password.
Authenticated.
Starting the session...
Reading remote directory...
Session started.
Active session: [1] XXXXX\XXXXX@ftp.XXXXX.co.uk
confirm off
D:\Test\BOXIT\my | 0 KiB | 0.0 KiB/s | binary | 0%
File or folder 'D:\Test\BOXIT\my' does not exist.
System Error. Code: 2.
The system cannot find the file specified
(A)bort, (R)etry, (S)kip, Ski(p) all:
[/i][/i]


As you can see it breaks the path at the blank space and errors.
Although we get round the issue by creating a static drive mapping that however requires a user account to be logged on 24x7, unfortunately when the machine is rebooted and the account is not logged back on, the automated script fails as it can no longer see the static drive mapping.
Any help would be greatly appreciated.