Re: Moving files in C++ using Windows SDK

Tech Tip: Click here to run a free scan for Windows Errors and optimize PC performance



Yeah bad example, I guess. Let's say it is \\computerB\\Data\\apps
In any case, from the posts above, it appears that MoveFileEx() is not
suitable for the job.

"Pavel A." <pavel_a@xxxxxxxxxxxxxxx> wrote in message
news:ejscsYeoFHA.3696@xxxxxxxxxxxxxxxxxxxxxxx
>> int result= MoveFileEx("\\\\computerB\\apps","c:\\apps",
>
> So you're trying to move a folder that is the root of a share... Not good.
>
> --PA
>
>
> "RussR" <nospam@xxxxxxxxxx> wrote in message
> news:%23YecmBdoFHA.2472@xxxxxxxxxxxxxxxxxxxxxxx
>> Hi,
>>
>> What am I trying to achieve is to move a directory (or a set of files
>> using wildcards) from one computer on the network to the computer that
>> the code that's doing the moving is running. The systems are running
>> WindowsXP Professional. Permissions on each directory is set to FULL for
>> Everyone.
>>
>> So for example, \\computerA runs a code that will move the directory,
>> \\computerB\\apps to c:\apps, where c:\apps is on computerA.
>>
>> Here's the line of code that I'm using which I got from the Windows SDK
>> at
>> http://msdn.microsoft.com/library/default.asp?url=/library/en-us/fileio/fs/movefileex.asp
>>
>> void main() {
>>
>> //here's the line of code that does the moving
>> int result= MoveFileEx("\\\\computerB\\apps","c:\\apps",
>> MOVEFILE_COPY_ALLOWED |
>> MOVEFILE_REPLACE_EXISTING |
>> MOVEFILE_WRITE_THROUGH);
>>
>> //this is to print out the error message when it fails
>> LPVOID lpMsgBuf;
>> FormatMessage(
>> FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
>> NULL,
>> GetLastError(),
>> MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
>> (LPTSTR) &lpMsgBuf,
>> 0,
>> NULL
>> );
>> printf("%s\n",lpMsgBuf);
>> // Free the buffer.
>> LocalFree( lpMsgBuf );
>> }
>>
>> I get an error message usually saying access denied. Permissions are all
>> set full for everyone, so I'm stumped. If I change it to copy from one
>> directory on my computer to another directory on my computer, it only
>> works if the target directory doesn't already exist. If it does exist, I
>> get an access denied error....why? I've set all the MOVEFILE flags to
>> avoid this.
>>
>> Thanks,
>> RussR
>>
>>
>
>


.