Mobi2Mobi Mobi2Mobi v0.13 - GUI for Mobiperl tools
#461  gggggg 03-09-2013, 12:00 PM
I get an exception when opening mobi files - do I have to install anything else or maybe .net Version doesnt suite... ?
Informationen über das Aufrufen von JIT-Debuggen
anstelle dieses Dialogfelds finden Sie am Ende dieser Meldung.
************** Ausnahmetext **************
System.IndexOutOfRangeException: Der Index war außerhalb des Arraybereichs. bei WindowsApplication1.progbOpenFile.UpdateBookFields(String datapath, Boolean open) in C:\Users\Developer\Desktop\Mobi2Mobi_GUI\Mobi2Mobi_GUI_v11\Mobi2Mobi_GUI\Form1.vb:Zeile 615. bei WindowsApplication1.progbOpenFile.btnOpenFile_Click(Object sender, EventArgs e) in C:\Users\Developer\Desktop\Mobi2Mobi_GUI\Mobi2Mobi_GUI_v11\Mobi2Mobi_GUI\Form1.vb:Zeile 439. bei System.Windows.Forms.Control.OnClick(EventArgs e) bei System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) bei System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) bei System.Windows.Forms.Control.WndProc(Message& m) bei System.Windows.Forms.ButtonBase.WndProc(Message& m) bei System.Windows.Forms.Button.WndProc(Message& m) bei System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) bei System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Geladene Assemblys **************
mscorlib Assembly-Version: Win32-Version: 2.0.50727.6400 (Win8RTMGDR.050727-6400). CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll.
Mobi2Mobi_GUI_VB Assembly-Version: Win32-Version: CodeBase: file:///D:/sources/calibre/mobi2mobi/Mobi2Mobi_GUI_VB.exe.
Microsoft.VisualBasic Assembly-Version: Win32-Version: 8.0.50727.6387 (Win8RTM.050727-6300). CodeBase: file:///C:/Windows/assembly/GAC_MSIL/Microsoft.VisualBasic/
System Assembly-Version: Win32-Version: 2.0.50727.6401 (Win8RTMGDR.050727-6400). CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/
System.Windows.Forms Assembly-Version: Win32-Version: 2.0.50727.6402 (Win8RTMGDR.050727-6400). CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/
System.Drawing Assembly-Version: Win32-Version: 2.0.50727.6401 (Win8RTMGDR.050727-6400). CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/
System.Runtime.Remoting Assembly-Version: Win32-Version: 2.0.50727.6387 (Win8RTM.050727-6300). CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Runtime.Remoting/
mscorlib.resources Assembly-Version: Win32-Version: 2.0.50727.6400 (Win8RTMGDR.050727-6400). CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll.
System.Windows.Forms.resources Assembly-Version: Win32-Version: 2.0.50727.6400 (Win8RTMGDR.050727-6400). CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms.resources/
************** JIT-Debuggen **************
Um das JIT-Debuggen (Just-In-Time) zu aktivieren, muss in der
Konfigurationsdatei der Anwendung oder des Computers
(machine.config) der jitDebugging-Wert im Abschnitt festgelegt werden.
Die Anwendung muss mit aktiviertem Debuggen kompiliert werden.
Zum Beispiel:
<configuration> < jitDebugging="true" />

#462  hatde130113 03-26-2014, 12:59 PM
Could you make MobìMobi to run as OSX version ? Thanks a lot!

