Solved

How do I modify the dropbox installer to automatically install for all users accounts in Windows

Posted on 2014-12-09
2
1,100 Views
Last Modified: 2016-11-23
I am wanting to be able to install dropbox onto computers and have it automatically install for all users. We have a few computers that have Dropbox installed and multiple users can log into those systems to use the dropbox. Dropbox is not limited to those computers. The users are not admins or power users and cannot install anything. Originally, I had a batch script that would install dropbox and move the programs files to program files which was easy enough but then we moved to the Dell K1000 to install software and if the add remove programs information is not in place correctly, it will keep trying to install dropbox. Several months ago I had found an Inno script that made my life easier in that I could use 7zip to extract the installer and recompile the installer to automatically install to program files and create a good add remove programs entry and the only thing I had to change is the program version. Now my problem, it appears DropBox may have changed a few things and the Inno script no longer works correctly. It acts like it installs, but the program does not work and no files are copied, but it does appear in add remove programs. Can someone help me change this so that it works again and works like a normal installer?
#define MyAppName "Dropbox"
#define MyAppVerName "Dropbox"
#define MyAppVersion "2.10.28"
#define MyAppPublisher "DropBox, Inc."
#define MyAppURL "http://www.getdropbox.com"
#define MyAppExeName "Dropbox.exe"


