I had the same stuck at 45% issue since yesterday but got it fixed somehow. Not sure if it’s because of the changes I made or they just simply fixed the bug today…
What I did:
- Win+R → %ProgramData% → Battle.net → Agent
(Basically go to C:\ProgramData\Battle.net\Agent) - Under Agent folder, open ‘product’ file with Notepad
- Replace ‘.cn’ with ‘.enUS’ (or you can try just ‘.en’)
In my case I selected ‘Simplified Chinese’ for installation so I suspect it was trying to connect to the Chinese server.
Hope it works.