#463  Infinite3 02-21-2015, 09:33 PM
Hello there, I am getting this error message.

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.IndexOutOfRangeException: Index was outside the bounds of the array.
at WindowsApplication1.progbOpenFile.UpdateBookFields (String datapath, Boolean open) in C:\Users\Developer\Desktop\Mobi2Mobi_GUI\Mobi2Mobi _GUI_v10\Mobi2Mobi_GUI\Form1.vb:line 615
at WindowsApplication1.progbOpenFile.btnOpenFile_Clic k(Object sender, EventArgs e) in C:\Users\Developer\Desktop\Mobi2Mobi_GUI\Mobi2Mobi _GUI_v10\Mobi2Mobi_GUI\Form1.vb:line 439
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnMouseUp(MouseEventAr gs 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.W ndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

************** Loaded Assemblies **************
Assembly Version:
Win32 Version: 2.0.50727.5485 (Win7SP1GDR.050727-5400)
CodeBase: file:///C:/Windows/Microsoft.NET/Framework64/v2.0.50727/mscorlib.dll
Assembly Version:
Win32 Version: n/a
CodeBase: file:///C:/Users/Joshua/Downloads/Mobi2Mobi_GUI_VB_v10/Mobi2Mobi_GUI_VB.exe
Assembly Version:
Win32 Version: 8.0.50727.5483 (Win7SP1GDR.050727-5400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/Microsoft.VisualBasic/
Assembly Version:
Win32 Version: 2.0.50727.5485 (Win7SP1GDR.050727-5400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/
Assembly Version:
Win32 Version: 2.0.50727.5483 (Win7SP1GDR.050727-5400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/
Assembly Version:
Win32 Version: 2.0.50727.5483 (Win7SP1GDR.050727-5400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/
Assembly Version:
Win32 Version: 2.0.50727.5488 (Win7SP1GDR.050727-5400)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Runtime.Remoting/

************** 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 section.
The application must also be compiled with debugging

For example:

< jitDebugging="true" />

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.

Does any one know what is wrong with it, and/or how to fix it?

#464  waterqds 02-24-2015, 08:51 PM
I also have the 2 kinds of errors:
1. Open a file whose name contains Chinese characters got the following error:
System.IndexOutOfRangeException: 索引à ƒÂ¨Ã‚Â¶Ã‚Â…ÃƒÂ¥Ã‚Â‡Ã‚ÂºÃƒ ¤ÂºÂ†Ã¦Â•Â°Ã §Ã‚»Â„界é ™ã€‚ 在
WindowsApplication1.progbOpenFile.UpdateBookFields (String datapath, Boolean open) 在
WindowsApplication1.progbOpenFile.btnOpenFile_Clic k(Object sender, EventArgs e) 在
System.Windows.Forms.Control.OnClick(EventArgs e) 在
System.Windows.Forms.Button.OnClick(EventArgs e) 在
System.Windows.Forms.Button.OnMouseUp(MouseEventAr gs mevent) 在
System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) 在
System.Windows.Forms.Control.WndProc(Message& m) 在
System.Windows.Forms.ButtonBase.WndProc(Message& m) 在
System.Windows.Forms.Button.WndProc(Message& m) 在
System.Windows.Forms.Control.ControlNativeWindow.O nMessage(Message& m) 在
System.Windows.Forms.Control.ControlNativeWindow.W ndProc(Message& m) 在
System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
If the file is renamed to only ASCII filename, it is OK to extract its meta information.
When the GUI generate the .bat, should it convert the filename to system locale (codepage)?

2. Title, Author, etc display in wrong graph. Obviously it is caused by encoding issue.
If the title, author are saved in metadata as UTF8 encoding, the mobi2mobi.exe can extract correctly. However the GUI doesn't convert it to the Windows system locale (code page 936). The display is wrong.
I think if you wants to set up the title etc in Chinese, the GUI also should convert it to utf8 before it save to meta.
That said, if you always use English, i.e. English filename, English title, it should work without issue. I don't know if there is any standard which specify the title's encodings

#465  waterqds 02-24-2015, 09:23 PM
According to, the encoding is
MOBI Header:
28 0x1c 4 text Encoding 1252 = CP1252 (WinLatin1); 65001 = UTF-8

#466  DiapDealer 02-25-2015, 01:04 PM
These tools (Mobi2mobi-GUI and MobiPerl in general) are becoming quite dated. There's been no active development on them in quite some time. If anyone is hoping for updates or bugfixes at this time, you might be disappointed. Links to the code (for both the gui-frontend and the underlying perl scripts) are posted in the various threads for anyone who feels energetic enough to try.

They were invaluable learning/modification tools for their time, but I'm afraid their heydays may have come and gone.

#467  eschwartz 02-25-2015, 03:17 PM
Stop being mean they deserve an update!

#468  DiapDealer 02-25-2015, 05:10 PM
Quote eschwartz
Stop being mean they deserve an update!
Mean? Nah ... more like mercy.
I cut my teeth on Mobiperl. Taught me most of what (little) I know about the guts of the mobi format.

#469  Jad 02-27-2015, 01:03 AM
I would just like to confirm for anyone still using the GUI that I have officially stopped any further development of the application. The source code is available so feel free to pull it apart and tweak to your hearts content. Have fun.

#470  waterqds 03-01-2015, 03:50 AM
I finally make it work.

1. Make Mobi2mobi GUI create its batch file in default system encoding, instead of UTF8.
In this way, the batch file can correct process local filenames, e.g. Chinese filename.

< Dim swBat As New StreamWriter(path, False, System.Text.Encoding.[Default])
> Dim swBat As StreamWriter = File.CreateText(path)

2. Adjust its GUI form to show the controls in my computer display better.

3. Now the hard part. Make mobiperl translate its command line parameters into UTF8 before update mobi file. You can not exec mobi2mobi.exe in command line or perl system() call to pass the UTF8 arguments. Program exec will go via local encoding.

I have changed the orginal into a Perl Module The module has one interface m2mrun::m2mrun(...) which take the same arguments as the old command line. Of course, it has no issue with the UTF8 encoding now.

The only thing left is, write a new which translate its command line parameters from system encoding (GBK in my case) into UTF8 and call m2mrun(...).

Now all works fine. In order to work better, you can also change the, update all known EXTH names and binary EXTH tags.

Thanks for Jad, DiapDealer. Really appreciated it.

 « First  « Prev Next »  Last »  (47/48)
Today's Posts | Search this Thread | Login | Register