kevingigiano / neat-legacy

Working Neat version 5.7(5.7.1_474) with cloud and account functionality disabled.
GNU General Public License v3.0
14 stars 6 forks source link

Patch is not working all of a sudden #10

Closed austingsmith closed 11 months ago

austingsmith commented 1 year ago

Appears the patch quit working over the past week. This is logged to the application log:

Application: Neat.exe Framework Version: v4.0.30319 Description: The process was terminated due to an unhandled exception. Exception Info: System.NullReferenceException at NeatCompany.NeatWorks.BusinessLogic.Activation.ProductActivationInfo.get_ProductId() at NeatCompany.NeatWorks.BusinessLogic.Cloud.CloudRequestParametersFactory.CreateTeflonOfferRequestParameters(Boolean) at NeatCompany.NeatWorks.BusinessLogic.Http.WebUrlBuilder.BuildUrl(UrlType) at NeatCompany.NeatWorks.Views.NeatWebDialogView.TeflonOfferDialogViewModel..ctor(NeatCompany.NeatWorks.BusinessLogic.Http.IWebUrlBuilder, NeatCompany.NeatWorks.BusinessLogic.User.IUserProvider, NeatCompany.NeatWorks.BusinessLogic.Sync.Neat.IUserAccountProvider, NeatCompany.NeatWorks.Views.Startup.IRegistrationHtmlParser) at NeatCompany.NeatWorks.Views.NeatWebDialogView.WebDialogViewFactory.CreateTeflonOfferDialogView() at NeatCompany.NeatWorks.BusinessLogic.Sync.Neat.TeflonOffer.ShowOffer(Boolean) at NeatCompany.NeatWorks.BusinessLogic.Sync.Neat.SyncEventController.UpdateTrackingStatus(Boolean, NeatCompany.NeatWorks.Models.Sync.Account) at NeatCompany.NeatWorks.BusinessLogic.Sync.Neat.SyncEventController+<>cDisplayClass2.b0(System.Object) at System.Threading.QueueUserWorkItemCallback.WaitCallback_Context(System.Object) at System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean) at System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean) at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem() at System.Threading.ThreadPoolWorkQueue.Dispatch() at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback()

followed by:

Faulting application name: Neat.exe, version: 5.6.1.526, time stamp: 0x55a4c891 Faulting module name: unknown, version: 0.0.0.0, time stamp: 0x00000000 Exception code: 0xc0000005 Fault offset: 0x12c4d47d Faulting process id: 0x5184 Faulting application start time: 0x01d9d153552a6427 Faulting application path: C:\Program Files (x86)\Neat\exec\Neat.exe Faulting module path: unknown Report Id: 94aec608-437f-4af5-927d-e7304182fa4a Faulting package full name: Faulting package-relative application ID:

kevingigiano commented 1 year ago

Weird. I just launched the application and did not encounter this issue. If you look at the exception, you see Exception code: 0xc0000005, which generally means permission denied. Maybe the unpatched version somehow got put back?

I would suggest re-applying the patch to ensure something didn't get overwritten. Instructions can be found here: https://github.com/kevingigiano/neat-legacy

austingsmith commented 1 year ago

Thank you! I appreciate the response!

I did reapply the patch - same issue. Next performed a reinstall - verified the fresh install was working (and it requested activation which does not work anymore), reapplied the patch and am getting the same issue.

Out of curiosity - do you know where this application keeps activation state? I could not locate anything in the registry. I also copied every-friggin-thing from a working install on my other PC - no dice...

Thanks again!

kevingigiano commented 1 year ago

There is nothing in the registry that I am aware of. All of the activation is bypassed in the patch.

Out of curiosity, can you confirm sizes of the following 3 files after applying the patch, in the following directory C:\Program Files (x86)\Neat\exec: image

HenriKoster commented 11 months ago

This is exactly the same issue I am experiencing with Windows 11 (Same event log data as above). I can confirm that the 3 files are the same size as shown above. I have tried multiple uninstall/re-installs. I have also tried running compatibility mode (all options from XP onwards). I have tried turning off netframework (windows features) - all no difference in result (same error message after the Neat application starts, then crashes within 30 secs). I have tried copying the entire Neat directory from my working Windows 7 computer to the Windows 11 computer, still no success. I note that the Neat uninstall does not really uninstall all of the components, so I manually deleted all files and directories that I could find used by Neat (though I may have missed some due to different naming convention). Not sure what to try next - possibly uninstall the netframework (though not sure I really want any 'unintended consequences' of this option). I have used Neat receipts for years (have the original silver scanner that stills works fine) - I suppose I could just keep my old Windows 7 legacy computer and continue to use that, though would prefer to have it working with my new Windows 11 computer. Any advice/guidance you can give will be appreciated.

kevingigiano commented 11 months ago

