Created
March 18, 2025 19:20
-
-
Save jacobdjwilson/57f34283b6a4f98dfcbbd8478c36f60c to your computer and use it in GitHub Desktop.
This VBScript automatically detects your installed version of QuickBooks Desktop, locates the QBW.INI file, and modifies it to disable annoying popups (upgrade prompts, marketing messages, upsell notifications, and more).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Set objShell = CreateObject("WScript.Shell") | |
qbVersions = Array("2024", "2023", "2022", "2021", "2020") | |
iniPath = "" | |
' Loop through possible QuickBooks versions | |
For Each version In qbVersions | |
path = "C:\ProgramData\Intuit\QuickBooks " & version & "\QBW.INI" | |
Set objFSO = CreateObject("Scripting.FileSystemObject") | |
If objFSO.FileExists(path) Then | |
iniPath = path | |
Exit For | |
End If | |
Next | |
' If no file found, show error and exit | |
If iniPath = "" Then | |
objShell.Popup "No QuickBooks INI file found. Ensure QuickBooks is installed.", 10, "QuickBooks Pop-Up Fix", 16 | |
WScript.Quit | |
End If | |
' Read INI file content | |
Set objFile = objFSO.OpenTextFile(iniPath, 1) | |
iniContent = objFile.ReadAll | |
objFile.Close | |
' Define settings with comments | |
newSettings = "[MISC]" & vbCrLf & _ | |
"INTUIT_ACCOUNT_DISABLED=1 ; Disables Intuit account login prompts" & vbCrLf & _ | |
"DISABLESHOWFEATUREPOPUPS=1 ; Stops feature-related popups" & vbCrLf & _ | |
"DISABLEPRODUCTUPGRADE=1 ; Prevents upgrade notifications" & vbCrLf & _ | |
"DISABLEONLINEUPSELL=1 ; Stops upsell popups for online features" & vbCrLf & _ | |
"DISABLEPAYROLLUPSELL=1 ; Stops payroll upsell prompts" & vbCrLf & _ | |
"DISABLEMARKETINGMESSAGES=1 ; Blocks marketing popups" & vbCrLf & _ | |
"DISABLESPONSOREDMESSAGES=1 ; Stops sponsored content popups" & vbCrLf & _ | |
"DISABLEUPGRADE=1 ; Prevents forced upgrade messages" & vbCrLf & _ | |
"DISABLECLOUDMESSAGES=1 ; Blocks cloud-related nags" & vbCrLf & _ | |
"DISABLEMAILINGLISTPOPUP=1 ; Prevents mailing list signup popups" & vbCrLf & _ | |
"DISABLESURVEYS=1 ; Stops QuickBooks survey popups" & vbCrLf & _ | |
"DISABLEREMINDERS=1 ; Disables general reminders popups" & vbCrLf & _ | |
"DISABLETIPS=1 ; Prevents QuickBooks tips popups" & vbCrLf & _ | |
"DISABLEWELCOME=1 ; Stops the welcome screen" & vbCrLf & _ | |
"DISABLERATINGREQUEST=1 ; Prevents rating/review requests" | |
' Find the [MISC] section and insert settings at the top of it | |
If InStr(iniContent, "[MISC]") > 0 Then | |
iniContent = Replace(iniContent, "[MISC]", newSettings, 1, 1, 1) | |
Else | |
iniContent = iniContent & vbCrLf & newSettings ' Append if [MISC] not found | |
End If | |
' Write back the updated content | |
Set objFile = objFSO.OpenTextFile(iniPath, 2) ' Open for writing | |
objFile.Write iniContent | |
objFile.Close | |
' Show success message | |
objShell.Popup "QuickBooks popups have been disabled!", 5, "QuickBooks Pop-Up Fix", 64 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Nice! I'm going to test this on Quickbooks Pro 2021- although I don't know that this and newer versions have the same startup options.