View Full Version : BUG REPORTS : Auto Updater (with Vista)
Scawen
16th December 2007, 14:00
I hear there can be some problems using the Auto Updater on Vista, if you are not logged in as administrator or have not run as administrator.
The problem is that Vista thinks downloading and running an exe is suspicious behaviour - though of course that is fine in this case.
But these can sometimes be solved by giving it permission for next time, or something like that.
Anyway, any problems you have with the auto updater, please describe them here. And remember to say if you are using Windows Vista! :)
Also explain how you solved the problems, if you were able to. Thanks! :)
AndroidXP
16th December 2007, 14:05
Not really a problem, but my self created FBM.lfs got overwritten, though I guess that's a general problem with updating LFS. Not sure you can do anything about that. No problems otherwise :thumb:
DeKo
16th December 2007, 14:09
yeah, the autoupdater from x > x10 downloaded the patch fine but threw me up an error because i hadnt ran it as an admin. Just running the patch from the folder it downloaded to and giving it permission installed the patch no bother though. Its only really a problem with the UAC.
Mr.Kimi
16th December 2007, 14:16
the autoupdater from x > x10 downloaded the patch fine but threw me up an error because i hadnt ran it as an admin. Its only really a problem with the UAC.
Same here, i could download the patches throught the auto updater but they'd never install and just throw me some error messages.
Turn off the UAC and it downloads and installs fine.
haelje
16th December 2007, 14:19
i got no problems with autoupdater, but i use some kind of "workaround" the UAC without disabling it: i use TotalCommander in general and edit the properties of the start-link to be run as admin. with that every app you start from the TC run with admin rights. so i didn't get the errors when installing the patch. so no probs :thumb:
paul88
16th December 2007, 14:22
i have 3 systems here 2 with vista 1 with copied vista :x hehe
the 2 with full real vista update ok but the copied vista has the same fault so it could be a prob cos its a copied vista not a real full vista if ya no what i mean
DeKo
16th December 2007, 14:29
i have 3 systems here 2 with vista 1 with copied vista :x hehe
the 2 with full real vista update ok but the copied vista has the same fault so it could be a prob cos its a copied vista not a real full vista if ya no what i mean
You probably just have UAC disabled on the 2 real copies. It definetely isnt a pirated problem.
Also, im using vista x64, how does x86 handle the UAC stuff?
r_b_l
16th December 2007, 14:53
Every time I update to the new patch (X10->X30->X31->X32), the "Window while connecting" is reset to YES, even if I used NO before... Is that a bug or normal behavior?
And no, I don't use Vista, Linux and WINE here :tilt:
AndroidXP
16th December 2007, 14:54
It is normal behaviour, because many firewalls will detect that the LFS.exe has changed and thus start blocking it again. That can result in the firewall window appearing in the background while LFS is maximised and it would then look like LFS froze, while in reality it is just trying to connect but being blocked by the FW.
Bladerunner
16th December 2007, 15:36
Every time I try I get the message "Cannot open the restarter program"
Running Vista x86, UAC Disabled, and tried running as administrator, even though I have my system set up to give me (user) full admin rights.
EDIT...sorted...thanks to THIS post on another thread! http://www.lfsforum.net/showthread.php?p=631640#post631640
Scawen
16th December 2007, 15:38
Well, that is your fault for deleting the restarter program, lfs_restart.exe
I have no idea why people insist on deleting that file for no reason.
Anyway here it is, the exe inside this attached zip file should sit in your main LFS folder.
AndroidXP
16th December 2007, 16:05
Maybe it would be a good idea to hide the lfs_restart.exe somewhere in the data folder structure, like data\misc or something. :shrug:
Bladerunner
16th December 2007, 18:13
Well, that is your fault for deleting the restarter program, lfs_restart.exe
I have no idea why people insist on deleting that file for no reason.
Anyway here it is, the exe inside this attached zip file should sit in your main LFS folder.
Ah...but I didn't delete it! :p
(I just didnt copy it across when I made a back-up folder to install the test patch!:D)
Amynue
16th December 2007, 19:46
I have an idea for improvement.
When auto updater is downloading new patch, game should display a changelog.
Update prosses could be more interesting then :thumb:
Look at the attachment.
Bladerunner
16th December 2007, 20:10
I have an idea for improvement.
When auto updater is downloading new patch, game should display a changelog.
Update prosses could be more interesting then :thumb:
Look at the attachment.
To be any use, a changelog would have to be in lots of different languages...who is going to translate every time a patch is released??
I know that most people speak English anyway, but it still wouldn't be fair for EVERYBODY!
Amynue
16th December 2007, 20:16
To be any use, a changelog would have to be in lots of different languages...who is going to translate every time a patch is released??
I know that most people speak English anyway, but it still wouldn't be fair for EVERYBODY!Descriptions of trening missions are in English......better English than nothing.
Audrius
17th December 2007, 10:36
Yesterday i instaled my New VISTA, fully updated.
if i run LFS, it shows "Could not create English file", then i can't activate LFS, error :) BUT everytime i start VISTA i must run LFS using right key of mouse and pressing "Run as administrator" (i'm only one using of my computer) Then GONE "Could not create English file"
and i unlocked my LFS S2 :)
I think it is VISTA bug :) everytime i start i must run LFS as administrarot :) It's not a problem for me :)
i replyed this thread because i think that i'm not only one who have this little problem with VISTA :)
atledreier
17th December 2007, 10:48
I got an error too, in Vista Ultimate 32bit. Could not open "X30 to X32.exe".
Ran LFS as administrator, downloaded again and it worked fine.
Thorvertonian
17th December 2007, 10:49
This aren't really bugs, nothing wrong with LFS, simply UAC
GazMan86
17th December 2007, 12:06
I had a similar problem, though when it said it couldn't open it I quit LFS and went to the LFS directory and manually opened LFS_PATCH_X30_TO_X32 which patched it fine :thumb:. I guess it's just UAC proving annoying
*refers to the Apple Mac UAC ad* http://www.youtube.com/watch?v=Lzq4xJCx5fU
hda
17th December 2007, 13:02
auto updater worked flawlessly
running vista x64 sp1 rc (v668), uac disabled as always.
nutty boy
17th December 2007, 17:27
Worked fine for me!
Don't know what type of Vista etc. I'm using though, sorry!
hda
18th December 2007, 01:43
right click on "my computer" and pick properties.
a screen like this should show up (at least if your running vista). it's pretty self-explanatory, windows edition being well, your windows edition and system type will be either 32 or 64 bits.
Jamesisinthehouse12
18th December 2007, 04:08
I had this problem with the x31 patch aswell...
When I tried updateing thru the automatic updater in "List Of Hosts" it had an error saying it couldn't save the setup file, it tried again and it still couldn't save the setup file...
Solution:
I found that when I right-clicked the "Live For Speed" shortcut and clicked "Run as Administrator" it saved the setup file and installed fine. :thumb:
I have Windows Vista Ultimate 32bit and I am an Administrator.
I think the problem is that my LFS directory is in C:/Program Files which is a protected directory. The people not having the problem probley don't have it in C:/Program Files.
I added pictures (It may help)
:schwitz::thumb:
hda
18th December 2007, 09:17
irt Jamesisinthehouse12
oh yeah i forgot to mention that, the uac doesn't allow some folders to be written without asking the user if he REALLY wants to do so, even if it's an user with administrator privileges.
that's why uac is the way to go, even if i understand that scawen can't just assume everyone will know how to solve the problem in case of a patching failure due to the uac.
Audrius
18th December 2007, 10:30
Patch X32 to X33 Autoupdater installed without eny problems :thumb: ON Win Vista Ultimate
alxf1
19th December 2007, 07:36
I'm not on vista but
I have this in scripts/autoexec.lfs
/insim 29999
after LFS is updated, when it restarts the application it shows this:
InSim - TCP : bind failed
InSim : not initialised
and it's not possible to re-initialise it with /insim 29999 - same error
avih
19th December 2007, 07:51
Scawen, Vista huristics identifies files including the word "update" (and possibly others too) as installers so it requires administrative rights to run them. If the file you try to run is similar, then that might be the reason. Another option is to run it using ShellExecute instead of CreateProcess. it uses different and not as tight huristics, although that can change in the future I guess...
Scawen
20th December 2007, 14:29
Thanks, that's interesting.
At the moment I just use _spawnl when LFS starts the restarter, and _spawnl also for the restarter to unzip the self extracting patches.
I've just been trying to do some research here based on what you said (I'm running out of time but just thought I'd have a look). It's a bit confusing with all this "elevation" and things, and using "runas" as a verb to request elevation and so on.
Should LFS request elevation of the restarter program when it runs it? Or could that even make the UAC come up when it wouldn't have done so? Right now I think LFS can successfully start the restarter program, but it goes wrong when the restarter tried to execute the patches. Let me know if that's not the case, anyone!
So where should ShellExecute be used instead of _spawnl ? Is it when LFS starts the restarter, to give the restarter more priviledges? There seems to be one problem with that, it seems to me Vista might do a popup at that point, which could be bad if LFS is full screen.
Or should LFS stay unchanged, and instead, ShellExecute be used by the restarter program to execute the patches? It's fine if a dialog pops up at that point, because LFS has already exited.
Sorry if I sound a bit confused, it's because I'm... confused! :confused: :)
obobo
20th December 2007, 15:25
Vista huristics identifies files including the word "update" (and possibly others too) as installers so it requires administrative rights to run them.
You can add a manifest to the program resources to mark yourself as Vista-aware, to avoid being elevated as a suspected legacy installer. Though isn't it possible the updater still needs admin rights, to be sure it can update the EXE? Vista won't let normal users write to Program Files, if it happens to be there, except for more legacy handling where writes are written to a shadow file store.
I found it was better to add manifests to everything and solve any permission issues. There's too much compatibility magic happening with non-Vista aware programs, which can often mask real issues. Might be a bit late to consider for patch Y though!
Scawen
20th December 2007, 16:00
I'm not on vista but
I have this in scripts/autoexec.lfs
/insim 29999
after LFS is updated, when it restarts the application it shows this:
InSim - TCP : bind failed
InSim : not initialised
and it's not possible to re-initialise it with /insim 29999 - same errorOK I've fixed that. You will still get that error when you update X37 to X38. but it will be ok when you update X38 to X39.
Scawen
20th December 2007, 16:21
You can add a manifest to the program resources to mark yourself as Vista-aware, to avoid being elevated as a suspected legacy installer. Though isn't it possible the updater still needs admin rights, to be sure it can update the EXE? Vista won't let normal users write to Program Files, if it happens to be there, except for more legacy handling where writes are written to a shadow file store.
I found it was better to add manifests to everything and solve any permission issues. There's too much compatibility magic happening with non-Vista aware programs, which can often mask real issues. Might be a bit late to consider for patch Y though!Yes, I think I'll have to give up on this one for Patch Y. That sounds like a whole new subject to learn. I don't even know what elevation means or what a manifest is! :schwitz:
Thanks you for the information.
It seems that Vista users appear to be able to get around the issues by giving permission, even if it's not done in a very tidy way.
BulliT
20th December 2007, 16:22
There are some links there with more info about the manifest:
http://systemsengineering.wordpress.com/2006/10/13/adding-a-manifest-to-a-vista-application/
Vista shows a dialog when you start the app that contains the manifest (if you require higher privilege) and asks if you as the user wants to give the program the higher privilege.
Apoc112
20th December 2007, 17:38
all of my auto-update related problems were solved by running LFS.exe as an administrator every time.
(does not seem to work for me to simply be logged in as an admin and have UAC off)
Whiskey
20th December 2007, 17:41
I had Vista, I run my sesion as administrator (my brother has anothear sesion) and we had no problems with the updater or with the permissions. The firewall only block the conexion the first day, after a actualization it didn't ask for permision
obobo
20th December 2007, 18:46
It seems that Vista users appear to be able to get around the issues by giving permission, even if it's not done in a very tidy way.
Just a quick Vista overview... All Vista applications are launched with non-admin user rights by default, even if the user is a member of the Administrators group. Vista-aware programs can mark themselves as explicitly requiring or not requiring admin rights. For compatibility, any programs without the manifest resource that have "setup", "install", "patch" and other substrings in their filenames, along with a number of other conditions, will be assumed to require admin rights and will also be elevated. Elevation involves a confirmation prompt on a secure desktop, where the user must decide whether to allow it.
Normally LFS is run as non-admin and launches lfs_restart.exe with the same non-admin rights. Since that's causing problems, the patching process must require elevation to work properly (definitely true if it's installed to Program Files). Running LFS as administrator means the spawned updater also has the same elevated rights, so it all works.
The first part of the fix would be to add a manifest to lfs_restart.exe to ensure it's elevated when launched, even if LFS itself wasn't. However, launching the updater will need to use ShellExecuteEx (using the special "runas" verb) instead of _spawnl(), as the latter is internally implemented using CreateProcess(). Trying to create an elevated process from a non-elevated one causes CreateProcess to fail with ERROR_ELEVATION_REQUIRED.
However, there's one more gotcha! The option to restart LFS from the updater also means the game will be restarted as an elevated process! That may not be a problem, but it's probably best avoided. There's no standard or easy way to launch a non-elevated process from an elevated one, but it can be done (http://www.tweak-uac.com/programming/vista-tools/) by creating a scheduled task that executes immediately (yuck!).
I've been through a lot of it myself, so hopefully some of the above should be useful. The Vista Application Compatibility (http://msdn2.microsoft.com/en-us/library/bb757005.aspx) section on MSDN is worth a read...
Scawen
20th December 2007, 19:21
Thanks for that info, I've added a link to my Vista reading notes!
avih
22nd December 2007, 20:15
bahh.. vista sucks. what's wrong with XP? :) probably the best OS MS came up with...
Seriously though, if you can avoid vista identifying the exe as installer, it's probably best since everything can run as non admin without any issues. Just have a vista computer near by, play with the file names till you find something that works. The worst case is that the user will have to download a new exe not through the update system, not very nice, but will work.
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.