clawsoftware / clawPDF

Open Source Virtual (Network) Printer for Windows that allows you to create PDFs, OCR text, and print images, with advanced features usually available only in enterprise solutions.
https://github.com/clawsoftware/clawPDF
GNU Affero General Public License v3.0
729 stars 156 forks source link

update from 0.9.1 to 0.9.3 - open with e-mail-client doesn't work anymore #107

Open hueldoeu opened 1 year ago

hueldoeu commented 1 year ago

0.9.1 had a bug, where the main window has to be opened already, then everything works like transferring the freshly created pdf-file to thunderbird (email-program). i had to write a batch file with "C:\Program Files (x86)\clawpdf\clawPDF.exe" as content and had to activate actions => [X] run script => [X] wait for the script being closed or done. then everything works fine. i told that one developer.

now i upgraded to 0.9.3 and nothing works. thunderbird is not showing up. i didnt delete 0.9.1 before. all the data from 0.9.1 was still alive which made me happy. but thunderbird is not showing up. i will deinstall 0.9.3 and start all over again.

hueldoeu commented 1 year ago

surprisingly, all the settings from 0.9.1 had been recovered after deinstalling 0.9.3 and reinstalling.

but even if i click on "test e-mail-client" see https://github.com/clawsoftware/clawPDF/issues/61#issuecomment-1515456808 thunderbird won't show up.

oooh. i shouldn't upgrade.

hueldoeu commented 1 year ago

installed 0.9.3 over 0.9.2. only 0.9.3 shows up. in the "programs and features" of windows 10 there is now 0.9.2 and 0.9.3 deinstalled both 0.9.2 and 0.9.3 and installed 0.9.2 only. still no e-mail deinstalled and 0.9.2 and installed 0.9.1. no email.

oh no.

installed 0.9.3 and restarted pc. no email.

:(

when i click on the start-button on task-bar and search for clawpdf, i can't open it. i can open it when i look for it under the letter C, where all programs are which begin with C like Cortana

hueldoeu commented 1 year ago

had to install clawpdf 0.9.3 again after clean deinstall.

interesting is that under windows-printer, there is only one clawpdf printer.

i have set up 2. one is for sending mails and saving and the other is for saving and opening (adobe reader is my standard pdf viewer).

i don't know if there had been only 1 printer all the time in the control panel.

ok just tested. if i set up a new printer (now 3) there is still only one printer, and the main printer will be visible. seems like clawpdf installs one printer but can use it for different profiles. just tested it, only the first printer which has been configured, is visible by name.

i see a profile which i have never seen before called "send pdf per mail (thunderbird)"

ok newstart

deinstall all printers (only one). clawpdf wants to install a new printer. can't do it. restarting windows.

installing a new printer worked, visible as "clawpdf". clawpdf is also clickable by searching in the startmenu.

installed 2 extra printer, deleted the "clawpdf"printer. everything at the beginning, except mail doesnt work.

as i said, surprisingly there is only one printer visible and it adapts usually the name of the second printer manually added.

hueldoeu commented 1 year ago

"[Error] clawSoft.clawPDF.Mail.MapiMailMessage._ShowMail: System.OverflowException: Die arithmetische Operation hat einen 脺berlauf verursacht. System.OverflowException: Die arithmetische Operation hat einen 脺berlauf verursacht. bei clawSoft.clawPDF.Mail.MapiMailMessage._DeallocFiles(MapiMessage message) bei clawSoft.clawPDF.Mail.MapiMailMessage._ShowMail(Object ignore)"

this is the error if i click on "test email-client". when i want to print the pdf and transfer it to thunderbird, nothing will be added to error.log and thunderbird won't show up.

hueldoeu commented 1 year ago

i used this dll https://github.com/clawsoftware/clawPDF/issues/20#issuecomment-1031520335

and clawpdf crashed immediately

2023-07-22 13:04:35.6705 [Error] clawSoft.clawPDF.Threading.ThreadManager.StartMainWindowThread: System.IO.FileLoadException: Die Datei oder Assembly "clawPDF.Mail, Version=0.9.3.0, Culture=neutral, PublicKeyToken=568eec0b104690a6" oder eine Abhängigkeit davon wurde nicht gefunden. Die gefundene Manifestdefinition der Assembly stimmt nicht mit dem Assemblyverweis überein. (Ausnahme von HRESULT: 0x80131040) System.IO.FileLoadException: Die Datei oder Assembly "clawPDF.Mail, Version=0.9.3.0, Culture=neutral, PublicKeyToken=568eec0b104690a6" oder eine Abhängigkeit davon wurde nicht gefunden. Die gefundene Manifestdefinition der Assembly stimmt nicht mit dem Assemblyverweis überein. (Ausnahme von HRESULT: 0x80131040) Dateiname: "clawPDF.Mail, Version=0.9.3.0, Culture=neutral, PublicKeyToken=568eec0b104690a6" bei clawSoft.clawPDF.Views.ActionControls.EmailClientActionControl.EmailClientTestButton_OnClick(Object sender, RoutedEventArgs e) bei System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised) bei System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args) bei System.Windows.Controls.Primitives.ButtonBase.OnClick() bei System.Windows.Controls.Button.OnClick() bei System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e) bei System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target) bei System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs) bei System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised) bei System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent) bei System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e) bei System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target) bei System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs) bei System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised) bei System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args) bei System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args) bei System.Windows.Input.InputManager.ProcessStagingArea() bei System.Windows.Input.InputManager.ProcessInput(InputEventArgs input) bei System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport) bei System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel) bei System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled) bei System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) bei MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) bei MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o) bei System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs) bei System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler) bei System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs) bei MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam) bei MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg) bei System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame) bei System.Windows.Window.ShowHelper(Object booleanBox) bei System.Windows.Window.ShowDialog() bei clawSoft.clawPDF.Views.MainWindow.ProfileSettingsButton_OnClick(Object sender, RoutedEventArgs e) bei System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised) bei System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args) bei System.Windows.Controls.Primitives.ButtonBase.OnClick() bei System.Windows.Controls.Button.OnClick() bei System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e) bei System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target) bei System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs) bei System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised) bei System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent) bei System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e) bei System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target) bei System.Windows.RoutedEventHandlerInfo.InvokeHandler(Object target, RoutedEventArgs routedEventArgs) bei System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised) bei System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args) bei System.Windows.UIElement.RaiseTrustedEvent(RoutedEventArgs args) bei System.Windows.Input.InputManager.ProcessStagingArea() bei System.Windows.Input.InputManager.ProcessInput(InputEventArgs input) bei System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport) bei System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel) bei System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, WindowMessage msg, IntPtr wParam, IntPtr lParam, Boolean& handled) bei System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) bei MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) bei MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o) bei System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs) bei System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler) bei System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs) bei MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam) bei MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg) bei System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame) bei System.Windows.Window.ShowHelper(Object booleanBox) bei System.Windows.Window.ShowDialog() bei clawSoft.clawPDF.Threading.ThreadManager.b__24_0()

