I don't understand how this bug hasn't been fixed. MTP transfers can cause data loss on XYPlorer. It doesn't happen on Windows Explorer.
You simply select "cut" and "paste" from a phone. I did this on my Pixel 4. I lost over 20 photos, permanently deleted from my phone when XYPlorer decided to crash (WHICH IT DOES FREQUENTLY IN THIS PROCESS). I had done this process before on my GoPro, and only today I checked and found out that a huge amount of videos had been missing too.
This is the most nasty buggy process and I've lost a huge amount of valuable photos which I'll never be able to recover. Is this going to be fixed?? No refund can restore the memories that this piece of shit has decided to delete. This is insane.
Thank you for ruining my day.
MTP transfer DATA LOSS
-
- Posts: 2
- Joined: 18 Oct 2021 19:33
Re: MTP transfer DATA LOSS
Yeah so I distinctly recall having 166 photos and this thing only copied over 100 and deleted all the originals. This the the worst, these were invaluable photos of my wife's 30th and a lot of other photos, including some very specific ones we really wanted to keep for the future.
Absolutely disgusting, is it that hard to implement a safe copy+delete when a move is executed, as opposed to having me do it manually? Jesus f'n christ.
Absolutely disgusting, is it that hard to implement a safe copy+delete when a move is executed, as opposed to having me do it manually? Jesus f'n christ.
Re: MTP transfer DATA LOSS
It looks like a similar thing that happened to me some years ago. I lost EDL's, which cost me tens of thousands of pounds, when XY moved them to a different location to where it claimed they were moved to.
I, and a lot of other people, stopped using it at that point.
I, and a lot of other people, stopped using it at that point.
-
- Site Admin
- Posts: 64362
- Joined: 22 May 2004 16:48
- Location: Win8.1, Win10, Win11, all @100%
- Contact:
Re: MTP transfer DATA LOSS
Oh dear, I understand your rage.
But note that MTP transfer is handled by Windows, not by XYplorer. Whatever went wrong, it happened after the processing left XYplorer and before it returned to it. XYplorer does nothing more than telling Windows: "Move these files from here to here!"
The unreliability of MTP is well known and your case confirms it again. As a result I will add a warning now to the Configuration | General | Tree and List | Items in Tree and List | Show portable devices checkbox.
But note that MTP transfer is handled by Windows, not by XYplorer. Whatever went wrong, it happened after the processing left XYplorer and before it returned to it. XYplorer does nothing more than telling Windows: "Move these files from here to here!"
The unreliability of MTP is well known and your case confirms it again. As a result I will add a warning now to the Configuration | General | Tree and List | Items in Tree and List | Show portable devices checkbox.
FAQ | XY News RSS | XY X - Forum users with the Windows version and screen scaling percentage in the Location field of their profiles get priority support.
Re: MTP transfer DATA LOSS
I transfer data regularly between the computer and two 'phones - a Nokia and an iPhone - using other file managers (NOT File Explorer). No problems, and I've been doing it for years.
Why does XY find it so difficult?
Why does XY find it so difficult?
-
- Site Admin
- Posts: 64362
- Joined: 22 May 2004 16:48
- Location: Win8.1, Win10, Win11, all @100%
- Contact:
Re: MTP transfer DATA LOSS
I just managed to lose two photos using File Explorer for a move from hard disk to phone, no XY involved. (Just test pics, of course.)
FAQ | XY News RSS | XY X - Forum users with the Windows version and screen scaling percentage in the Location field of their profiles get priority support.
Re: MTP transfer DATA LOSS
Digging out an old topic.
Is this the reason why creation dates are not preserved while copying files from phone to PC? Just needed quick transfer of pictures from phone and even though XYplorer shows correct modification and creation dates for them while browsing phone then after copying them modification date stayed as original but file creation date has changed to current time. Other XYplorer/XYcopy copy actions from other places from disks or network shares are kept as original.
-
- Posts: 4380
- Joined: 28 Feb 2012 19:27
- Location: Windows 11, 24H2 Build 26100.4770 at 100% 2560x1440
Re: MTP transfer DATA LOSS
I've noticed this problem as well. I usually end up having XYplorer set the creation and modification dates from Exif (from the File menu > File Special...). In some cases working from phone pics can be an issue with thumbnails. Whether a thumbnail is recreated depends on the modification date (among other things). If XYplorer sees the "Mod" date as different (in looking at the thumbnail cache ini file), the thumbnail is recreated. At times I wish I could override that control when I know the photo is the same and only the modification date has changed for whatever reason (usually stupid reason). I suppose if we knew the image files had not actually changed, only the date, we could script something to match the ini file "Mod" date / time to the exiting photo modification date / time to avoid thumbnail rebuilding.
Re: MTP transfer DATA LOSS
Only read this if you know how to work with ADB (and where to get it, etc.)^^
Something like this could work (and should be reliable)...
Ofc USB-Debugging must be on on your phone (developer options must have been activated for this!) and it must be connected via USB.
Eventually a driver is necessary to install as well (look at the device manager!)
No transfer mode is necessary (ADB doesn't need it) but make sure that in the developer options things like:
USB debugging (Security settings)
Disable adb authorization timeout
are active if they exist
Ofc you should have adb on your computer and to fill the correct values for
Open a command prompt, cd into your adb folder, execute:
Look at the output, if your device is listed, get something from that line and fill the variable with it
Open a command prompt, cd into your adb folder, execute:
Finally change your
TRY IT WITH TEST IMAGES ON YOUR PHONE FIRST, I'M NOT RESPONSIBLE FOR ANY DATA LOSS:
Navigate to your pictures in your Camera folder on Android via XYplorer, select the pictures you want to move and then run the script...
If something doesn't work, provide as much detailed info as necessary, It's not my phone on your computer^^
And if this works for someone, change the file dates to that of the image you've copied at the end of the script (too lazy to do this, I'm on the Apple eco system, no interest in Android any more)...
Something like this could work (and should be reliable)...
Ofc USB-Debugging must be on on your phone (developer options must have been activated for this!) and it must be connected via USB.
Eventually a driver is necessary to install as well (look at the device manager!)
No transfer mode is necessary (ADB doesn't need it) but make sure that in the developer options things like:
USB debugging (Security settings)
Disable adb authorization timeout
are active if they exist
Ofc you should have adb on your computer and to fill the correct values for
$adbTool
: Find the correct path for it on your computer$adbPattern
:Open a command prompt, cd into your adb folder, execute:
Code: Select all
adb kill-server
adb devices
$srcPicPath
:Open a command prompt, cd into your adb folder, execute:
Code: Select all
adb shell
And if in the shell
navigate to your camera folder via: cd
$dstPath
variable...Code: Select all
$adbTool = "D:\Tools\@CLI Tools\ADB\adb.exe";
$adbPattern = "device"; // Must exist in output of "adb devices"
$srcPicPath = "/sdcard/DCIM/Camera"; // On your Android phone, case-sensitive!
$dstPath = "D:\Users\%USERNAME%\Pictures"; // Default destination path
// ========================================================================
// == DO NOT CHANGE ANYTHING BELOW IF YOU DO NOT KNOW WHAT YOU ARE DOING ==
// ========================================================================
$srcFiles = get("SelectedItemsNames");
$failedLog = "%TEMP%\~xyplorer_adb_move_pictures_FAILED.txt";
end (exists($adbTool) != 1), quote($adbTool) . <crlf 2> . "does not exist, aborted!";
end (!$srcFiles), "No item(s) selected, aborted!";
// ADB tests
status "Preparing ADB", , "progress";
$result = runret(lax("$adbTool" kill-server), "%TEMP%");
$result = runret(lax("$adbTool" start-server), "%TEMP%");
$result = runret(lax("$adbTool" devices), "%TEMP%");
// List of devices attached
// a8bcd8ea device
if (strpos($result, $adbPattern) == -1) {
echo "Android device not listed, aborted!";
$result = runret(lax("$adbTool" kill-server), "%TEMP%");
end true;
}
// Prepare log
$result = writefile($failedLog, "", , "utf8");
setting "BackgroundFileOps", 0;
$batFile = "%TEMP%\~xyplorer_adb_move_pictures.bat";
$batContent = "@ECHO OFF" . <crlf 2>;
foreach($srcFile, $srcFiles, <crlf>, "e") {
$content = <<<>>>
ECHO Moving "$srcFile"...
"$adbTool" pull "$srcPicPath/$srcFile" "$dstPath\$srcFile"
IF EXIST "$dstPath\$srcFile" (
"$adbTool" shell rm "$srcPicPath/$srcFile"
) ELSE (
ECHO Failed to transfer: "$srcFile">>$failedLog
)
>>>;
$batContent .= $content . <crlf>;
}
writefile($batFile, $batContent, , "utf8");
run lax("cmd" /c "$batFile"), "%TEMP%", 1, 1;
$result = readfile($failedLog, , , 65001);
#485;
if ($result) {
text $result;
}
$result = runret(lax("$adbTool" kill-server), "%TEMP%");
Navigate to your pictures in your Camera folder on Android via XYplorer, select the pictures you want to move and then run the script...
If something doesn't work, provide as much detailed info as necessary, It's not my phone on your computer^^
And if this works for someone, change the file dates to that of the image you've copied at the end of the script (too lazy to do this, I'm on the Apple eco system, no interest in Android any more)...
One of my scripts helped you out? Please donate via Paypal
-
- Site Admin
- Posts: 64362
- Joined: 22 May 2004 16:48
- Location: Win8.1, Win10, Win11, all @100%
- Contact:
Re: MTP transfer DATA LOSS
AFAIK File Explorer acts the same way. Only XYplorer's Custom Copy can preserve the creation date, but Custom Copy does not work for MTP.tomuser wrote: ↑23 Jul 2025 14:36 Digging out an old topic.Is this the reason why creation dates are not preserved while copying files from phone to PC? Just needed quick transfer of pictures from phone and even though XYplorer shows correct modification and creation dates for them while browsing phone then after copying them modification date stayed as original but file creation date has changed to current time. Other XYplorer/XYcopy copy actions from other places from disks or network shares are kept as original.
FAQ | XY News RSS | XY X - Forum users with the Windows version and screen scaling percentage in the Location field of their profiles get priority support.