Albert I too use Inno the only problem I have is when I have a few
versions
of Access installed the runtime line in the [Icons] and [Run] sections
Filename: "C:\Program Files\Microsoft Office\Office\MSACCESS.EXE
{app}\LonhamGroupGraphicsDatabase.mdb"; Parameters: "/runtime"
Ok, you need for the above to launch msacces.exe ,and YOUR "MDB" is the
parameter!!! (just like it is when you make shortcut, you are launching
ms-access, and SUPPLYING parameters to that command). In the above, the only
parameter you got is /runtime, and that parameter needs the mdb file name
also
So, you need (broken into two lines for easy read)
FileName: "C:\Program Files\Microsoft Office\OFFICE11\MSACCESS.EXE";
Parameters: """{app}\LonhamGroupGraphicsDatabase.mdb"" /runtime"
Note how you use "" anywhere in the line to put in a single quote. (but, you
still need the " on each side)
As mentioned, your shortcuts don't match mine for the path name to
msaccess.exe. We got a hard coded path name above to office11 (a2003). This
hard coding is unacceptable to me, and my installs. So, we should replace
the actual above hard coded path name to the actual registry setting where
msaccess.exe is located. Hence, the file name above should be:
Filename:
"{reg:HKLM\SOFTWARE\Microsoft\Office\11.0\Access\InstallRoot\,Path}MSACCESS.EXE";
Parameters: """{app}\LonhamGroupGraphicsDatabase.mdb"" /runtime"
Notice how the above reads the registry key, and uses that in place of the
hard coded path name. I am not sure why you came up with a different
location then what I got for office, but if we use the above reg key, then
it don't matter.
In fact, since we know the location of msaccess.exe, then my installs
actually check for the msaccess.exe BEFORE I install my software.
So, I add to my scripts the following check (the code section is the "last"
section of inno)
Code:
function InitializeSetup(): Boolean;
var
strRes : string;
begin
result := False
if RegQueryStringValue(HKEY_LOCAL_MACHINE,
'SOFTWARE\Microsoft\Office\11.0\Access\InstallRoot\','path', strRes)
then
result := True;
if Result = False then
MsgBox('The Rides Runtime Files MUST be installed BEFORE' #13#13
'Installing this Program. - setup will stop', mbInformation, MB_OK);
end;
Note the above "if", and "msgbox" lines are of course to be on line, and are
wrapped here for ease of read
[QUOTE]
BTW Is this what you have for disabling Macro Security?
[Registry]
Root: HKLM; Subkey: "Software\Microsoft\Office\11.0\Access\Security";
ValueType: dword; ValueName: "Level"; ValueData: 1
Root: HKLM; Subkey: "Software\Microsoft\Jet\4.0\Engines"; ValueType:
dword; ValueName: "SandBoxMode"; ValueData: 2[/QUOTE]
I got much the same, but I do have "quotes" around the values for dword. If
yours works..then don't worry, but they are "text" values in the registry.
[Registry]
Root: HKLM ; Subkey: "Software\Microsoft\Office\11.0\Access\Security";
ValueType: dword;
ValueName: "Level";
ValueData: "1"
Root: HKLM ; Subkey: "SOFTWARE\Microsoft\Jet\4.0\Engines";
ValueType: dword;
ValueName: "SandBoxMode";
ValueData: "2"
I just too busy, but really want to setup a web page for this stuff....