WRN: Protokollierung der Assemblybindung ist AUS. Sie können die Protokollierung der Assemblybindungsfehler aktivieren, indem Sie den Registrierungswert [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) auf 1 festlegen. Hinweis: Die Protokollierung der Assemblybindungsfehler führt zu einer gewissen Leistungseinbuße. Sie können dieses Feature deaktivieren, indem Sie den Registrierungswert [HKLM\Software\Microsoft\Fusion!EnableLog] entfernen.

hueldoeu commented 1 year ago

okok lets go BACK AGAIN!

i hope everyone knows this shortcut? right mouseclick on file => send to => mail recipient?

i tried it now and it DOESNT WORK!

so the problem is in windows 10.

but i am sure it worked 14th july 2023. i used clawpdf 0.9.1 the last time there as a test, to send a document as pdf with mail to me. just a test.

last night i upgraded to 0.9.3 and now mail doesnt work.

hueldoeu commented 1 year ago

i have somehow killed MAPI 😐 maybe it was a windows update

hueldoeu commented 1 year ago

i also checked another pc, with a freshly new installed windows 10 and all updates. i have even installed windows mail and calender on it. there is just this error.

windows MAPI has serious problems. Herunterladen Screenshot 2023-07-22 154827

hueldoeu commented 1 year ago