[Setup]
AppName={#MyAppName}
AppVerName={#MyAppVerName}
AppPublisher={#MyAppPublisher}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={pf32}\{#MyAppName}
DefaultGroupName={#MyAppName}
OutputDir=.\Output
OutputBaseFilename={#MyAppName} Installer
Compression=lzma
SolidCompression=true
DirExistsWarning=no
ShowLanguageDialog=auto
ArchitecturesInstallIn64BitMode=x64
SetupIconFile={app}\dropbox.ico
AppVersion={#MyAppVersion}

[InstallDelete]
Name: {app}\*.*; Type: files; Languages: 

[Dirs]

[Files]
Source: {app}\*.*; DestDir: {app}; Flags: ignoreversion recursesubdirs; Excludes: DropboxExt64.*.dll
Source: {app}\DropboxExt64.24.dll; DestDir: {app}; Check: IsWin64

[Registry]

Root: HKLM; Subkey: SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List; ValueType: string; ValueName: {app}\{#MyAppExeName}; ValueData: {app}\{#MyAppExeName}:*:Enabled:Dropbox; Flags: uninsdeletevalue

Root: HKLM32; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\DropboxExt1; ValueType: string; ValueData: {{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}; Flags: uninsdeletekey
Root: HKLM32; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\DropboxExt2; ValueType: string; ValueData: {{FB314EDA-A251-47B7-93E1-CDD82E34AF8B}; Flags: uninsdeletekey
Root: HKLM32; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\DropboxExt3; ValueType: string; ValueData: {{FB314EDB-A251-47B7-93E1-CDD82E34AF8B}; Flags: uninsdeletekey

Root: HKLM; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\DropboxExt1; ValueType: string; ValueData: {{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}; Flags: uninsdeletekey; Check: IsWin64
Root: HKLM; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\DropboxExt2; ValueType: string; ValueData: {{FB314EDA-A251-47B7-93E1-CDD82E34AF8B}; Flags: uninsdeletekey; Check: IsWin64
Root: HKLM; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\DropboxExt3; ValueType: string; ValueData: {{FB314EDB-A251-47B7-93E1-CDD82E34AF8B}; Flags: uninsdeletekey; Check: IsWin64

Root: HKCR; Subkey: *\shellex\ContextMenuHandlers\DropboxExt; ValueType: string; ValueData: {{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}; Flags: uninsdeletekey
Root: HKCR; Subkey: Directory\Background\shellex\ContextMenuHandlers\DropboxExt; ValueType: string; ValueData: {{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}; Flags: uninsdeletekey
Root: HKCR; Subkey: Directory\shellex\ContextMenuHandlers\DropboxExt; ValueType: string; ValueData: {{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}; Flags: uninsdeletekey

Root: HKCR32; Subkey: CLSID\{{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}; ValueType: string; ValueData: DropboxExt; Flags: uninsdeletekey
Root: HKCR32; Subkey: CLSID\{{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueData: {app}\DropboxExt.24.dll
Root: HKCR32; Subkey: CLSID\{{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueName: ThreadingModel; ValueData: Apartment

Root: HKCR32; Subkey: CLSID\{{FB314EDA-A251-47B7-93E1-CDD82E34AF8B}; ValueType: string; ValueData: DropboxExt; Flags: uninsdeletekey
Root: HKCR32; Subkey: CLSID\{{FB314EDA-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueData: {app}\DropboxExt.24.dll
Root: HKCR32; Subkey: CLSID\{{FB314EDA-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueName: ThreadingModel; ValueData: Apartment

Root: HKCR32; Subkey: CLSID\{{FB314EDB-A251-47B7-93E1-CDD82E34AF8B}; ValueType: string; ValueData: DropboxExt; Flags: uninsdeletekey
Root: HKCR32; Subkey: CLSID\{{FB314EDB-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueData: {app}\DropboxExt.24.dll
Root: HKCR32; Subkey: CLSID\{{FB314EDB-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueName: ThreadingModel; ValueData: Apartment

Root: HKCR; Subkey: CLSID\{{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}; ValueType: string; ValueData: DropboxExt; Flags: uninsdeletekey; Check: IsWin64
Root: HKCR; Subkey: CLSID\{{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueData: {app}\DropboxExt64.24.dll; Check: IsWin64
Root: HKCR; Subkey: CLSID\{{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueName: ThreadingModel; ValueData: Apartment; Check: IsWin64

Root: HKCR; Subkey: CLSID\{{FB314EDA-A251-47B7-93E1-CDD82E34AF8B}; ValueType: string; ValueData: DropboxExt; Flags: uninsdeletekey; Check: IsWin64
Root: HKCR; Subkey: CLSID\{{FB314EDA-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueData: {app}\DropboxExt64.24.dll; Check: IsWin64
Root: HKCR; Subkey: CLSID\{{FB314EDA-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueName: ThreadingModel; ValueData: Apartment; Check: IsWin64

Root: HKCR; Subkey: CLSID\{{FB314EDB-A251-47B7-93E1-CDD82E34AF8B}; ValueType: string; ValueData: DropboxExt; Flags: uninsdeletekey; Check: IsWin64
Root: HKCR; Subkey: CLSID\{{FB314EDB-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueData: {app}\DropboxExt64.24.dll; Check: IsWin64
Root: HKCR; Subkey: CLSID\{{FB314EDB-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueName: ThreadingModel; ValueData: Apartment; Check: IsWin64


[UninstallDelete]

[Icons]
Name: {commonprograms}\{#MyAppName}; Filename: {app}\{#MyAppExeName}
Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}"

Open in new window


The error I get is "This application failed to start because it could not find or load the QT platform plugin "windows". Reinstalling the application may fix this problem.
0
Comment
Question by:Gabriel Clifton
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
2 Comments
 
LVL 13

Accepted Solution

by:
Gabriel Clifton earned 0 total points
ID: 40490251
Never mind, I figured it out.
0
 
LVL 13

Author Closing Comment

by:Gabriel Clifton
ID: 40490257
In case someone in the future is wondering, this is how I made the perfect DropBox installer.

First, I downloaded the normal dropbox installer and installed it on a test system.
I copied the bin folder from appdata\dropbox to a new directory for working on it and saved this inno script to the directory above where I copied the bin folder and an icon file I am using for dropbox.
#define MyAppName "Dropbox"
#define MyAppVerName "Dropbox"
#define MyAppVersion "3.0.3"
#define MyAppPublisher "DropBox, Inc."
#define MyAppURL "http://www.getdropbox.com"
#define MyAppExeName "Dropbox.exe"


[Setup]
AppName={#MyAppName}
AppVerName={#MyAppVerName}
AppPublisher={#MyAppPublisher}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={pf32}\{#MyAppName}
DefaultGroupName={#MyAppName}
OutputDir=.\Output
OutputBaseFilename={#MyAppName} Installer
Compression=lzma
SolidCompression=true
DirExistsWarning=no
ShowLanguageDialog=auto
ArchitecturesInstallIn64BitMode=x64
SetupIconFile=.\dropbox.ico
AppVersion={#MyAppVersion}
PrivilegesRequired=admin
CloseApplications=yes

[InstallDelete]
Name: bin\*.*; Type: files; Languages: 

[Dirs]

[Files]
Source: bin\*.*; DestDir: {app}; Flags: ignoreversion recursesubdirs; Excludes: DropboxExt64.*.dll
Source: bin\DropboxExt64.24.dll; DestDir: {app}; Check: IsWin64

[Registry]

Root: HKLM; Subkey: SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List; ValueType: string; ValueName: {app}\{#MyAppExeName}; ValueData: {app}\{#MyAppExeName}:*:Enabled:Dropbox; Flags: uninsdeletevalue

Root: HKLM32; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\DropboxExt1; ValueType: string; ValueData: {{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}; Flags: uninsdeletekey
Root: HKLM32; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\DropboxExt2; ValueType: string; ValueData: {{FB314EDA-A251-47B7-93E1-CDD82E34AF8B}; Flags: uninsdeletekey
Root: HKLM32; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\DropboxExt3; ValueType: string; ValueData: {{FB314EDB-A251-47B7-93E1-CDD82E34AF8B}; Flags: uninsdeletekey

Root: HKLM; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\DropboxExt1; ValueType: string; ValueData: {{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}; Flags: uninsdeletekey; Check: IsWin64
Root: HKLM; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\DropboxExt2; ValueType: string; ValueData: {{FB314EDA-A251-47B7-93E1-CDD82E34AF8B}; Flags: uninsdeletekey; Check: IsWin64
Root: HKLM; Subkey: SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers\DropboxExt3; ValueType: string; ValueData: {{FB314EDB-A251-47B7-93E1-CDD82E34AF8B}; Flags: uninsdeletekey; Check: IsWin64

Root: HKCR; Subkey: *\shellex\ContextMenuHandlers\DropboxExt; ValueType: string; ValueData: {{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}; Flags: uninsdeletekey
Root: HKCR; Subkey: Directory\Background\shellex\ContextMenuHandlers\DropboxExt; ValueType: string; ValueData: {{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}; Flags: uninsdeletekey
Root: HKCR; Subkey: Directory\shellex\ContextMenuHandlers\DropboxExt; ValueType: string; ValueData: {{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}; Flags: uninsdeletekey

Root: HKCR32; Subkey: CLSID\{{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}; ValueType: string; ValueData: DropboxExt; Flags: uninsdeletekey
Root: HKCR32; Subkey: CLSID\{{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueData: {app}\DropboxExt.24.dll
Root: HKCR32; Subkey: CLSID\{{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueName: ThreadingModel; ValueData: Apartment

Root: HKCR32; Subkey: CLSID\{{FB314EDA-A251-47B7-93E1-CDD82E34AF8B}; ValueType: string; ValueData: DropboxExt; Flags: uninsdeletekey
Root: HKCR32; Subkey: CLSID\{{FB314EDA-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueData: {app}\DropboxExt.24.dll
Root: HKCR32; Subkey: CLSID\{{FB314EDA-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueName: ThreadingModel; ValueData: Apartment

Root: HKCR32; Subkey: CLSID\{{FB314EDB-A251-47B7-93E1-CDD82E34AF8B}; ValueType: string; ValueData: DropboxExt; Flags: uninsdeletekey
Root: HKCR32; Subkey: CLSID\{{FB314EDB-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueData: {app}\DropboxExt.24.dll
Root: HKCR32; Subkey: CLSID\{{FB314EDB-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueName: ThreadingModel; ValueData: Apartment

Root: HKCR; Subkey: CLSID\{{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}; ValueType: string; ValueData: DropboxExt; Flags: uninsdeletekey; Check: IsWin64
Root: HKCR; Subkey: CLSID\{{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueData: {app}\DropboxExt64.24.dll; Check: IsWin64
Root: HKCR; Subkey: CLSID\{{FB314ED9-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueName: ThreadingModel; ValueData: Apartment; Check: IsWin64

Root: HKCR; Subkey: CLSID\{{FB314EDA-A251-47B7-93E1-CDD82E34AF8B}; ValueType: string; ValueData: DropboxExt; Flags: uninsdeletekey; Check: IsWin64
Root: HKCR; Subkey: CLSID\{{FB314EDA-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueData: {app}\DropboxExt64.24.dll; Check: IsWin64
Root: HKCR; Subkey: CLSID\{{FB314EDA-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueName: ThreadingModel; ValueData: Apartment; Check: IsWin64

Root: HKCR; Subkey: CLSID\{{FB314EDB-A251-47B7-93E1-CDD82E34AF8B}; ValueType: string; ValueData: DropboxExt; Flags: uninsdeletekey; Check: IsWin64
Root: HKCR; Subkey: CLSID\{{FB314EDB-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueData: {app}\DropboxExt64.24.dll; Check: IsWin64
Root: HKCR; Subkey: CLSID\{{FB314EDB-A251-47B7-93E1-CDD82E34AF8B}\InProcServer32; ValueType: string; ValueName: ThreadingModel; ValueData: Apartment; Check: IsWin64

[UninstallRun]
Filename: "{cmd}"; Parameters: "/C ""taskkill /im dropbox.exe /f /t"

[UninstallDelete]
Type: files; Name: {commonprograms}\Dropbox\{#MyAppName}
Type: files; Name: {commonstartup}\{#MyAppName}
Type: files; Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"

[Icons]
Name: {commonprograms}\Dropbox\{#MyAppName}; Filename: {app}\{#MyAppExeName}
Name: {commonstartup}\{#MyAppName}; Filename: {app}\{#MyAppExeName}
Name: "{group}\{cm:UninstallProgram,{#MyAppName}}"; Filename: "{uninstallexe}"

[Run]
Filename: {app}\{#MyAppExeName}; Description: {cm:LaunchProgram,{app}\{#MyAppExeName}}; Flags: nowait postinstall

[CustomMessages]
AppName={#MyAppName}
LaunchProgram=Start {#MyAppName} after finishing installation

Open in new window

Compiled it and after several tests, found it working perfectly for me.
0

Featured Post

Migrating Your Company's PCs

To keep pace with competitors, businesses must keep employees productive, and that means providing them with the latest technology. This document provides the tips and tricks you need to help you migrate an outdated PC fleet to new desktops, laptops, and tablets.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Is your phone running out of space to hold pictures?  This article will show you quick tips on how to solve this problem.
A look at what happened in the Verizon cloud breach.
This video teaches viewers how to encrypt an external drive that requires a password to read and edit the drive. All tasks are done in Disk Utility. Plug in the external drive you wish to encrypt: Make sure all previous data on the drive has been …
This Micro Tutorial will give you a introduction in two parts how to utilize Windows Live Movie Maker to its maximum capability. This will be demonstrated using Windows Live Movie Maker on Windows 7 operating system.

628 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question