In 7.0f when I export to .xls file and try to open it I get the following message from Excel:
"The file format and extension filename.xls don't match. The file could be corrupted or unsafe. Unless you trust its source, don't open it."
If I try to import this file into MS SQL it will not work. My workaround was the following:
Open the .xls file, save as an .xlsx file (which corrects another issue with importing into a SQL DB) then I'm able to import after dealing with the Flavor text nvarchar length, and allow Nulls for Legalities (TLC)
I've also noticed that the ID for the THM2 (and maybe other cards with alpha-numeric ID's are listed as Null when imported because the ID column is listed as a Double / float
In the previous version I did not have these issue importing into a SQL DB, just figured I would let you know in case it's something that can be corrected.
In 7.0f when I export to .xls file and try to open it I get the following message from Excel:
"The file format and extension filename.xls don't match. The file could be corrupted or unsafe. Unless you trust its source, don't open it."
And if you continue, it should be OK. The file is safe. I must have a look at the library I am using in GEx to check why the file format and the extension filename (.xls) don't match for Excel.
In 7.0f when I export to .xls file and try to open it I get the following message from Excel:
"The file format and extension filename.xls don't match. The file could be corrupted or unsafe. Unless you trust its source, don't open it."
Why not directly using the SQL output of GEx? The ID column is listed as text as all the other columns.
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
Thanks!
Private Mod Note
():
Rollback Post to RevisionRollBack
--
Reliquary for iOS
Your Magic Collection Anywhere You Go reliquaryapp.com
@ nickman55: Thanks for your report. I would love to solve the bug, but I cannot reproduce it. I was able to get fresh full databases from scratch without errors. In addition, the crash description is rather difficult to work with (data could not be decrypted). I googled help about what could raise those kind of errors, and I think it is raised by a certificate error with Scryfall or Gatherer which remains unmanaged in Gatherer Extractor. So I definitely have to fix that, but it is hard to troubleshoot without the possibility to reproduce the issue. I need more time to further investigate. But I am working on it.
Does it occur for you always for this card? Or rather randomly after a quite long period of data extraction?
Is there a way to not connect to gatherer? I keep having random script errors pop up mid way. And i only pick 10-15 sets at a time. This causes the entire program to stop working so i have to close it with task manager, and hope it reloads a crash database otherwise i have to start downloading sets all over
Hello Chaudakh and thank you for your amazing work !
I've been trying to set and classify my collection with your program but I encounter a problem with Innistrad midnight hunt : I want to export the cards in French, but only 2 cards seems to be translated. I looked on Scryfall and the translation seems correct there ; am I doing something wrong ?
Thank you again and have a nice day !
EDIT : I'm using Gatherer Extractor v7.0g on win 10
For collection management, I would strongly recommend you to use my other software "The Vault", as it is fully dedicated to that task. Gatherer Extractor is a database & pics manager.
Nonetheless, you ought to be able to extract the cards of the "Midnight Hunt" set in French. As you mention, French translations are available on Scryfall, thus I don't see any reason GEx won't extract them. Which export do you try to use?
Well, I'm not sure about what you mean by "which export" ; I selected "download all data + Download scans".
The scans are in French, but the French columns (name, type and ability) remain empty.
On the other hand, I noticed 2 weird things during the extraction : first, there is no abbreviation regarding this edition ; second, and maybe more important : there seems to be a strange symbol in front of each card name in English (see attached image). I think this symbol could cause your program not to recognize the baginning/end of each cell but I'm not not sure (and I don't know how to fix this ^^)
1/ You ought to download the last version of the software which includes an updated set databse. You should not leave set codes empty. Indeed, Scryfall set codes are mandatory to well extract foreign database and pics. You can either manually edit the sets (by clicking on the warning sign in the toolbar just above the set list) or download a software update;
2/ To activate the extraction in French, you have to tick the relevant item with the button with the flags on it. The software then extracts ticked foreign database from Scryfall (if available);
3/ The strange symbol you mention are just brackets with an empty set code in between
In the last times, WOTC got crazy into releasing new sets with borderless cards, extended art cards, alternate art cards, promos, buy a box, and so on. It seems Gatherer Extractor does not handle correctly all of these: it only downloads "standard" cards.
For instance, I tried to download the full set of C21 by using your awesome software, but by choosing the box "C21" in the left menu,I get 329 scans and 26 tokens. The address https://scryfall.com/sets/c21 has 409 scans, and the C21 token page has 30 tokens.
It seems that Gatherer Extractor misses the alternate cards when downloading the full set, and some other.
@verdealex79: That's correct... and intentional All those crazy cards are stored in a dedicated set called "Magic 2021 Core Set Collector Boosters". I acknowledge this is a bit messy, but there are so many special cards now at each set release...
Concerning the tokens, the software seems to correctly extract the 30 tokens.
Hi, i made an investigation and I am not sure its intentional.. i explain...
By looking at what happens when i download C21, I can see that 439 cards are found into Gather"er Extractor, even if at the end I have way less scans in the disk. Gatherer DO download these crazy scans.
Problem is.. that in my settings, scans are to be saved with "card name". And all these alternate versions of cards, have the same name of the standard version... so the second variant overwrite the first scan in the disk.
In fact I had a check on the disk while it was still downloading... and I could see the normal version of a card, while at the end of the processing, in the disk there was the "extended art" version. The first scan had been downloaded at the beginning, but it was overwritten by the second variant with the same name.
I can see there are options to name scans differently, but none of them is related to the variant.
I use thse scans with Forge, which uses every possible variant... and the very same name for jpgs... it would be sufficient to name the scans with name+variant.full.jpg, when there are variants of the scan.
Like "Adrix and Nev, Twincasters1.full.jpg" and "Adrix and Nev, Twincasters2.full.jpg" for instance. If the software provided this option, that would be great!
Anyway, thank you for the software even if you should decide that adding this option isnt worthy. Its awwesome!!!
Ok, the problem is more about overwritten files than the extraction itself. Normally, if alternative/variant entries are found — and if files are supposed to be stored by names — then you should have the file naming you describe (as the Alt. column should contain data like "1", "2" etc.). I'll check that and let you know.
Thank you for the software. It helps me a lot.
I use v7.0 to download simplified Chinese scans, but in fact the downloaded scans is still in tranditional Chinese, as shown below (Right: tranditional Chinese. Left: simplified Chinese).
And the options of "simplified Chinese" and "traditional Chinese" in the menu are in the opposite position (do not match the icon).
Greetings! I've been using your excellent software for a long time now (I think I started somewhere in version 2?) and it's great!
Some items I've found:
Missing cards:
SF-PGPX_2018a Plains GPX
2021 Judge Gift Program cards are all missing:
SF-PJ21_1 Morophon, the Boundless JGP
SF-PJ21_2 K'rrik, Son of Yawgmoth JGP
SF-PJ21_3 Edgar Markov JGP
SF-PJ21_4 Ezuri, Claw of Progress JGP
SF-PJ21_5 The Gitrog Monster JGP
SF-PJ21_6 Grand Arbiter Augustin IV JGP
SF-PJ21_7 Karlov of the Ghost Council JGP
SF-PJ21_8 Mizzix of the Izmagnus JGP
SF-PJ21_9a Nicol Bolas, the Ravager JGP
SF-PJ21_9b Nicol Bolas, the Arisen JGP
SF-PJ21_10 Zacama, Primal Calamity JGP
Jumpstart: Historic Horizons (Scryfall set code J21) has been mixed into Judge Gift Program (set code JGP).
These all have Gatherer IDs, but are coming up with only their Scryfall IDs:
538393 Arlinn, the Pack's Hope MID 279a
538394 Arlinn, the Moon's Fury MID 279b
538495 Jerren, Corrupted Bishop MID 316a
538496 Ormendahl, the Corrupter MID 316b
538497 Dennick, Pious Apprentice MID 317a
538498 Dennick, Pious Apparition MID 317b
538501 Ludevic, Necrogenius MID 320a
538502 Olag, Ludevic's Hubris MID 320b
538679 Enduring Angel MID 327a
538680 Angelic Enforcer MID 327b
538689 Malevolent Hermit MID 336a
538690 Benevolent Geist MID 336b
538693 Poppet Stitcher MID 339a
538694 Poppet Factory MID 339b
538700 Curse of Leeches MID 345a
538701 Leeching Lurker MID 345b
538714 Smoldering Egg MID 358a
538715 Ashmouth Dragon MID 358b
538736 Hostile Hostel MID 379a
538737 Creeping Inn MID 379b
The "Ampersand" promos from AFR have an "a" in the Scryfall ID tag and their #.
Example:
SF-PAFR_261a Treasure Vault RLS Artifact Land R 261a
vs
SF-PAFR_261 Treasure Vault RLS Artifact Land R 261
I just had a couple of ideas that I think would be useful.
First, an option to automatically fetch/update the Set Codes when a new set comes out.
Every time a new set comes out, users need to look up the set info and manually update the Set Code data.
With this, maybe an option to only update Set Codes with missing data, and also an option to update/overwrite all Set Codes, in case someone entered the wrong information for an existing Set Code.
Second, an option to save by Set ID. I have one massive .csv with almost every set, which I like for creating/updating a massive amount of data from multiple sets.
It's easier than creating/updating the data for one set, saving it, selecting a different set, saving it, etc. It would be helpful if it could parse out all of the data into separate .csv files.
Also, loading in the huge .csv takes a few minutes to load, but if I already have to data for a set, and just want to download the scans, I'd rather just open the .csv for a specific Set Code.
Lastly, maybe an option to select sets by format - Standard, Modern, Commander, etc. Then users could have a file for each format, so they know which sets have rotated out, or so 'Unglued' cards don't show up if the user only wants Commander cards - things like that.
Let me know what you think, or if you have any questions about these suggestions.
Regardless, love the software.
1. There is a large lag when opening the options tab perhaps a configuration is occurring each time the menu is opened vs being initiated once at product launch?
2. If I switch the scan type to download i.e. xloriginal.png to xloriginal.jpeg I get an unhandled exception error (see below) that requires me to close the application and reload the database. I am definitely not out of system memory, the system has 64GB of RAM and close to 40GB is free.
3. I also noticed that when saving images with "ID-Name-#" scheme it would fail on certain cards that didn't have the normal style number such as ones with certain "_" in the number. So I have used only the "ID" scheme which seems to work for all cards.
4. Is there a discord or email which we can speak with you more interactively?
Error
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.
at System.IO.File.InternalReadAllBytes(String path, Boolean checkHost)
at System.IO.File.ReadAllBytes(String path)
at Gatherer_Extractor.FenetrePrincipale.Etablir_Status(DataRow TempRow)
at Gatherer_Extractor.Options.Modify_fromOptions()
at Gatherer_Extractor.Options.Button_OK_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
Sorry for those late answers. With many professional missions over the last months, it was pretty difficult for me to dedicate some time to Gatherer Extractor.
@ Kendeaux:
Thank you Kendeaux for your suggestions!
1/ automatic fetching/update of the Set Codes when a new set comes out is a difficult task. Because:
-- Collector booster sets are set manually and defined from Scryfall in the set menu
-- Double-faced card list and other special card lists that need a special management must be updated manually as well in the dedicated table.
That is why I always provide a small update when a new set comes out with updated parameter definitions so that the data extraction is correct. This update is usully available up to 5 working days after the set release on Scryfall.
2/ Save in separate csv is a good suggestion. I will implement it for next release. Loading multiple csv files or one after the other is already possible.
3/ Filtering the database by format seems achievable. However this would require a complete database with calculated legalities (this data is calculated based on the format definitions and not extracted by default)
@ MTGEpicurean:
Thanks MTGEpicurean for your feedback. It is much appreciated.
1/ That is right and I am currently working on it. I will try to see what slows down the opening of the panel and optimize this.
2/ I am sorry for the inconvenience. Unfortunately, I am not able to reproduce the bug. Could you describe in detail what you are doing to raise the unhandled exception? Many thanks in advance.
3/ Would you have a concrete example that would help me to fix the issue? Using card IDs remains the most secure way to manage cards and scans.
4/ I do not have any Discord group or so dedicated to Gatherer Extractor. I develop and maintain it on my spare time and provide the software to the MTG community for free. As a consequence, I do not want to put too much pressure on me with a highly-reactive support. I just do not have time for that given my professional-and-private life. Along with this point, I cannot commit on delivery dates about the implementation of requested services/options/developments and bug fixes.
Anyway, for a direct contact, feel free to send me a private message here.
I've had it error out each time I've done a full download of cards in ID-#-Name option. I've seen three different errors. System Out of Memory, DBNull, and Length.
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.InvalidCastException: Conversion from type 'DBNull' to type 'String' is not valid.
at Microsoft.VisualBasic.CompilerServices.Conversions.ToString(Object Value)
at Gatherer_Extractor.Extract_Fct.Get_Data(DataRow TempRow, String Logs, String LogsSF, String websource, String lang)
at Gatherer_Extractor.FenetrePrincipale.Treatment_MAJ(Int32 nbre_tache, BackgroundWorker worker, DoWorkEventArgs e)
at Gatherer_Extractor.FenetrePrincipale.BWkMAJ_DoWork(Object sender, DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
Second Error on subsequent run
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.ArgumentException: Argument 'Length' must be greater or equal to zero.
at Microsoft.VisualBasic.Strings.Mid(String str, Int32 Start, Int32 Length)
at Gatherer_Extractor.Extract_Fct.Get_Logs_side(String Logs, String websource)
at Gatherer_Extractor.Extract_Fct.Get_Data(DataRow TempRow, String Logs, String LogsSF, String websource, String lang)
at Gatherer_Extractor.FenetrePrincipale.Treatment_MAJ(Int32 nbre_tache, BackgroundWorker worker, DoWorkEventArgs e)
at Gatherer_Extractor.FenetrePrincipale.BWkMAJ_DoWork(Object sender, DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
1/ I found the bug concerning the "Length error" for card "Omniclown/Pie-roclasm". The card is bugged on the WotC Gatherer (the pie-roclasm part is missing...). Thid will e fixed in the next release.
2/ The "out of memory error" is a mystery to me. I cannot reproduce it by changing the image settings as you suggest. Could you provide more info with a printscreen?
3/ The "DBNull error" is fixed. For an odd reason, some cards from Scryfall have defined multiverseID that seems not to exist on the Gatherer.
For instance:
[UNF] Katerina of Myra's Marvel has a multiverseID defined here : https://scryfall.com/card/unf/245/katerina-of-myras-marvels
But Gatherer returns the front page instead of the card page : https://gatherer.wizards.com/Pages/Card/Details.aspx?multiverseid=580587
Then errors are naturally raised because card info (type, ability etc.) are not found in the card-page logs.
The bug is now fixed and the fixing is available in the next release.
7.2 is released.
Battles are now supported. Loyalty characteristics of Planeswalkers which are missing from Gatherer (probably because of a bug on their side coming with the last update of the website to implement battles) are now patched with Scryfall data.
Enjoy!
"The file format and extension filename.xls don't match. The file could be corrupted or unsafe. Unless you trust its source, don't open it."
If I try to import this file into MS SQL it will not work. My workaround was the following:
Open the .xls file, save as an .xlsx file (which corrects another issue with importing into a SQL DB) then I'm able to import after dealing with the Flavor text nvarchar length, and allow Nulls for Legalities (TLC)
I've also noticed that the ID for the THM2 (and maybe other cards with alpha-numeric ID's are listed as Null when imported because the ID column is listed as a Double / float
In the previous version I did not have these issue importing into a SQL DB, just figured I would let you know in case it's something that can be corrected.
And if you continue, it should be OK. The file is safe. I must have a look at the library I am using in GEx to check why the file format and the extension filename (.xls) don't match for Excel.
Why not directly using the SQL output of GEx? The ID column is listed as text as all the other columns.
Thanks!
Reliquary for iOS
Your Magic Collection Anywhere You Go
reliquaryapp.com
Thanks!
Reliquary for iOS
Your Magic Collection Anywhere You Go
reliquaryapp.com
Does it occur for you always for this card? Or rather randomly after a quite long period of data extraction?
Many thanks for your support.
I've been trying to set and classify my collection with your program but I encounter a problem with Innistrad midnight hunt : I want to export the cards in French, but only 2 cards seems to be translated. I looked on Scryfall and the translation seems correct there ; am I doing something wrong ?
Thank you again and have a nice day !
EDIT : I'm using Gatherer Extractor v7.0g on win 10
For collection management, I would strongly recommend you to use my other software "The Vault", as it is fully dedicated to that task. Gatherer Extractor is a database & pics manager.
Nonetheless, you ought to be able to extract the cards of the "Midnight Hunt" set in French. As you mention, French translations are available on Scryfall, thus I don't see any reason GEx won't extract them. Which export do you try to use?
Best regards,
The scans are in French, but the French columns (name, type and ability) remain empty.
On the other hand, I noticed 2 weird things during the extraction : first, there is no abbreviation regarding this edition ; second, and maybe more important : there seems to be a strange symbol in front of each card name in English (see attached image). I think this symbol could cause your program not to recognize the baginning/end of each cell but I'm not not sure (and I don't know how to fix this ^^)
Hope that may help...
Best regards,
1/ You ought to download the last version of the software which includes an updated set databse. You should not leave set codes empty. Indeed, Scryfall set codes are mandatory to well extract foreign database and pics. You can either manually edit the sets (by clicking on the warning sign in the toolbar just above the set list) or download a software update;
2/ To activate the extraction in French, you have to tick the relevant item with the button with the flags on it. The software then extracts ticked foreign database from Scryfall (if available);
3/ The strange symbol you mention are just brackets with an empty set code in between
Best regards,
In the last times, WOTC got crazy into releasing new sets with borderless cards, extended art cards, alternate art cards, promos, buy a box, and so on. It seems Gatherer Extractor does not handle correctly all of these: it only downloads "standard" cards.
For instance, I tried to download the full set of C21 by using your awesome software, but by choosing the box "C21" in the left menu,I get 329 scans and 26 tokens. The address https://scryfall.com/sets/c21 has 409 scans, and the C21 token page has 30 tokens.
It seems that Gatherer Extractor misses the alternate cards when downloading the full set, and some other.
C21 is just an example.
Thank you for your awesome software!
Concerning the tokens, the software seems to correctly extract the 30 tokens.
By looking at what happens when i download C21, I can see that 439 cards are found into Gather"er Extractor, even if at the end I have way less scans in the disk. Gatherer DO download these crazy scans.
Problem is.. that in my settings, scans are to be saved with "card name". And all these alternate versions of cards, have the same name of the standard version... so the second variant overwrite the first scan in the disk.
In fact I had a check on the disk while it was still downloading... and I could see the normal version of a card, while at the end of the processing, in the disk there was the "extended art" version. The first scan had been downloaded at the beginning, but it was overwritten by the second variant with the same name.
I can see there are options to name scans differently, but none of them is related to the variant.
I use thse scans with Forge, which uses every possible variant... and the very same name for jpgs... it would be sufficient to name the scans with name+variant.full.jpg, when there are variants of the scan.
Like "Adrix and Nev, Twincasters1.full.jpg" and "Adrix and Nev, Twincasters2.full.jpg" for instance. If the software provided this option, that would be great!
Anyway, thank you for the software even if you should decide that adding this option isnt worthy. Its awwesome!!!
I use v7.0 to download simplified Chinese scans, but in fact the downloaded scans is still in tranditional Chinese, as shown below (Right: tranditional Chinese. Left: simplified Chinese).
And the options of "simplified Chinese" and "traditional Chinese" in the menu are in the opposite position (do not match the icon).
Some items I've found:
Missing cards:
SF-PGPX_2018a Plains GPX
2021 Judge Gift Program cards are all missing:
SF-PJ21_1 Morophon, the Boundless JGP
SF-PJ21_2 K'rrik, Son of Yawgmoth JGP
SF-PJ21_3 Edgar Markov JGP
SF-PJ21_4 Ezuri, Claw of Progress JGP
SF-PJ21_5 The Gitrog Monster JGP
SF-PJ21_6 Grand Arbiter Augustin IV JGP
SF-PJ21_7 Karlov of the Ghost Council JGP
SF-PJ21_8 Mizzix of the Izmagnus JGP
SF-PJ21_9a Nicol Bolas, the Ravager JGP
SF-PJ21_9b Nicol Bolas, the Arisen JGP
SF-PJ21_10 Zacama, Primal Calamity JGP
Jumpstart: Historic Horizons (Scryfall set code J21) has been mixed into Judge Gift Program (set code JGP).
These all have Gatherer IDs, but are coming up with only their Scryfall IDs:
538393 Arlinn, the Pack's Hope MID 279a
538394 Arlinn, the Moon's Fury MID 279b
538495 Jerren, Corrupted Bishop MID 316a
538496 Ormendahl, the Corrupter MID 316b
538497 Dennick, Pious Apprentice MID 317a
538498 Dennick, Pious Apparition MID 317b
538501 Ludevic, Necrogenius MID 320a
538502 Olag, Ludevic's Hubris MID 320b
538679 Enduring Angel MID 327a
538680 Angelic Enforcer MID 327b
538689 Malevolent Hermit MID 336a
538690 Benevolent Geist MID 336b
538693 Poppet Stitcher MID 339a
538694 Poppet Factory MID 339b
538700 Curse of Leeches MID 345a
538701 Leeching Lurker MID 345b
538714 Smoldering Egg MID 358a
538715 Ashmouth Dragon MID 358b
538736 Hostile Hostel MID 379a
538737 Creeping Inn MID 379b
The "Ampersand" promos from AFR have an "a" in the Scryfall ID tag and their #.
Example:
SF-PAFR_261a Treasure Vault RLS Artifact Land R 261a
vs
SF-PAFR_261 Treasure Vault RLS Artifact Land R 261
20575 Spite // Malice INV
20577 Pain // Suffering INV
107259 Trial // Error DIS
109704 Assault // Battery TSB
205409 Assault // Battery HOP
205384 Order // Chaos HOP
247159 Fire // Ice CMD
259266 Rise // Fall DDH
430837 Farm // Market HOU
430845 Refuse // Cooperate HOU
446223 Will Kenrith BBD
446224 Rowan Kenrith BBD
456821 Fire // Ice UMA
476131 Ral's Vanguard CMB1
482840 Find // Finality C20
496040 Struggle // Survive ZNC
SF-PLG20_1 Reliquary Tower MDI
SF-PLG20_2 Hangarback Walker MDI
SF-MPR_1 Wasteland MPRP
SF-P03_1 Voidmage Prodigy MPRP
SF-P04_1 Powder Keg MPRP
SF-PW22_1 Consider WPN
SF-PW22_2 Fateful Absence WPN
SF-PW22_3 Atsushi, the Blazing Sky WPN
SF-PDP15_1 Soul of Ravnica DPA
SF-PDP15_2 Soul of Zendikar DPA
479393 Faerie Rogue Token SLD
479394 Faerie Rogue Token SLD
479395 Faerie Rogue Token SLD
479396 Faerie Rogue Token SLD
479390 Cat Token SLD
479391 Cat Token SLD
SF-SLD_060 Storm Crow SLD
SF-SLD_061 Goblin Snowman SLD
SF-SLD_062 Mudhole SLD
SF-SLD_100 Plains SLD
SF-SLD_101 Plains SLD
SF-SLD_102 Island SLD
SF-SLD_103 Island SLD
SF-SLD_104 Swamp SLD
SF-SLD_105 Swamp SLD
SF-SLD_106 Mountain SLD
SF-SLD_107 Mountain SLD
SF-SLD_108 Forest SLD
SF-SLD_109 Forest SLD
SF-SLD_119 Swamp SLD
SF-SLD_120 Sower of Temptation SLD
SF-SLD_121 Damnation SLD
SF-SLD_122 Enchanted Evening SLD
SF-SLD_123 Hallowed Fountain SLD
SF-SLD_124 Watery Grave SLD
SF-SLD_125 Blood Crypt SLD
SF-SLD_126 Stomping Ground SLD
SF-SLD_127 Temple Garden SLD
SF-SLD_128 Godless Shrine SLD
SF-SLD_129 Steam Vents SLD
SF-SLD_130 Overgrown Tomb SLD
SF-SLD_131 Sacred Foundry SLD
SF-SLD_132 Breeding Pool SLD
SF-SLD_138 Anguished Unmaking SLD
SF-SLD_139 Assassin's Trophy SLD
SF-SLD_140 Decimate SLD
SF-SLD_141 Dreadbore SLD
SF-SLD_142 Thraximundar SLD
SF-SLD_154 Admonition Angel SLD
SF-SLD_155 Roil Elemental SLD
SF-SLD_156 Zulaport Cutthroat SLD
SF-SLD_157 Warren Instigator SLD
SF-SLD_158 Avenger of Zendikar SLD
SF-SLD_159 Demonlord Belzenlok SLD
SF-SLD_160 Griselbrand SLD
SF-SLD_161 Liliana's Contract SLD
SF-SLD_162 Kothophed, Soul Hoarder SLD
SF-SLD_163 Razaketh, the Foulblooded SLD
SF-SLD_173 Balance SLD
SF-SLD_174 Brainstorm SLD
SF-SLD_175 Counterspell SLD
SF-SLD_176 Birds of Paradise SLD
SF-SLD_177 Howling Mine SLD
SF-SLD_178 Wasteland SLD
SF-SLD_185 Wrath of God SLD
SF-SLD_186 Preordain SLD
SF-SLD_187 Decree of Pain SLD
SF-SLD_188 Gamble SLD
SF-SLD_189 Nature's Lore SLD
SF-SLD_190 Soul-Scar Mage SLD
SF-SLD_191 Dryad of the Ilysian Grove SLD
SF-SLD_192 Sakura-Tribe Elder SLD
SF-SLD_193 Spell Queller SLD
SF-SLD_194 Metallic Mimic SLD
SF-SLD_195 Chatter of the Squirrel SLD
SF-SLD_196 Krosan Beast SLD
SF-SLD_197 Squirrel Mob SLD
SF-SLD_198 Squirrel Wrangler SLD
SF-SLD_199 Swarmyard SLD
SF-SLD_200 Squirrel Token SLD
SF-SLD_201 Arcane Signet SLD
SF-SLD_202 Chromatic Lantern SLD
SF-SLD_203 Commander's Sphere SLD
SF-SLD_204 Darksteel Ingot SLD
SF-SLD_205 Gilded Lotus SLD
SF-SLD_206 Exquisite Blood SLD
SF-SLD_207 Night's Whisper SLD
SF-SLD_208 Phyrexian Tower SLD
SF-SLD_209 Elesh Norn, Grand Cenobite SLD
SF-SLD_210 Jin-Gitaxias, Core Augur SLD
SF-SLD_211 Sheoldred, Whispering One SLD
SF-SLD_212 Urabrask the Hidden SLD
SF-SLD_213 Vorinclex, Voice of Hunger SLD
509365 Goblin Token SLD
SF-SLD_226 Path to Exile SLD
SF-SLD_227 Well of Lost Dreams SLD
SF-SLD_228 Frantic Search SLD
SF-SLD_229 Intruder Alarm SLD
SF-SLD_230 Shelldock Isle SLD
SF-SLD_231 Gravecrawler SLD
SF-SLD_232 Liliana, Death's Majesty SLD
SF-SLD_233 Rise of the Dark Realms SLD
SF-SLD_234 Brazen Borrower // Petty Theft SLD
SF-SLD_235 Vindictive Lich SLD
SF-SLD_236 Meandering Towershell SLD
SF-SLD_237 Ohran Frostfang SLD
SF-SLD_238 Thragtusk SLD
SF-SLD_251 Dack Fayden SLD
SF-SLD_252 Teferi, Time Raveler SLD
SF-SLD_253 Karn, the Great Creator SLD
SF-SLD_254 Plains SLD
SF-SLD_255 Island SLD
SF-SLD_256 Swamp SLD
SF-SLD_257 Mountain SLD
SF-SLD_258 Forest SLD
SF-SLD_259 Michiko Konda, Truth Seeker SLD
SF-SLD_260 Kami of the Crescent Moon SLD
SF-SLD_261 Toshiro Umezawa SLD
SF-SLD_262 Heartless Hidetsugu SLD
SF-SLD_263 Reki, the History of Kamigawa SLD
SF-SLD_268 All Is Dust SLD
SF-SLD_269 Artifact Mutation SLD
SF-SLD_270 Drown in the Loch SLD
SF-SLD_271 Fire Covenant SLD
SF-SLD_272 Fractured Identity SLD
SF-SLD_273 Fracturing Gust SLD
SF-SLD_274 Ob Nixilis Reignited SLD
SF-SLD_275 Sire of Insanity SLD
SF-SLD_276 Sliver Hivelord SLD
SF-SLD_277 Spellskite SLD
SF-SLD_278 Sanctum Prelate SLD
SF-SLD_279 Carpet of Flowers SLD
SF-SLD_280 Sphere of Safety SLD
SF-SLD_281 Karmic Guide SLD
SF-SLD_282 Mesa Enchantress SLD
SF-SLD_283 Archaeomancer SLD
SF-SLD_284 Bloom Tender SLD
SF-SLD_285 Meteor Golem SLD
SF-SLD_286 Azorius Signet SLD
SF-SLD_287 Dimir Signet SLD
SF-SLD_288 Gruul Signet SLD
SF-SLD_289 Rakdos Signet SLD
SF-SLD_290 Selesnya Signet SLD
SF-SLD_291 Boros Signet SLD
SF-SLD_292 Golgari Signet SLD
SF-SLD_293 Izzet Signet SLD
SF-SLD_294 Orzhov Signet SLD
SF-SLD_295 Simic Signet SLD
SF-SLD_296 Mother of Runes SLD
SF-SLD_297 Mother of Runes SLD
SF-SLD_298 Mother of Runes SLD
SF-SLD_299 Mother of Runes SLD
SF-SLD_300 Ancient Den SLD
SF-SLD_301 Seat of the Synod SLD
SF-SLD_302 Vault of Whispers SLD
SF-SLD_303 Great Furnace SLD
SF-SLD_304 Tree of Tales SLD
SF-SLD_305 Ravenous Chupacabra SLD
SF-SLD_306 Managorger Hydra SLD
SF-SLD_307 Pathbreaker Ibex SLD
SF-SLD_308 Temur Sabertooth SLD
SF-SLD_309 Winding Constrictor SLD
SF-SLD_310 Unbreakable Formation SLD
SF-SLD_311 Whir of Invention SLD
SF-SLD_312 Hero's Downfall SLD
SF-SLD_313 Impact Tremors SLD
SF-SLD_314 Primal Vigor SLD
SF-SLD_315 Commander's Sphere SLD
SF-SLD_316 Fleet Swallower SLD
SF-SLD_317 Goblin Trashmaster SLD
SF-SLD_318 Ilharg, the Raze-Boar SLD
SF-SLD_319 Protean Hulk SLD
SF-SLD_320 Gishath, Sun's Avatar SLD
SF-SLD_321 Dismember SLD
SF-SLD_322 Blasphemous Act SLD
SF-SLD_323 Beast Within SLD
SF-SLD_324 Grafdigger's Cage SLD
SF-SLD_325 Snow-Covered Plains SLD
SF-SLD_326 Snow-Covered Island SLD
SF-SLD_327 Snow-Covered Swamp SLD
SF-SLD_328 Snow-Covered Mountain SLD
SF-SLD_329 Snow-Covered Forest SLD
SF-SLD_330 Aether Gust SLD
SF-SLD_331 Counterspell SLD
SF-SLD_332 Fabricate SLD
SF-SLD_333 Fact or Fiction SLD
SF-SLD_334 Mystical Tutor SLD
SF-SLD_340 Mind Flayer, the Shadow SLD
SF-SLD_341 Chief Jim Hopper SLD
SF-SLD_342 Dustin, Gadget Genius SLD
SF-SLD_343 Eleven, the Mage SLD
SF-SLD_344 Lucas, the Sharpshooter SLD
SF-SLD_345 Max, the Daredevil SLD
SF-SLD_346 Mike, the Dungeon Master SLD
SF-SLD_347 Will the Wise SLD
SF-SLD_348 Clue Token SLD
SF-SLD_349 Moorland Haunt SLD
SF-SLD_350 Vault of the Archangel SLD
SF-SLD_351 Nephalia Drownyard SLD
SF-SLD_352 Desolate Lighthouse SLD
SF-SLD_353 Stensia Bloodhall SLD
SF-SLD_354 Grim Backwoods SLD
SF-SLD_355 Kessig Wolf Run SLD
SF-SLD_356 Slayers' Stronghold SLD
SF-SLD_357 Gavony Township SLD
SF-SLD_358 Alchemist's Refuge SLD
SF-SLD_359 Plains SLD
SF-SLD_360 Island SLD
SF-SLD_361 Swamp SLD
SF-SLD_362 Mountain SLD
SF-SLD_363 Forest SLD
SF-SLD_364 Swords to Plowshares SLD
SF-SLD_365 Grim Tutor SLD
SF-SLD_366 Blood Moon SLD
SF-SLD_367 Cut // Ribbons SLD
SF-SLD_368 Teferi's Puzzle Box SLD
SF-SLD_369 Generous Gift SLD
SF-SLD_370 Chain Lightning SLD
SF-SLD_371 Kodama's Reach SLD
SF-SLD_372 Heirloom Blade SLD
SF-SLD_373 Mulldrifter SLD
SF-SLD_374 Mulldrifter SLD
SF-SLD_375 Craterhoof Behemoth SLD
SF-SLD_376 Craterhoof Behemoth SLD
SF-SLD_377 Metalwork Colossus SLD
SF-SLD_378 Metalwork Colossus SLD
SF-SLD_379a Zndrsplt, Eye of Wisdom SLD
SF-SLD_379b Zndrsplt, Eye of Wisdom SLD
SF-SLD_380a Okaun, Eye of Chaos SLD
SF-SLD_380b Okaun, Eye of Chaos SLD
SF-SLD_381a Propaganda SLD
SF-SLD_381b Propaganda SLD
SF-SLD_382a Stitch in Time SLD
SF-SLD_382b Stitch in Time SLD
SF-SLD_383a Krark's Thumb SLD
SF-SLD_383b Krark's Thumb SLD
SF-SLD_384 Swamp SLD
SF-SLD_477 Path to Exile SLD
SF-SLD_478 Rhystic Study SLD
SF-SLD_479 Duress SLD
SF-SLD_480 Seize the Day SLD
SF-SLD_481 Krosan Grip SLD
SF-SLD_482 Counterflux SLD
SF-SLD_483 Thran Dynamo SLD
SF-SLD_484 Plains SLD
SF-SLD_485 Island SLD
SF-SLD_486 Swamp SLD
SF-SLD_487 Mountain SLD
SF-SLD_488 Forest SLD
SF-SLD_501 Karn, the Great Creator SLD
SF-SLD_502 Ugin, the Ineffable SLD
SF-SLD_503 Gideon Blackblade SLD
SF-SLD_504 Teyo, the Shieldmage SLD
SF-SLD_505 The Wanderer SLD
SF-SLD_506 Jace, Wielder of Mysteries SLD
SF-SLD_507 Kasmina, Enigmatic Mentor SLD
SF-SLD_508 Narset, Parter of Veils SLD
SF-SLD_509 Davriel, Rogue Shadowmage SLD
SF-SLD_510 Liliana, Dreadhorde General SLD
SF-SLD_511 Ob Nixilis, the Hate-Twisted SLD
SF-SLD_512 Chandra, Fire Artisan SLD
SF-SLD_513 Jaya, Venerated Firemage SLD
SF-SLD_514 Sarkhan the Masterless SLD
SF-SLD_515 Tibalt, Rakish Instigator SLD
SF-SLD_516 Arlinn, Voice of the Pack SLD
SF-SLD_517 Jiang Yanggu, Wildcrafter SLD
SF-SLD_518 Nissa, Who Shakes the World SLD
SF-SLD_519 Vivien, Champion of the Wilds SLD
SF-SLD_520 Ajani, the Greathearted SLD
SF-SLD_521 Domri, Anarch of Bolas SLD
SF-SLD_522 Nicol Bolas, Dragon-God SLD
SF-SLD_523 Ral, Storm Conduit SLD
SF-SLD_524 Sorin, Vengeful Bloodlord SLD
SF-SLD_525 Tamiyo, Collector of Tales SLD
SF-SLD_526 Teferi, Time Raveler SLD
SF-SLD_527 Angrath, Captain of Chaos SLD
SF-SLD_528 Ashiok, Dream Render SLD
SF-SLD_529 Dovin, Hand of Control SLD
SF-SLD_530 Huatli, the Sun's Heart SLD
SF-SLD_531 Kaya, Bane of the Dead SLD
SF-SLD_532 Kiora, Behemoth Beckoner SLD
SF-SLD_533 Nahiri, Storm of Stone SLD
SF-SLD_534 Saheeli, Sublime Artificer SLD
SF-SLD_535 Samut, Tyrant Smasher SLD
SF-SLD_536 Vraska, Swarm's Eminence SLD
SF-SLD_537 Tibalt, the Fiend-Blooded SLD
SF-SLD_538 Evolving Wilds SLD
SF-SLD_539 Swamp SLD
SF-SLD_540 Plains SLD
SF-SLD_541 Plains SLD
SF-SLD_542 Plains SLD
SF-SLD_543 Plains SLD
SF-SLD_544 Plains SLD
SF-SLD_545 Plains SLD
SF-SLD_546 Plains SLD
SF-SLD_547 Plains SLD
SF-SLD_548 Island SLD
SF-SLD_549 Island SLD
SF-SLD_550 Island SLD
SF-SLD_551 Island SLD
SF-SLD_552 Island SLD
SF-SLD_553 Island SLD
SF-SLD_554 Island SLD
SF-SLD_555 Island SLD
SF-SLD_556 Swamp SLD
SF-SLD_557 Swamp SLD
SF-SLD_558 Swamp SLD
SF-SLD_559 Swamp SLD
SF-SLD_560 Swamp SLD
SF-SLD_561 Swamp SLD
SF-SLD_562 Swamp SLD
SF-SLD_563 Swamp SLD
SF-SLD_564 Mountain SLD
SF-SLD_565 Mountain SLD
SF-SLD_566 Mountain SLD
SF-SLD_567 Mountain SLD
SF-SLD_568 Mountain SLD
SF-SLD_569 Mountain SLD
SF-SLD_570 Mountain SLD
SF-SLD_571 Mountain SLD
SF-SLD_572 Forest SLD
SF-SLD_573 Forest SLD
SF-SLD_574 Forest SLD
SF-SLD_575 Forest SLD
SF-SLD_576 Forest SLD
SF-SLD_577 Forest SLD
SF-SLD_578 Forest SLD
SF-SLD_579 Forest SLD
SF-SLD_582 Brainstorm SLD
SF-SLD_583 Fblthp, the Lost SLD
SF-SLD_584 Wrexial, the Risen Deep SLD
SF-SLD_585 Terramorphic Expanse SLD
SF-SLD_587 Spellskite SLD
SF-SLD_588 Sphere of Safety SLD
SF-SLD_589 Arcane Signet SLD
SF-SLD_591 Crash Through SLD
SF-SLD_597 Persistent Petitioners SLD
SF-SLD_598 Persistent Petitioners SLD
SF-SLD_603 Eldrazi Monument SLD
SF-SLD_604 Ornithopter SLD
SF-SLD_605 Panharmonicon SLD
SF-SLD_606 Swiftfoot Boots SLD
SF-SLD_607 Rogue's Passage SLD
SF-SLD_608 Darksteel Citadel SLD
SF-SLD_609a Hawkins National Laboratory SLD
SF-SLD_609b The Upside Down SLD
SF-SLD_670a Plains SLD
SF-SLD_670b Battlefield Forge SLD
SF-SLD_696 Spore Frog SLD
SF-SLD_697 Command Tower SLD
<removed the commander deck reprints that I can't figure out the numbers on yet>
I just had a couple of ideas that I think would be useful.
First, an option to automatically fetch/update the Set Codes when a new set comes out.
Every time a new set comes out, users need to look up the set info and manually update the Set Code data.
With this, maybe an option to only update Set Codes with missing data, and also an option to update/overwrite all Set Codes, in case someone entered the wrong information for an existing Set Code.
Second, an option to save by Set ID. I have one massive .csv with almost every set, which I like for creating/updating a massive amount of data from multiple sets.
It's easier than creating/updating the data for one set, saving it, selecting a different set, saving it, etc. It would be helpful if it could parse out all of the data into separate .csv files.
Also, loading in the huge .csv takes a few minutes to load, but if I already have to data for a set, and just want to download the scans, I'd rather just open the .csv for a specific Set Code.
Lastly, maybe an option to select sets by format - Standard, Modern, Commander, etc. Then users could have a file for each format, so they know which sets have rotated out, or so 'Unglued' cards don't show up if the user only wants Commander cards - things like that.
Let me know what you think, or if you have any questions about these suggestions.
Regardless, love the software.
-KD
2. If I switch the scan type to download i.e. xloriginal.png to xloriginal.jpeg I get an unhandled exception error (see below) that requires me to close the application and reload the database. I am definitely not out of system memory, the system has 64GB of RAM and close to 40GB is free.
3. I also noticed that when saving images with "ID-Name-#" scheme it would fail on certain cards that didn't have the normal style number such as ones with certain "_" in the number. So I have used only the "ID" scheme which seems to work for all cards.
4. Is there a discord or email which we can speak with you more interactively?
Error
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.
at System.IO.File.InternalReadAllBytes(String path, Boolean checkHost)
at System.IO.File.ReadAllBytes(String path)
at Gatherer_Extractor.FenetrePrincipale.Etablir_Status(DataRow TempRow)
at Gatherer_Extractor.Options.Modify_fromOptions()
at Gatherer_Extractor.Options.Button_OK_Click(Object sender, EventArgs e)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ButtonBase.WndProc(Message& m)
at System.Windows.Forms.Button.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4515.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
Gatherer Extractor
Assembly Version: 7.0.0.0
Win32 Version: 7.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/Gatherer%20Extractor/Gatherer%20Extractor.exe
----------------------------------------
Microsoft.VisualBasic
Assembly Version: 10.0.0.0
Win32 Version: 14.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Microsoft.VisualBasic/v4.0_10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4550.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4536.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4390.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4190.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4566.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
Accessibility
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
System.Runtime.Remoting
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Remoting/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
----------------------------------------
System.Data
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4536.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_32/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
System.Numerics
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Numerics/v4.0_4.0.0.0__b77a5c561934e089/System.Numerics.dll
----------------------------------------
Microsoft.WindowsAPICodePack.Shell
Assembly Version: 1.1.4.0
Win32 Version: 1.1.4.0
CodeBase: file:///C:/Program%20Files%20(x86)/Gatherer%20Extractor/Microsoft.WindowsAPICodePack.Shell.DLL
----------------------------------------
Microsoft.WindowsAPICodePack
Assembly Version: 1.1.4.0
Win32 Version: 1.1.4.0
CodeBase: file:///C:/Program%20Files%20(x86)/Gatherer%20Extractor/Microsoft.WindowsAPICodePack.DLL
----------------------------------------
System.Data.DataSetExtensions
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Data.DataSetExtensions/v4.0_4.0.0.0__b77a5c561934e089/System.Data.DataSetExtensions.dll
----------------------------------------
Microsoft.Office.Interop.Owc11
Assembly Version: 11.0.0.0
Win32 Version: 12.0.4518.1014
CodeBase: file:///C:/Windows/assembly/GAC/Microsoft.Office.Interop.Owc11/11.0.0.0__71e9bce111e9429c/Microsoft.Office.Interop.Owc11.dll
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
@ Kendeaux:
Thank you Kendeaux for your suggestions!
1/ automatic fetching/update of the Set Codes when a new set comes out is a difficult task. Because:
-- Collector booster sets are set manually and defined from Scryfall in the set menu
-- Double-faced card list and other special card lists that need a special management must be updated manually as well in the dedicated table.
That is why I always provide a small update when a new set comes out with updated parameter definitions so that the data extraction is correct. This update is usully available up to 5 working days after the set release on Scryfall.
2/ Save in separate csv is a good suggestion. I will implement it for next release. Loading multiple csv files or one after the other is already possible.
3/ Filtering the database by format seems achievable. However this would require a complete database with calculated legalities (this data is calculated based on the format definitions and not extracted by default)
@ MTGEpicurean:
Thanks MTGEpicurean for your feedback. It is much appreciated.
1/ That is right and I am currently working on it. I will try to see what slows down the opening of the panel and optimize this.
2/ I am sorry for the inconvenience. Unfortunately, I am not able to reproduce the bug. Could you describe in detail what you are doing to raise the unhandled exception? Many thanks in advance.
3/ Would you have a concrete example that would help me to fix the issue? Using card IDs remains the most secure way to manage cards and scans.
4/ I do not have any Discord group or so dedicated to Gatherer Extractor. I develop and maintain it on my spare time and provide the software to the MTG community for free. As a consequence, I do not want to put too much pressure on me with a highly-reactive support. I just do not have time for that given my professional-and-private life. Along with this point, I cannot commit on delivery dates about the implementation of requested services/options/developments and bug fixes.
Anyway, for a direct contact, feel free to send me a private message here.
I've had it error out each time I've done a full download of cards in ID-#-Name option. I've seen three different errors. System Out of Memory, DBNull, and Length.
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.InvalidCastException: Conversion from type 'DBNull' to type 'String' is not valid.
at Microsoft.VisualBasic.CompilerServices.Conversions.ToString(Object Value)
at Gatherer_Extractor.Extract_Fct.Get_Data(DataRow TempRow, String Logs, String LogsSF, String websource, String lang)
at Gatherer_Extractor.FenetrePrincipale.Treatment_MAJ(Int32 nbre_tache, BackgroundWorker worker, DoWorkEventArgs e)
at Gatherer_Extractor.FenetrePrincipale.BWkMAJ_DoWork(Object sender, DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4515.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
Gatherer Extractor
Assembly Version: 7.0.0.0
Win32 Version: 7.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/Gatherer%20Extractor/Gatherer%20Extractor.exe
----------------------------------------
Microsoft.VisualBasic
Assembly Version: 10.0.0.0
Win32 Version: 14.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Microsoft.VisualBasic/v4.0_10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4536.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4579.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4550.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4390.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4190.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Runtime.Remoting
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Remoting/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
----------------------------------------
System.Data
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4584.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_32/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
System.Numerics
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Numerics/v4.0_4.0.0.0__b77a5c561934e089/System.Numerics.dll
----------------------------------------
Microsoft.WindowsAPICodePack.Shell
Assembly Version: 1.1.4.0
Win32 Version: 1.1.4.0
CodeBase: file:///C:/Program%20Files%20(x86)/Gatherer%20Extractor/Microsoft.WindowsAPICodePack.Shell.DLL
----------------------------------------
Microsoft.WindowsAPICodePack
Assembly Version: 1.1.4.0
Win32 Version: 1.1.4.0
CodeBase: file:///C:/Program%20Files%20(x86)/Gatherer%20Extractor/Microsoft.WindowsAPICodePack.DLL
----------------------------------------
Accessibility
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
System.Data.DataSetExtensions
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Data.DataSetExtensions/v4.0_4.0.0.0__b77a5c561934e089/System.Data.DataSetExtensions.dll
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
Second Error on subsequent run
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
System.ArgumentException: Argument 'Length' must be greater or equal to zero.
at Microsoft.VisualBasic.Strings.Mid(String str, Int32 Start, Int32 Length)
at Gatherer_Extractor.Extract_Fct.Get_Logs_side(String Logs, String websource)
at Gatherer_Extractor.Extract_Fct.Get_Data(DataRow TempRow, String Logs, String LogsSF, String websource, String lang)
at Gatherer_Extractor.FenetrePrincipale.Treatment_MAJ(Int32 nbre_tache, BackgroundWorker worker, DoWorkEventArgs e)
at Gatherer_Extractor.FenetrePrincipale.BWkMAJ_DoWork(Object sender, DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.OnDoWork(DoWorkEventArgs e)
at System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4515.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
Gatherer Extractor
Assembly Version: 7.0.0.0
Win32 Version: 7.0.0.0
CodeBase: file:///C:/Program%20Files%20(x86)/Gatherer%20Extractor/Gatherer%20Extractor.exe
----------------------------------------
Microsoft.VisualBasic
Assembly Version: 10.0.0.0
Win32 Version: 14.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Microsoft.VisualBasic/v4.0_10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4536.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4579.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4550.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4390.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4190.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Runtime.Remoting
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Remoting/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
----------------------------------------
System.Data
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4584.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_32/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.Data.dll
----------------------------------------
System.Numerics
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Numerics/v4.0_4.0.0.0__b77a5c561934e089/System.Numerics.dll
----------------------------------------
Microsoft.WindowsAPICodePack.Shell
Assembly Version: 1.1.4.0
Win32 Version: 1.1.4.0
CodeBase: file:///C:/Program%20Files%20(x86)/Gatherer%20Extractor/Microsoft.WindowsAPICodePack.Shell.DLL
----------------------------------------
Microsoft.WindowsAPICodePack
Assembly Version: 1.1.4.0
Win32 Version: 1.1.4.0
CodeBase: file:///C:/Program%20Files%20(x86)/Gatherer%20Extractor/Microsoft.WindowsAPICodePack.DLL
----------------------------------------
Accessibility
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
System.Data.DataSetExtensions
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Data.DataSetExtensions/v4.0_4.0.0.0__b77a5c561934e089/System.Data.DataSetExtensions.dll
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
1/ I found the bug concerning the "Length error" for card "Omniclown/Pie-roclasm". The card is bugged on the WotC Gatherer (the pie-roclasm part is missing...). Thid will e fixed in the next release.
2/ The "out of memory error" is a mystery to me. I cannot reproduce it by changing the image settings as you suggest. Could you provide more info with a printscreen?
3/ The "DBNull error" is fixed. For an odd reason, some cards from Scryfall have defined multiverseID that seems not to exist on the Gatherer.
For instance:
[UNF] Katerina of Myra's Marvel has a multiverseID defined here : https://scryfall.com/card/unf/245/katerina-of-myras-marvels
But Gatherer returns the front page instead of the card page : https://gatherer.wizards.com/Pages/Card/Details.aspx?multiverseid=580587
Then errors are naturally raised because card info (type, ability etc.) are not found in the card-page logs.
The bug is now fixed and the fixing is available in the next release.
Thanks a lot for your support.
Battles are now supported. Loyalty characteristics of Planeswalkers which are missing from Gatherer (probably because of a bug on their side coming with the last update of the website to implement battles) are now patched with Scryfall data.
Enjoy!
------
--Original Message--
Nice, thanks Chaudakh.
Any reason why SLD (Secret Lair) only shows/DLs ~137 cards instead of 1,028 on Scryfall?