on another pc (laptop) there is only outlook (i didnt want it and learned afterwards how to install only word, powerpoint, excel https://pastebin.com/zpjJeYsH ) and even if i choose edge, outlook opens up (i don't use outlook) after send to => mail recipient. Screenshot 2023-07-22 155216 Screenshot 2023-07-22 155252 Screenshot 2023-07-22 155351 Screenshot 2023-07-22 155407

i should try deinstalling outlook and maybe installing windows mail and calender or thunderbird and see what happens.

hueldoeu commented 1 year ago

the only knowledgebase which could be responsible is KB5028937

Screenshot 2023-07-22 155807 because until 14th july 2023 everything worked.

hueldoeu commented 1 year ago

didnt deinstall outlook but installed windows mail and calender, set it standard mail program and....

after sent to => mail recipient, only outlook opens.

horrible.

hueldoeu commented 1 year ago

as if by a ghostly hand, MAPI also called "sent to => mail recipient" repaired itself. clawpdf works again perfectly.

BUT! i still have to execute this script before:

Screenshot 2023-07-24 095708 Screenshot 2023-07-24 095753

the main window opens itself before the actual work begins, otherwise MAPI won't work correctly and the file will not (with some extra Tokens) will not be transmitted and will not be shown in thunderbird. only the main window opens up.

hueldoeu commented 1 year ago

when i close the main window, right after the script has opened it, thunderbird won't show up.

then, if i don't close it (as usual) one thunderbird main window shows up with TWO correctly filled "new mail"-windows. with preconfigured tokens, pdf-file as attachement, etc.

hueldoeu commented 1 year ago

this one is even better: image when i click "print", then after 3 seconds the clawPDF mainwindow appears. after 5 seconds thunderbird opens and after 6 seconds, clawpdf main window closes itself.

but there is something strange. i have opened it with doubleclick. in the main window, the batch file attached is still open-clawpdf.bat. i also tried it afterwards with open-clawpdf-then-exit.bat and it messed up my clawpdf-installation.

it's not easy to explain but opening open-clawpdf-then-exit.bat only once, and keep linking clawpdf to open-clawpdf.bat creates a solution, where clawpdf closes itself after 7 seconds.

i did recently a messed up solution, where i couldn't keep the main window of clawpdf open, it closed itself after 7 seconds. i increased it from 7 to 10 in the batch file and tried to change the linking to i dont remember, maybe open-clawpdf-then-exit.bat but even more strange was that the pdf-file was keep getting created over and over again.

https://stackoverflow.com/questions/36027461/opening-closing-application-via-bat-file-windows https://www.digitalcitizen.life/command-prompt-how-use-basic-commands/#:~:text=To%20change%20the%20drive%20and,folder%20from%20another%20disk%20volume.&text=C%3A%5CWindows-,%E2%80%A6%20and%20press%20Enter%20on%20your%20keyboard,like%20in%20the%20following%20screenshot.

so the open-clawpdf.bat and the open-clawpdf-then-exit.bat both are in the same folder. only the open-clawpdf.bat is linked in clawpdf.exe BUT the open-clawpdf-then-exit.bat is somehow the active batch script.

hueldoeu commented 1 year ago

"test e-mail-client" under profile settings => actions => open e-mail-client => test e-mail-client also works!

image seems like the pdf-file is a zero byte dummy. this is the newest thunderbird (v115 so far), i always install stable-updates.

i also checked another pc, with a freshly new installed windows 10 and all updates. i have even installed windows mail and calender on it. there is just this error.

windows MAPI has serious problems. Herunterladen Screenshot 2023-07-22 154827

i have tested another pc, without thunderbird, without windows mail and calender, without outlook and only edge and firefox are chooseable. i believed the MAPI send to => mail recipient bug had been solved on every pc now but it keeps getting stuck on this bug image

then i remembered, when i use edge for email, i click on a mailto:-adress and gmail (google mail) pops up in the same tab (in earlier versions this was impossible and i had to choose firefox). so if i want to send a document from desktop to someone as a mail attached, how does windows know that i need it attached to a new mail in gmail? i don't think that microsoft has combined MAPI and mailto:-adress together. that's why this error appears.

if there is ms outlook installed, it will be used for send to => mail recipient ALTOUGH edge or firefox are preconfigured in settings as standard mail application. if no ms outlook, then only this appears

image

hueldoeu commented 1 year ago

had problems with mailto and edge. had to deinstall everything under settings => site permissions => protocol handlers and start all over again with gmail.

however it didn't affect send to => mail recipient. still, ms outlook opens and those who don't have outlook, will get the error "no mail program" https://www.drwindows.de/xf/threads/edge-mailto-links-mit-outlook-com-%C3%B6ffnen.141526/post-2027879

hueldoeu commented 5 months ago

had problems with mailto and edge. had to deinstall everything under settings => site permissions => protocol handlers and start all over again with gmail.

however it didn't affect send to => mail recipient. still, ms outlook opens and those who don't have outlook, will get the error "no mail program" https://www.drwindows.de/xf/threads/edge-mailto-links-mit-outlook-com-%C3%B6ffnen.141526/post-2027879

i am stuck again at error "send to => mail recipient" thx ms https://answers.microsoft.com/en-us/windows/forum/all/send-to-mail-recipient-context-menu-not-working/7b85bf59-7485-4d87-9efa-b29477719108 answer: The Send To → Mail Recipient option needs a classic desktop email client with MAPI support, like Office Outlook or Mozilla Thunderbird. It will not work with Store apps like ... thunderbird from ms store or new outlook from ms store.