View Single Post
Old 12-13-2019, 05:09 AM   #678
Silverbacknet
Junior Member
Silverbacknet began at the beginning.
 
Posts: 5
Karma: 10
Join Date: Dec 2019
Device: Kindle Fire HD 10
I can't find a repo or any way to make a pull request, so I'll just post here. This is a small fix for when Kindle Previewer is installed in a different folder.

Code:
--- calibre\plugins\KFX Output_old\kfxlib\generate_kpf.py
+++ calibre\plugins\KFX Output\kfxlib\generate_kpf.py
@@ -464,7 +464,13 @@
         }

     def __init__(self):
-        self.program_path = os.path.join(windows_user_dir(local_appdata=True), "Amazon", "Kindle Previewer 3")
+        from _winreg import *
+        default_path = os.path.join(windows_user_dir(local_appdata=True), "Amazon", "Kindle Previewer 3")
+        try:
+            reg_key = OpenKey(ConnectRegistry(None, HKEY_CURRENT_USER),r'Software\Amazon\Kindle Previewer 3')
+            self.program_path = QueryValueEx(reg_key,None)[0]
+        except (OSError, WindowsError) as e:
+            self.program_path = default_path
         KindlePreviewer.__init__(self)

     def prepare_java_app_args(self):
Silverbacknet is offline