Welcome Guest.   Make a donation to an author on the site September 02, 2014, 09:02:54 AM  *

Please login or register.
Or did you miss your validation email?


Login with username and password (forgot your password?)
Why not become a lifetime supporting member of the site with a one-time donation of any amount? Your donation entitles you to a ton of additional benefits, including access to exclusive discounts and downloads, the ability to enter monthly free software drawings, and a single non-expiring license key for all of our programs.


You must sign up here before you can post and access some areas of the site. Registration is totally free and confidential.
 
Your Support Funds this Site: View the Supporter Yearbook.
   
   Forum Home   Thread Marks Chat! Downloads Search Login Register  
Pages: [1]   Go Down
  Reply  |  New Topic  |  Print  
Author Topic: DcUpdater reports incorrect version of installed app  (Read 5181 times)
sba
Member
**
Posts: 51

View Profile Give some DonationCredits to this forum member
« on: April 03, 2012, 10:04:30 AM »

Hi,

I have ScreenShotCaptor 3.03.01 installed (that's what its About box says) still DcUpdater reports I have 2.103.01 installed... and thus wants to upgrade.

What's up, doc?

Logged
mouser
First Author
Administrator
*****
Posts: 33,294



see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #1 on: April 03, 2012, 10:15:43 AM »

It has to be getting the 2.103 from somewhere...

The file it uses is called "ScreenshotCaptor.dcupdate" in your screenshot captor program files directory.  See if you can find that file and open it in a text editor and see what it says.

The other thing you can do is in dcupdater, choose menu View -> Show Advanced Controls.  Then drag the bottom of the window up if it's all the way down, select Screenshot Captor in the main window, and see what it says for "DcUpdate File:"

Example:

Logged
sba
Member
**
Posts: 51

View Profile Give some DonationCredits to this forum member
« Reply #2 on: April 03, 2012, 10:53:32 AM »

The problem is that there was another file at:

C:\Users\sba\AppData\Local\VirtualStore\Program Files (x86)\ScreenshotCaptor\ScreenshotCaptor.dcupdate

that contained 2.103.01

This file was probably created by either:
- installing ScreenShotCaptor without using "run as administrator"
- running ScreenShotCaptor as a non-admin user just after installation

In either case, the file virtualization mechanism (introduced in Vista) has kicked in and redirected the attempt to write to C:\Program Files (x86)\ScreenshotCaptor (which a non-admin user is not allowed to do).


After I have deleted C:\Users\sba\AppData\Local\VirtualStore\Program Files (x86)\ScreenshotCaptor and relaunched ScreenShotCaptor, DcUpdater reports the correct version, BUT the file C:\Users\sba\AppData\Local\VirtualStore\Program Files (x86)\ScreenshotCaptor\ScreenshotCaptor.dcupdate has been recreated.

Unfortunately I fear that at the next update ScreenShotCaptor might update C:\Users\sba\AppData\Local\VirtualStore\Program Files (x86)\ScreenshotCaptor\ScreenshotCaptor.dcupdate, leaving C:\Program Files (x86)\ScreenshotCaptor\ScreenshotCaptor.dcupdate unchanged, causing another version discrepancy.

Another explanation would be that running ScreenShotCaptor as an admin user will populate C:\Program Files (x86)\ScreenshotCaptor\ScreenshotCaptor.dcupdate, whereas running an update check from within ScreenShotCaptor running as non-admin user will cause DcUpdater to look at C:\Users\sba\AppData\Local\VirtualStore\Program Files (x86)\ScreenshotCaptor\ScreenshotCaptor.dcupdate.

Get the picture?

IMVHO running an app should not populate a per-user file containing version information. Instead, the app's installer should populate a system-wide file containing version information. But I'm just wearing my software developer hat on here ;-)

P.S. Without Process Monitor I would not have been able to troubleshoot this.
Logged
mouser
First Author
Administrator
*****
Posts: 33,294



see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #3 on: April 03, 2012, 11:05:54 AM »

Great detective work.

The part that confuses me is how that virtualstore copy of ScreenshotCaptor.dcupdate is being created in the first place..