@HenriKoster Did your install come from http://techmatetips.com/neat-desktop-software-v5-7-1-download/ ?

I can’t confirm the patch would work against some other installation.

HenriKoster commented 11 months ago

Yes, I confirm that is where I installed from. In order to install the 'NeatCompany.NeatWorks.logging.dll', I had to stop the 'NeatStartupService (32Bit)' task through task manager (that prevents replacement of the logging file while in use).

HenriKoster commented 11 months ago

Missed the words 'patch file' in the above.

kevingigiano commented 11 months ago

@HenriKoster when I said installation above, I meant the actual Neat software installation, not the patch. You need to install Neat software from http://techmatetips.com/neat-desktop-software-v5-7-1-download/. Once you have Neat software installed installed, then you can install the patch.

Can you confirm your Neat installation came from above link?

HenriKoster commented 11 months ago

Yes I confirm that I installed from the link above. After installing from the link above, I installed the patch.

kevingigiano commented 11 months ago

@HenriKoster Hmmm. This is weird. I would be interested in taking a look myself. Do you want to figure out a time for a screen share ?

HenriKoster commented 11 months ago

I think we could do that - need to work on the timing though as I'm currently in AU (Eastern time), and I'd imagine you'd be in the US (Pacific daylight time?).

kevingigiano commented 11 months ago

@HenriKoster I am MDT (Mountain Daylight Time), so 9pm for me and 1pm for you would be ideal. If this time works for you, let me know a day and I will set up a Zoom meeting. Send me an email (kevin.gigiano@gmail.com) and I will send you an invite.

austingsmith commented 11 months ago

Apologies, I had some unexpected, unpleasant travel. I just reinstalled windows 10 on my laptop, performed the neat software install and placed your patch in and it fired up! I had to fiddle with the restore some, but just scanned in a few documents successfully! I appreciate what you have done for us all that are dealing w/ this garbage of a company!

kevingigiano commented 11 months ago

@austingsmith thanks for the heads up. Glad it is working for you!

HenriKoster commented 11 months ago

Hi Kevin, Thanks so much for your time and help today. I eventually have it all working now - it required a manual deletion of files in various windows directories (I manually stepped through the software using dnspy to work out where things were), then re-installed the original software and replaced the 3 (patch) files. I had to create an entirely new database, and then restored a backup successfully from my Windows 7 computer. I've scanned a few items, and it all seems to work okay now on my Windows 11 machine. Thanks again for your help - much appreciated!

kevingigiano commented 11 months ago

That’s great news!

austingsmith commented 10 months ago

@kevingigiano - Somehow, the issue cropped back up this past week while I was traveling. :/ Same error as before. I downloaded a new patch .zip file and replaced the files after force stopping the neat startup service. The error persists. Wondering if there is a .net update triggering this error, maybe?

@HenriKoster - I am curious your issue and fix to see if our issues are related in any way.

HenriKoster commented 10 months ago

@austingsmith The same happened to me - it will work for a single time, then display the same fault. (Thanks again to Kevin for steering me in the right direction to fix this). I believe that this fix will work for you (as it did for me).

  1. Locate the Config.nrcfg file (in my system, it was located in C:\Users\User\AppData\Local\The Neat Company\Neat\Config).
  2. Open the file using Notepad.
  3. Locate the following part of the file: RemainingAppLaunchesToDeferTeflonPopup 1
  4. Change the value 1 to 9999999 (this is the maximum number permitted that will work with the Neat software).
  5. Save the updated Config.nrcfg file.

This will permit you to open Neat 9999999 times. Each time Neat closes, the number will decrement by 1. If you open and close Neat a sufficient number of times such that the number decrements to 0, you will receive the same error (and need to go through the process again). As 9999999 is quite a large number, it should take some years before you get to the point of having to do this again.

kevingigiano commented 10 months ago

Interesting. My deployment config file doesn't have this setting. I added the setting and played with different values and it made no difference. I wonder what would happen if you removed the key/value pair all together? `

RemainingAppLaunchesToDeferTeflonPopup
<Value>1000</Value>

`

HenriKoster commented 10 months ago

I tried this on my system - What happens is Neat opens okay (twice). The first time, when closing, it re-writes that key/value pair into the config file again with the value set to 1. The next time, when closing, it decrements that value to 0. The next time Neat is opened, it crashes again (with the same error as shown in the first post). Perhaps the NetFramework versions are different?

austingsmith commented 10 months ago

I appreciate both of your help!!!!

Setting RemainingAppLaunchesToDeferTeflonPopup to 9999999 did fix it for me!

Also, it does appear there is some type of .net update that pushes this along. I installed windows 10 on virtual box, did some testing, opened fine - was able to scan using usb passthru. Ran windows update and BAM!

Perhaps there was a bug in one of the previous frameworks that made neat not perform in an intended way????