Start Me Up Posted April 18 Posted April 18 (edited) user57 if the update pack contains just 1 update.exe and uses it to install all files at once with no reboots between but only one at the end then I might know where the speed problem comes from. It comes from the accumulation of postponed deletion operations for the old system files. The string in the registry becomes longer and longer with every file that is installed und you finally reboot the computer to reduce it back to 0 characters. Let's say a pending deletion operation costs 100 bytes in average. When the 1st file is installed 0 bytes are read. Then it is checked whether the pending deletion request exists in the 0 bytes string. If not, 100 bytes are added. When the 2nd file is installed 100 bytes are read. Then it is checked whether the pending deletion request exists in the 100 bytes string. If not, 100 bytes are added. When the 3rd file is installed, 200 bytes are read. Then it is checked whether the pending deletion request exists in the 200 bytes string. If not, 100 bytes are added. This is fast with a few files but not with hundreds of files. It is especially slow when the search algorithm does a forward search. The accumulated string will contain a lot of similar substrings, for example "C:\Windows\...". This leads to a lot of false positives until finally the search algorithm notices that "C:\Windows\system32\delme0001.tmp" is not the same as "C:\Windows\system32\delme0002.tmp". If my theory is correct, then editing the inf file and telling it to install 0 files will lead to a much faster installation. You would still have the 9000 registry values you talked about but the update would not have the speed problem. Have you been able to validate your assumption that the speed problem comes from Microsoft's way of reading inf files? Edited April 19 by Start Me Up
NotHereToPlayGames Posted April 18 Posted April 18 Also, is update.exe "called" just once? Or is it "called" multiple times?
user57 Posted April 19 Author Posted April 19 23 hours ago, Start Me Up said: So if you are installing 150 installers sequentially, 150*20/60 is FIFTY MINUTES of just waiting for those timeouts thats a very interesting point because actually it takes often longer then 50 minutes, i remember 4 hours with a older machine this effect i also noticed on a programm it normally take 12 min to install but after i isolated both registry and file entrys it did it in 8 seconds the method for that programm rather did not a inf style like engine - it just took the right values and go lets say it installs 650 MB with a drive from the 2000´s its 10 MB/s to 20 MB/ with 10 mb/s to 650 MB that makes 65 seconds install time that makes 1 min so certainly to expect the speed increase is very massiv im certain it will reach that speed because the cpu can make the functions from the installer i made with a far higher frequency then 10 MB/s the inf installer from microsoft makes sence if it just has to work, or it are just 1 upgrade or a few - but for a bigger combination hard to say 50 minutes are not very acceptable
Start Me Up Posted April 19 Posted April 19 (edited) user57 you told us a couple of times how blazing fast your installer is. This is good and well and it is welcome progress. However, as I pointed out: Your installer faces the design problem, that you would need to re-release every update you like to speed up. This is something that cannot be done in a reasonable way. Also, NotHereToPlayGames pointed out that a simplified version of update.exe is not what the world needs.You need to implement the prerequisites checks and maybe even more stuff we haven't looked into. There is an official documentation about the inf file format for Windows updates but it doesn't cover all and everything. I am not sure whether you read it. That is why it might make more sense to find the root problem in the operating system itself. Well, I hope that the problem is in the operating system because if this is true, then it can be fixed with an unofficial patch for a specific API function. Quote this effect i also noticed on a programm it normally take 12 min to install but after i isolated both registry and file entrys it did it in 8 seconds Are you able to narrow the problem further down so we know whether the problem comes from installing the files or whether it comes from installing the registry values? Edited April 25 by Start Me Up
NotHereToPlayGames Posted April 19 Posted April 19 I'm a bit confused on just what is being called an "installer". Are we talking about Windows Operating System KBxx hotfixes only? I kinda have to assume that we are. If we are talking about something like Office 2000, XP, 2003, 2007, or 2010 (all of which have their own KBxx list of hotfixes), then alternate methods of DEPLOYMENT (versus "installing") is really nothing new. Heck, I've been copy-pasting my Microsoft Office "folder structure" from one machine to another (ie, when the first machine is dying and I'm about to send it to Silicon Heaven) to the replacement machine, exporting some registry keys, importing to the replacement machine, and everything works perfectly fine and I've been doing that for 20 years. Works great for Excel, Word, and PowerPoint. Outlook is a different beast altogether, can be done, but not as easy. Migrating / "deploying" from one machine to another has never really technically required a "re-install". Just copy-paste and export-import. Done. And yeah, it's FASTER than "installing".
user57 Posted April 20 Author Posted April 20 i actually dont want to tell the programs i worked with but i can say that this program where made with install shield and a measured the install time with a simple clock, also that was like over 20 years ago like win2000 times a description "installer" useally defines just to copy the files to a locating and its registry entrys after that a programm is called installed - thats pretty much it the installer from me dont need multiple updates.exe´s in this case i just tryed the installer for function - for this i have taken the biggest of the KBXXXX upgrades that was the IE8 installer (the first one) so for now its just the IE8 without the other files and registrys entrys (but it can be combine in just one installer.exe - it also can be done to multiple installer.exe´s) install shield is a installer maker its is like a script - to simplify the always apearing installing question that being said install shield is not just a programm that do things in a fast speed - scripts in general are slower then code the next thing that comes up is not that a install maker, inf or trusted installer defines the real thing the real thing are registry entrys and file movements - thats what they are doing in the end and for that same reason the installer i wrote is like absolute in the functions itself (they are non others) the others are scripts that are being translated to file movements and registry entrys they might have different names and look differently - but they are not the real thing that inf is useally created from a script too, there are other ways to make a inf file but useally it comes from a script after that to that inf file it writes AddReg=(name of the piece part - something like "cd 1" or "files related for IE8") after that at that spot are the registry entrys https://learn.microsoft.com/en-us/windows-hardware/drivers/install/inf-addreg-directive thats what the inf installer do for files it use https://learn.microsoft.com/en-us/windows-hardware/drivers/install/inf-copyfiles-directive as you can see it dont progress even a api function with giving its parameters it has stored a string into that inf file - what later on it translate to the real thing the real thing are registry and file functions to name just one: https://learn.microsoft.com/en-us/windows/win32/api/winreg/nf-winreg-regsetvaluea this apears nowhere in the inf files - therefore the inf also can be called a script it translate that inf file text to the real thing (but its going through like a lot of things before it even is there) - and that sums up the other part it make it sound that microsoft - just has the better programm and mine is just like bull.rap that registry entry is for an app that dont reacts (not how fast it can open and close): "WaitToKillAppTimeout" he might start up the upgrades.exe´s - if it are 150 or something it has to load this entire thing 150 times - sounds a lot of time to me if so he also cannot install them all at once - the probaly need to do it in the right order (like zick-zack) one thing to mention is now the win10 and win11 gone every into direction of scripts and engines - that was often pointed out this is a old story of a such thing but the story is the same for the engine like "do me install win10" my lovely engine - that defines a engine not the real thing
user57 Posted May 9 Author Posted May 9 (edited) i now combined the IE8 installer + kb4467770 + kb4019276 + kb4493435 + kb2598845 surprising it are a lot less of entrys the main installer of IE has over 9000 entrys the other 2 (10 mb and 1,4 mb size) only have around 324 and 18 entrys i might actually missed something, because in these 3 kb-upgrades i could not find the tls 1.1 and tls 1.2 entrys at least they are not in the .inf file ... i think i found why the entrys are not there it has version 6.1 (win7) there the newest side upgrade for IE8 is kb4493435 and that one seems to have that error fix is to change to 5.1 (aka xp) "HKLM\0,SOFTWARE\\Microsoft\\Internet Explorer\\AdvancedOptions\\CRYPTO\\TLS1.1\0,OSVersion\0,%REG_SZ%\0,\"3.5.1.0.0\"", "HKLM\0,SOFTWARE\\Microsoft\\Internet Explorer\\AdvancedOptions\\CRYPTO\\TLS1.2\0,OSVersion\0,%REG_SZ%\0,\"3.5.1.0.0\"", IE8-Blank + kb4467770 + kb4019276 + kb4493435 + kb2598845 (ENGLISH) https://www.file-upload.net/download-15597216/IE8_combined_ENUS.zip.html IE8-Blank + kb4467770 + kb4019276 + kb4493435 + kb2598845 (GERMAN) https://www.file-upload.net/download-15597217/IE8_combined_german.zip.html how can i test tls1.1 and tls1.2 for function ? there are barly any websites running the IE8 anymore theoldnet.com and toastytech.com are running Edited May 12 by user57
user57 Posted May 23 Author Posted May 23 i have a little problem with it, i dont know so exactly where that problem comes from i have tryed some websites, but only a few are working like theoldnet.net or Toastytech.com then i compared the results for google.com or youtube.com with a common sp3 iso (that has the IE8) here it comes up with a certificate question, then it opens up the website partly functional https://ibb.co/tP2K2nk7 but when i do that with my installer always this happens: https://ibb.co/t10jkBD there is just no certificate warning, it just says always connections failed now the tricky part - to determinate if that can come from my installer - i tryed the orginal IE8 installer from microsoft itself and again just connection failed no certificate questions - so its not a problem of the installer itself then i tryed a certificate upgrade (to be precise this one:) https://www.file-upload.net/download-15599016/rootsupd.exe.html but that also did not do the trick - it just says nothing about certificate´s - just connection failed what im doing wrong ? or what is going wrong here
NotHereToPlayGames Posted May 23 Posted May 23 3 minutes ago, user57 said: what im doing wrong ? Your two YouTube screencaps are *NOT* both visiting the SAME website. One is visiting http youtube, the other is visitng httpS youtube. In this day and age, NOBODY should EVER be visiting ANY website *without* that S. Sure, somebody is going to come along with an EXCEPTION to that RULE, but generally speaking NEVER VISIT http, ALWAYS visit httpS.
user57 Posted May 23 Author Posted May 23 21 minutes ago, NotHereToPlayGames said: Your two YouTube screencaps are *NOT* both visiting the SAME website. One is visiting http youtube, the other is visitng httpS youtube. In this day and age, NOBODY should EVER be visiting ANY website *without* that S. Sure, somebody is going to come along with an EXCEPTION to that RULE, but generally speaking NEVER VISIT http, ALWAYS visit httpS. its the same result
NotHereToPlayGames Posted May 23 Posted May 23 Also, YouTube's "certificate" algorithm is ECC (Elliptic Curve Cryptography). Windows XP (and IE8) does ***NOT*** support ECC natively. ECC is Vista and higher. So unless you are doing something to address that LACK OF SUPPORT in XP, then YouTube is not going to work.
user57 Posted May 23 Author Posted May 23 youtube dont play on that "ISO IE8" either but it opens a website: https://ibb.co/93VK03sm - somewhat it is working - like on many other websites they are not fully functional dont get me wrong im not trying to make IE8 to a IE11 or Chrome v150 so that youtube works tls1.3 directly into IE8 (rather then a proxy - maybe a nice checkbox like it has for tls1.1 and tls1.2) would be a idea but since there is chrome version 150 for windows xp - that would raise questions to do so what i was trying to do it to test out the installer for function, so i looked up that windows update catalog for the biggest of all the upgrades available - and that was the IE8 (blank) installer with around 17 MB size then it seems to have fully functioned - so i tryed out the IE8 - to compare results i have tryed a .iso with IE8 (that one opens at least in parts) it dont seem to be a problem of the installer from me - because in this case the normal IE8 installer from microsoft would have worked so i was wondering what really is doing that difference
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now