Jump to content

Recommended Posts

Posted (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.

  1. 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.
  2. 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.
  3. 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 by Start Me Up

Posted
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

Posted (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 by Start Me Up
Posted

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".

Posted

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

Posted (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 by user57
Posted

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

Posted
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.

Posted
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

Posted

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.

image.png.7f6fa936ba74a3ea9e0d7904f9df8922.png

Posted

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

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...