Copy or move email to folder failes

I’m trying to copy/move mail from an inactive imap account to a new account.
The imap server is no longer available.

I’ve moved mail to this imap account to ‘backup’ them, but the server is long gone.
That worked fine. i guess the mails are only local on my pc now, not synced to any imap server.

Now i try to move them to a new account/server. (or to a local/ANY folder)
but there is just a popup, “this action can take a long time” (or similar, my language settings are dutch)
the popupp goes away , but nothing is moved or copied…
There is no error message.

How can i fix this?

I’m on version 9.2.1222 (ca10485)

How many messages are you trying to move ?

Could be you need to select a eg: smaller group / selection of messages at a time.

At first i tried to move several mails, then just 1…also tried different mails. even a mail with pure text did not move.

At first i tried to move several mails, then just 1…also tried different mails. even a mail with pure text did not move.

Oh that is strange. It could be then as it’s an old IMAP account no longer active or synching with the server online, you might then need to try dragging those messages to “Local folders” at the bottom left.

IMAP email (by default in Mail clients) merely just mirrors your online account unless you set it to “download messages offline” in the Account / IMAP / Tab.

So if you didn’t have that option enabled, then it could be you are now eg: only looking at a local cache of your old imap account messages and they won’t copy or move at all to any other imap account or local folders unless you reinstated that account online again.

So if you also cannot copy or drag any of those old IMAP account messages to Local folders, then the only option would be to reinstall your old IMAP account for a short time if that mailbox provider is still around till you have got all your messages out of it, and then close it again. Maybe do it for a month.

Apart from that, hopefully someone else on this free forum has some other ideas.

1 Like

move/copy/drag-drop to local folder give the same issue.
The account is set to “download messages offline”

I can open the mails, attachments, everyting. they just wont move…

i can not reinstall the old server/account. its gone.

Same problem for me. I wanted to move mails from one IMAP accout to another. Unfortunately this does not work correctly. So mails are not on the new account but also lost on the old account. I have an emClient-Backup where the mails and (some) content is available. But emClienbt does not export even the data it has, as it is not “synced” to the server.

I wonder if we could manipulate the sqlite database in the export to mark the mails as synced. Doing that, the emClient should think the mails ar “complete” and export available data.

@cyberzork Do you think, this could work? Perhaps you can give us a hint, which database-field we need to manipulate!

However I would prefer, that emClient also has an option to export “incomplete” synced data. I cannot understand, why it should not do, as data is available in the backup obvisiouly.

See my own support request here:

By the way, it seems behind there is a problem with emClient not downloading mails correctly. Search for “download mails”:
https://forum.emclient.com/search?q=download%20mails

@robster

i cannot reinstall the old server/account. its gone.

I can open the mails, attachments, everything. they just wont move…

As you cannot reinstate your account with your provider as you advised and the emails won’t move out of the old inactive IMAP account, but you can open the emails and attachments ok, then try exporting the messages manually to .eml files via the Menu / Export option.

Now if you also cannot export to .eml files, that means your IMAP messages were not all fully cached locally. As @Gary advised in that other link above, you would normally need to have the “sync options” set to download messages and attachments offline for this to work before disconnecting an IMAP or Exchange account.

The only other thing I could suggest is eg: open each message and copy and paste the message contents into a new email “using an active email account”. Obviously this will take time as you will have to save each message attachment from each opened message & reattach them to the new message, but might be the only way.

@Fenyem

I wonder if we could manipulate the sqlite database in the export to mark the mails as synced. Doing that, the emClient should think the mails are “complete” and export available data

I don’t think you can manipulate the database manually to mark messages as synced on export, or do anything to the database outside of eM Client either. However I guess anything is possible if you have the know-how. Unfortunately that is beyond my scope and ability.

Ok, thank you very much for your help and your open words.

All in all I really like em Client. It is a pretty good alround email Client!

I will check out the databases and let you know, if I could find a technical workaround.

1 Like

Thanks so much for the information

Here is my research so for.

  1. Make an backup of your emClientData
  2. Extract zip archive
  3. Look for the folder with mail_data.dat
  4. Open mail_data.dat with SQLite Browser

All available data is in table “LocalMailContents”. As far as I can see, emClient does not export an empty eml file if contentLength does not match to partBody. So a quick fix is to correct the mismatch. One way to update the database:

Update LocalMailContents set contentLength = 0, partBody = "" where partBody is NULL;
Update LocalMailContents set contentLength = 0, partBody = "" where contentLength = -1;
Update LocalMailContents set partHeader = "" where partHeader is NULL;

I need more investigation to get the best and correct update statements. But so far we can get some data out.

  1. Save database
  2. update mail_data file in the zip archiv
  3. import backup to emClient (internet connection offline)
  4. Export Mails to eml

Et voila, you get the data in database written to the eml file.

One pitfall. Of course it might not be fully correct content because some headers might missing.
Perhaps we can tune this automatically or correct this manually. At least we see, what is available and what is not.

1 Like

Here is the updated SQL-Statement. With this I finally get my mails back, well formated. :crazy_face:

Update LocalMailContents set partBody = "" where contentLength > 0 and partBody is null;
Update LocalMailContents set partHeader = "Content-Type: " || contentType || ";" char(10) || "Content-Transfer-Encoding: quoted-printable;" || char(10) || char(10) where contentLength > 0 and partHeader is null  and contentTransferEncoding = 4;
Update LocalMailContents set partHeader = "Content-Type: " || contentType || ";" || char(10) || "Content-Transfer-Encoding: base64;" || char(10) || char(10) where contentLength > 0 and partHeader is null  and contentTransferEncoding = 3;
Update LocalMailContents set partHeader = "Content-Type: " || contentType || ";"  || char(10) || char(10) where contentLength > 0 and partHeader is null;
Update LocalMailContents set partHeader = "Content-Type: " || contentType || ";"  || char(10) || char(10) WHERE contentLength = -1 and partHeader is null;