November 10, 2015
https://issues.dlang.org/show_bug.cgi?id=15284

--- Comment #9 from ZombineDev <petar.p.kirov@gmail.com> ---
Created attachment 1565
  --> https://issues.dlang.org/attachment.cgi?id=1565&action=edit
dmd-2.069.0-fix15284 also hangs after uninstall process explorer info

--
November 10, 2015
https://issues.dlang.org/show_bug.cgi?id=15284

ZombineDev <petar.p.kirov@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|major                       |regression

--
November 10, 2015
https://issues.dlang.org/show_bug.cgi?id=15284

--- Comment #10 from ZombineDev <petar.p.kirov@gmail.com> ---
The issue is more serious than I thought. I actually can't use dmd-2.069.0.exe
at all, even though I have removed the previous installation of DMD.
Now when I start the installer it just starts hanging after it starts (the
setup wizard window is not shown at all).

--
November 10, 2015
https://issues.dlang.org/show_bug.cgi?id=15284

--- Comment #11 from Martin Nowak <code@dawg.eu> ---
Overall I get the impression we should depart with an installer system where I have to host binary plugins myself [¹] (so they don't get lost) and spend over an hour to make the installer log something.

There has been some recent development with NSIS-3.0, but I wonder what .msi installer tools are out there.

[¹]: https://dlang.dawg.eu/downloads/others/nsisunz-dll-1_0.zip

On topic I updated
https://dlang.dawg.eu/downloads/dmd.2.069.0~fix15824/
to write an install.log into your C:\D folder. Seems like the installer always
appends to the log. Can you please run that and send me the log?

Maybe something in our updated VS/SDK detection is the cause for the hang.

--
November 10, 2015
https://issues.dlang.org/show_bug.cgi?id=15284

--- Comment #12 from ZombineDev <petar.p.kirov@gmail.com> ---
(In reply to Martin Nowak from comment #11)
> Overall I get the impression we should depart with an installer system where I have to host binary plugins myself [¹] (so they don't get lost) and spend over an hour to make the installer log something.
> There has been some recent development with NSIS-3.0, but I wonder what .msi installer tools are out there.
> 
> [¹]: https://dlang.dawg.eu/downloads/others/nsisunz-dll-1_0.zip

I would like to see an installer written in D, so one can change anything he
want in a single sane language. Obviously this is not trivial to do I don't
expect anyone to write an installer system from scratch, but after reading the
DMD installer script I got the feeling that if it wasn't for the GUI, it would
take fewer lines to achieve the same in D and the code would be more
comprehensible.
I feel sorry for the poor soul who had to write this: [1]

> 
> On topic I updated
> https://dlang.dawg.eu/downloads/dmd.2.069.0~fix15824/
> to write an install.log into your C:\D folder. Seems like the installer
> always appends to the log. Can you please run that and send me the log?
> 
> Maybe something in our updated VS/SDK detection is the cause for the hang.

After a few seconds I got a ~7MB file log file. You are right to think that the
issue is due to the updated VS/SDK detection. The contents of install.log are:
Call: 2674
Jump: 2691
Jump: 2708
Check previous dmd installation
Check dmd already installed
DetectVSAndSDK
Call: 2564
Read VisualStudio\*\Setup\VC
detect KitsRoot*
detect KitsRoot*
detect KitsRoot*
detect KitsRoot*
detect KitsRoot*
[... repeated infinately ...]

Previously I had a VS installed on this computer and later I uninstalled it,
and probably some of the SDKs were left there. Is it possible that this is
confusing the installer?
Anyway, looking at this change [1], it looks like there is an infinite loop.
95% of the time when I referesh the call stack it is in
kernelbase.dll:RegOpenKeyEx.

[1]: https://github.com/D-Programming-Language/installer/blob/master/windows/EnvVarUpdate.nsh

[2]: https://github.com/D-Programming-Language/installer/commit/818056aa2242d4ffb36807623d193f58e860a8e2#diff-b7d237f81c7c9c97afe3ee2097c8b267R395

--
November 10, 2015
https://issues.dlang.org/show_bug.cgi?id=15284

ZombineDev <petar.p.kirov@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |restlessmonkey@ya.ru

--- Comment #13 from ZombineDev <petar.p.kirov@gmail.com> ---
*** Issue 15314 has been marked as a duplicate of this issue. ***

--
November 10, 2015
https://issues.dlang.org/show_bug.cgi?id=15284

github-bugzilla@puremagic.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|REOPENED                    |RESOLVED
         Resolution|---                         |FIXED

--
November 10, 2015
https://issues.dlang.org/show_bug.cgi?id=15284

--- Comment #14 from github-bugzilla@puremagic.com ---
Commit pushed to stable at https://github.com/D-Programming-Language/installer

https://github.com/D-Programming-Language/installer/commit/92de353bec470a0b992819c05a93f9044adb9763 Merge pull request #161 from rainers/endless_sdkcheck

fix Issue 15284 - dmd installer hangs when updating installed windows version

--
November 11, 2015
https://issues.dlang.org/show_bug.cgi?id=15284

--- Comment #15 from Martin Nowak <code@dawg.eu> ---
This affects anyone that doesn't currently have a Windows SDK installed.

--
November 11, 2015
https://issues.dlang.org/show_bug.cgi?id=15284

--- Comment #16 from Martin Nowak <code@dawg.eu> ---
I updated the compiler download.
https://dlang.dawg.eu/downloads/dmd.2.069.0~fix15824/
If someone confirms the fix we'll build a new point release.

--