Christian,
Sriram's answer is basically leading you to the best way to handle this for large numbers of users. You're correct, the Installation Server is indeed for deploying patches (and initial installs), but it also can introduce scripted automation when you deliver a patch to do various things on the frontend workstation. One of these is to configure the "ConfigFilesOnServer" option (you can see this in SAPLogon Options, under 'Server Configuration Files'). It can be configured manually on the client, but the Installation Server scripts allow you to automate this configuration.
Once you have everyone configured to use a central saplogon.ini file instead of a local one, then you need only edit that one file whenever you want to distribute a change of server landscape to your users. The change will be seen instantly with the next time they start SAPLogon.
The links that Sriram and Abdul listed lead to instructions on how to set up these scripts. Basically, after setting up the Installation Server, you create a 'Package' that contains the SAPGUI components you want everyone to have installed, and then within that Package you create OnInstall and OnUpdate scripts to do things like configure registry entries.
Here is the script that I use, in the 'On Installation End' section, adapted from samples provided in the SAPGUI installation and administration guides and the registry documentation:
'Redirect SAPLogon to server configuration file but allow local custom entries
NwEngine.Context.Log.Write "Event: On Installation End"
If NwEngine.Shell.RegValueExist("HKCU\Software\SAP\SAPLogon\Options\ConfigFileOnServer") Then
NwEngine.Context.Log.Write "Event: Deleting Previous HKCU ConfigFile Value"
NwEngine.Shell.DeleteRegValue("HKCU\Software\SAP\SAPLogon\Options\ConfigFileOnServer")
End If
If NwEngine.Shell.RegKeyExist("HKLM\Software\Wow6432Node") Then
NwEngine.Context.Log.Write "Event: 64-bit OS detected"
strRegValue = "HKLM\Software\Wow6432Node\SAP\SAPLogon\Options\ConfigFileOnServer"
Else
NwEngine.Context.Log.Write "Event: 32-bit OS detected"
strRegValue = "HKLM\Software\SAP\SAPLogon\Options\ConfigFileOnServer"
End If
strXmlFile = NwEngine.Variables.ResolveString("%SapSrcDir%\ConfigFiles\SapLogonTree.xml")
NwEngine.Context.Log.Write "Event: Setting Registry Value ConfigFileOnServer"
NwEngine.Shell.SetRegValue strRegValue, "REG_EXPAND_SZ", strXmlFile
Then, whenever I need to edit the saplogon.ini file on the server, I launch my own SAPLogon using a batch file with the line:
saplogon.exe /ini_file=\\<server>\<share>\configfiles\saplogon.ini
where <server>\<share> is equal to %SapSrcDir, i.e. the location of the installation server. This opens the file in 'edit' mode -- you make changes, then close your SAP Logon to save them.
The result is that everyone gets the entries you create, but they cannot edit or delete them. They can add their own custom entries to them, but they will always have what you deliver.
Hope this helps.
Best regards,
Matt