That file should ALWAYS and ONLY be created during the installation process, which is always run as administrator (and thus has permission to write into the real Program Files (x86)\Screenshot Captor directory..  Running Screenshot Captor should not create this file in any scenario -- and I can't find any code where it does. 

Whether you run Screenshot Captor as admin or not should not result in the creation of a .dcupdate file.  Nothing should be able to create this file other than the installer.  Very odd.
Logged
sba
Member
**
Posts: 51

View Profile Give some DonationCredits to this forum member
« Reply #4 on: April 03, 2012, 11:14:38 AM »

The plot thickens.

Here's what I have just done (running as a non-admin user):

- shut down ScreenShotCaptor
- destroy both C:\Users\sba\AppData\Local\VirtualStore\Program Files (x86)\ScreenshotCaptor and
C:\Users\sba\AppData\Local\VirtualStore\Program Files (x86)\DcUpdater directories
- launch ScreenShotCaptor -- nothing happens in the virtualstore
- perform an update check using ScreenShotCaptor's context menu: this launches DcUpdater which recreates both directories with the following contents:


DcUpdater/:
Installables        dcupdater.dcupdate

DcUpdater/Installables:
ClipboardHelpAndSpell.dcupdate  ProcessTamer.dcupdate
FindAndRunRobot.dcupdate        ScreenshotCaptor.dcupdate
FlipbookPrinter.dcupdate        TheFormLetterMachine.dcupdate
LaunchBarCommander.dcupdate     URLSnooper.dcupdate
PointMotivator.dcupdate         UnicodeImageMaker.dcupdate

ScreenshotCaptor/:
ScreenshotCaptor.dcupdate

Could be that DcUpdater attempts to update part of this in the non-virtualized directory (or just opens files in read-write mode even if it just wants to read?), this fails, causing the virtualization to do its magic?
Logged
mouser
First Author
Administrator
*****
Posts: 33,294



see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #5 on: April 03, 2012, 11:21:54 AM »

Very interesting and some good theories.. let me go check DcUpdater code and see if it's being naughty as your evidence suggests..
Logged
mouser
First Author
Administrator
*****
Posts: 33,294



see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #6 on: April 03, 2012, 11:48:17 AM »

By the way have I mentioned that I believe Microsoft's hidden Virtual Store has to be one of the worst, stupidist decisions anyone has made in the 21st century?
Logged
mouser
First Author
Administrator
*****
Posts: 33,294



see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #7 on: April 03, 2012, 12:02:15 PM »

Ok i think I might have located the problem -- and it looks like you were basically right in your theory about dcupdater opening a file in readwrite mode when it shouldn't be!

I should have known where to look in my code because I have a function in my code called (apologies for the curse word):
FixupFuckedLibCurlXmlDownloadedFile()

And obviously I was in a bad mood when I wrote that sucker.. Basically the .dcupdate files could come from local directory or be temp downloaded files.  In the latter case it looks like libcurl is mucking with the files when it shouldn't and was requiring me to do a little kludge to patch them up.

My mistake was opening ALL such files as readwrite in that function, in the off chance that they would have to be modified.

I'm fixing it now so that the files are ONLY opened as readwrite (or indeed checked for bad libcurl issue) if they are downloaded temp files.

New version should be imminent.

Logged
mouser
First Author
Administrator
*****
Posts: 33,294



see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #8 on: April 03, 2012, 12:07:53 PM »

You know, we have had the occasional odd report of DcUpdater detecting the wrong version, with inconclusive hunts for the cause.
I believe you have likely caught the beast responsible, sba.  For that I say thanks.  thumbs up
Logged
sba
Member
**
Posts: 51

View Profile Give some DonationCredits to this forum member
« Reply #9 on: April 03, 2012, 01:26:55 PM »

U're welcome.

Indeed I'd experienced this kind of problem for quite some time, but hadn't bitten the bullet 'til today.

I'm assuming a public update to DcUpdater (that it will detect ;-) ) will be online soon.
Logged
mouser
First Author
Administrator
*****
Posts: 33,294



see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #10 on: April 03, 2012, 01:47:19 PM »

With sba's help the problem is fixed; I will be uploading a new version of DcUpdater tonight.
Logged
db90h
Coding Snacks Author
Charter Member
***
Posts: 455


Software Engineer

View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #11 on: April 03, 2012, 02:28:47 PM »

That's a nice updater. I never noticed it before, somehow
Logged
sba
Member
**
Posts: 51

View Profile Give some DonationCredits to this forum member
« Reply #12 on: April 04, 2012, 02:43:05 AM »

Note that in order to get your system back to normal letting DcUpdater update itself to 1.30.01 is not enough. You must delete the following two directories:

C:\Users\<user>\AppData\Local\VirtualStore\Program Files (x86)\ScreenshotCaptor
C:\Users\<user>\AppData\Local\VirtualStore\Program Files (x86)\DcUpdater

(removing ' (x86)' if you're not running 64-bit Windows).

Otherwise, DcUpdater will keep believing 1.28.01 is installed and will reinstall 1.30.01 forever.


HTH
Logged
mouser
First Author
Administrator
*****
Posts: 33,294



see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #13 on: April 04, 2012, 02:47:21 AM »

Ah i should have built into the new version a manifest to tell it not to be able to use virtual store..
perhaps it's not too late.
Logged
mouser
First Author
Administrator
*****
Posts: 33,294



see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #14 on: April 04, 2012, 02:56:59 AM »

Can some of you windows 7 users manually download the brand new updater that i just uploaded with a manifest file:
http://www.donationcoder....nloads/DcUpdaterSetup.exe

And tell me if it works on on windows 7?  This should bypass any virtual store, I hope.

I just want to make sure I didn't break anything with the new manifest.
Logged
sba
Member
**
Posts: 51

View Profile Give some DonationCredits to this forum member
« Reply #15 on: April 04, 2012, 03:06:30 AM »

I've intentionally restored the virtualstore stuff (incl. the DcUpdater file for DcUpdater claiming it's 1.28.1), installed your new build, and it does ignore the virtualstore information.
Logged
mouser
First Author
Administrator
*****
Posts: 33,294



see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #16 on: April 04, 2012, 03:12:23 AM »

Thank you so much for the report and all the help sba, I think we might be able to close the book on this one, and i can get some sleep after a frustrating day.
Logged
sba
Member
**
Posts: 51

View Profile Give some DonationCredits to this forum member
« Reply #17 on: April 04, 2012, 03:20:47 AM »

You're welcome.

And sorry if you get the feeling I got you frustrated. Bugs are a fact of life, we're just humans  tongue


Have a good sleep!
Logged
mouser
First Author
Administrator
*****
Posts: 33,294



see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #18 on: April 04, 2012, 07:43:02 AM »

Quote
And sorry if you get the feeling I got you frustrated.


Not at all.. And I've said it before and I'll say it again: I am amazed at the patience people have in the face of some bugs and frustrations.  If I had half the patience of you guys I would be a better person.  It takes very little to have me screaming and cursing at my monitor..
Logged
sba
Member
**
Posts: 51

View Profile Give some DonationCredits to this forum member
« Reply #19 on: April 04, 2012, 07:48:19 AM »

I sometimes do yell at my monitor, too  tongue
Logged
sba
Member
**
Posts: 51

View Profile Give some DonationCredits to this forum member
« Reply #20 on: February 19, 2013, 07:18:00 AM »

I hate to say, but the problem's still there / back.

DcUpdater reports I have both ScreenshotCaptor 3.07.01 and 3.08.01 installed.

The one running is 3.07.01.

3.07.01 is reported as:

ScreenshotCaptor:
WebPage: http://www.donationcoder....reenshotcaptor/index.html
DcUpdate File: C:\Program Files (x86)\ScreenshotCaptor\ScreenshotCaptor.dcupdate
Remote Version File: http://www.donationcoder....aptor/pad/versioninfo.xml
Remote Update File: http://www.donationcoder....ScreenshotCaptorSetup.exe


3.08.01 is reported as:

ScreenshotCaptor:
WebPage: http://www.donationcoder....reenshotcaptor/index.html
DcUpdate File: C:\Program Files (x86)\ScreenshotCaptor\ScreenshotCaptor\ScreenshotCaptor.dcupdate
Remote Version File: http://www.donationcoder....aptor/pad/versioninfo.xml
Remote Update File: http://www.donationcoder....ScreenshotCaptorSetup.exe

How do I get things back straight?

Isn't a bug still lurking somewhere?
Logged
mouser
First Author
Administrator
*****
Posts: 33,294



see users location on a map View Profile WWW Read user's biography. Give some DonationCredits to this forum member
« Reply #21 on: February 19, 2013, 09:31:36 AM »

you have 2 copies of screenshot captor installed.
you can see the second one is:
C:\Program Files (x86)\ScreenshotCaptor\ScreenshotCaptor\

that shouldnt be there, it should be in C:\Program Files (x86)\ScreenshotCaptor\
Logged
sba
Member
**
Posts: 51

View Profile Give some DonationCredits to this forum member
« Reply #22 on: February 19, 2013, 09:52:28 AM »

I swear I didn't intentionally install it to the incorrect directory.

Only 3.08.01 shows up in "Add or remove programs."

Did you at some point change the installation defaults?


I've uninstalled 3.08.01 using Control Panel and then renamed the
C:\Program Files (x86)\ScreenshotCaptor 
directory to
C:\Program Files (x86)\_ScreenshotCaptor


After that I reinstalled 3.08.01.

Situation's now back to normal.

Until....  Wink
Logged
J-Mac
Supporting Member
**
Posts: 2,857


see users location on a map View Profile Read user's biography. Give some DonationCredits to this forum member
« Reply #23 on: July 09, 2013, 10:11:55 PM »

Hope it's not a problem to add on to this thread but I am seeing similar issues with dcupdater.

First, I was getting NO update notifications at all so I manually opened the window tonight and lo and behold I see a line there I hadn't seen before: "Only show updates for Screenshot Captor" with a checkbox next to it - checked. Where did that come from? I have more DC programs installed that used to be updated with dcupdater but now it excludes them, apparently intentionally.

So I deselected that box and checked manually (with the big Check Now button) and received updates for three DC programs, including SSC. However after the updates completed that same checkbox was selected again. Why is that? It prevents dcupdater from checking for the other program's updates!

Also, a few other little oddities:

  • Easy Screencast Recorder shows I have version 1.09.01 installed but that a newer version is available on the web... 1.07.01 !
  • Also, it shows that I updated Screenshot Captor from V.4.03 to 4.05, rather than the correct version numbers 4.3 to 4.5.

(Screen cap attached)
[/list]

Thanks for any help - when you get a chance. No hurry on these little boo-boos!

Jim

Logged

"I am getting so tired of slitting the throats of people who say that I am a violent psychopath."
Pages: [1]   Go Up
  Reply  |  New Topic  |  Print  
 
Jump to:  
   Forum Home   Thread Marks Chat! Downloads Search Login Register  

DonationCoder.com | About Us
DonationCoder.com Forum | Powered by SMF
[ Page time: 0.051s | Server load: 0.1 ]