Battle.net app connecting issue

When my laptop wakes from sleep (Windows 11), the battle.net app continuously states ‘Connecting’ and does not log back on to Battle. Meanwhile click to play a game (i.e. Diablo 4), the game loads and then states there was a problem. Clicking Accept then unloads the game.

Two issues that need sorting:

  1. The battle.net app needs to ‘know’ when it can’t connect for some reason and it needs to start from scratch to attempt the login again. The reason I state that the issue is with the app not the computer and it’s network/firewall etc, is that when you close the app and restart it, the app immediately logs in okay
  2. The seconde point is that games should not be able to load when the app is in a connecting state. It’s annoying that you can load a game and then it fails to play because battle.net was not logged in at the time of clicking Play.

This is not a firewall problem. This is not a DNS issue. This is simply an issue with the app not realising the current status of its own connection and instead of restarting it’s logon procedure continuously states Connecting.

Thank you for reading

What exactly is battlenet doing to my computer? Its error log contains the following:
[W 2025-03-04 20:25:25.0397] Failed to read db info from ‘C:/ProgramData/Battle.net/Agent/product.db.new’
[W 2025-03-04 20:25:25.0397] Failed to read db info from ‘C:/ProgramData/Battle.net/Agent/product.db’
[W 2025-03-04 20:25:25.0397] Failed to read db info from ‘C:/ProgramData/Battle.net/Agent/product.db.old’
[W 2025-03-04 20:25:28.0410] Failed to read db info from ‘C:/Program Files (x86)/Common Files/.product.db.new’
[W 2025-03-04 20:25:28.0411] Failed to read db info from ‘C:/Program Files (x86)/Common Files/.product.db’
[W 2025-03-04 20:25:28.0411] Failed to read db info from ‘C:/Program Files (x86)/Common Files/.product.db.old’
[W 2025-03-04 20:25:28.0411] Failed to read db info from ‘C:/Program Files (x86)/Internet Explorer/.product.db.new’
[W 2025-03-04 20:25:28.0411] Failed to read db info from ‘C:/Program Files (x86)/Internet Explorer/.product.db’
[W 2025-03-04 20:25:28.0411] Failed to read db info from ‘C:/Program Files (x86)/Internet Explorer/.product.db.old’
[W 2025-03-04 20:25:28.0412] Failed to read db info from ‘C:/Program Files (x86)/Microsoft/.product.db.new’
[W 2025-03-04 20:25:28.0412] Failed to read db info from ‘C:/Program Files (x86)/Microsoft/.product.db’
[W 2025-03-04 20:25:28.0412] Failed to read db info from ‘C:/Program Files (x86)/Microsoft/.product.db.old’
[W 2025-03-04 20:25:28.0412] Failed to read db info from ‘C:/Program Files (x86)/Microsoft.NET/.product.db.new’
[W 2025-03-04 20:25:28.0412] Failed to read db info from ‘C:/Program Files (x86)/Microsoft.NET/.product.db’
[W 2025-03-04 20:25:28.0412] Failed to read db info from ‘C:/Program Files (x86)/Microsoft.NET/.product.db.old’
[W 2025-03-04 20:25:28.0413] Failed to read db info from ‘C:/Program Files (x86)/Mozilla Maintenance Service/.product.db.new’
[W 2025-03-04 20:25:28.0413] Failed to read db info from ‘C:/Program Files (x86)/Mozilla Maintenance Service/.product.db’
[W 2025-03-04 20:25:28.0413] Failed to read db info from ‘C:/Program Files (x86)/Mozilla Maintenance Service/.product.db.old’

Hi,

I made a fix to regenerate Battle Net

@echo off
if not "%1"=="am_admin" (powershell start -verb runas '%0' am_admin & exit /b)

echo Killing processes before starting...
echo.
taskkill /f /im Agent.exe /t
taskkill /f /im Battle.net* /t

echo.
echo Cleaning Windows temporary files...
echo.

timeout /t 3 >nul

:: cleaning Windows temporary files

if exist "%TEMP%" (
    del /f /s /q "%TEMP%" 2>nul
    for /f "tokens=*" %%D in ('dir /b /s /a:d "%TEMP%" 2^>nul') do rmdir /s /q "%%D" 2>nul
)

if exist "%ALLUSERSPROFILE%\TEMP" (
    del /f /s /q "%ALLUSERSPROFILE%\TEMP" 2>nul
    for /f "tokens=*" %%D in ('dir /b /s /a:d "%ALLUSERSPROFILE%\TEMP" 2^>nul') do rmdir /s /q "%%D" 2>nul
)

if exist "%SystemRoot%\TEMP" (
    del /f /s /q "%SystemRoot%\TEMP" 2>nul
    for /f "tokens=*" %%D in ('dir /b /s /a:d "%SystemRoot%\TEMP" 2^>nul') do rmdir /s /q "%%D" 2>nul
)

:: rem cleaning Battle.Net cache
echo.
echo Cleaning Battle Net...
echo.
timeout /t 2 >nul

del /f /q %USERPROFILE%\AppData\Local\Battle.net\*.*
rd /s /q "%USERPROFILE%\AppData\Local\Battle.net\Cache"
rd /s /q "%USERPROFILE%\AppData\Local\Battle.net\BrowserCache"
rd /s /q "%USERPROFILE%\AppData\Local\Battle.net\WidevineCdm"
rd /s /q "%USERPROFILE%\AppData\Local\Blizzard Entertainment"
rd /s /q "%ProgramData%\Blizzard Entertainment"
rd /s /q "%APPDATA%\Blizzard Entertainment"

cls

:: Asking if we repair the Agent

:ask_repair
color 0f

echo I can also repair the Battle.Net Agent, but this will force it to redownload and reinstall entirely itself.
echo You will most likely have to reconfigure the location of your games, but you will not have to redownload them.
echo.
set /p "FixAgent=Do you want to repair the Battle.net agent? (Y/N) : "

if /i "%FixAgent%"=="Y" (
    rd /s /q "%ProgramData%\Battle.net\Agent"
    echo.
    color 2
    echo Battle.net agent has been repaired.
    echo.
    goto end
) else if /i "%FixAgent%"=="N" (
    echo.
    color 7
    echo Battle.net agent has not been repaired.
    echo.
    goto end
) else (
    echo.
    echo.
    color 0c
    echo Please enter "Y" or "N".
    timeout /t 3 >nul
    color 7
    cls
    goto ask_repair
)

:end
net stop winmgmt
winmgmt /resetrepository
net start winmgmt
netsh winsock reset

echo.
echo.
echo. Restart your Computer if you still have issues.
pause

Save that to Fixbnet.bat
And run it in admin mode.

In your case, you should accept the Agent repair of my script.