PB 4.20 Beta 4 (Windows) -> Your settings can't be saved!

Fragen und Bugreports zur PureBasic 4.0-Beta.
Little John

Beitrag von Little John »

Sorry, irgendwie verstehe ich nicht was Du meinst, und es scheint mir Du machst die Sache komplizierter als nötig. Es ist eigentlich ganz einfach:

Wenn z.B. User Falko angemeldet ist, sollen die Einstellungen gespeichert werden in
C:\Dokumente und Einstellungen\Falko\Anwendungsdaten\PureBasic\PureBasic.prefs
Wenn z.B. User John angemeldet ist, sollen die Einstellungen gespeichert werden in
C:\Dokumente und Einstellungen\John\Anwendungsdaten\PureBasic\PureBasic.prefs
Wenn z.B. User Lisa angemeldet ist, sollen die Einstellungen gespeichert werden in
C:\Dokumente und Einstellungen\Lisa\Anwendungsdaten\PureBasic\PureBasic.prefs
Natürlich haben die User keine Schreibrechte ins Admin-Verzeichnis, das brauchen wir hier nicht zu diskutieren. Sollen sie ja auch gar nicht haben! PB versucht es aber, und das ist der Bug. %APPDATA% ist ja eine Variable, die je nach angemeldetem User einen anderen Wert annimmt (siehe Beispiele oben). Es gibt also keinen Sinn, dass dort fest Admin eingetragen ist. So wie PB es macht ist es im Widerspruch zu der in der Dokumentation beschriebenen richtigen Vorgehensweise.

Gruß, Little john
Benutzeravatar
Falko
Admin
Beiträge: 3531
Registriert: 29.08.2004 11:27
Computerausstattung: PC: MSI-Z590-GC; 32GB-DDR4, ICore9; 2TB M2 + 2x3TB-SATA2 HDD; Intel ICore9 @ 3600MHZ (Win11 Pro. 64-Bit),
Acer Aspire E15 (Win11 Home X64). Purebasic LTS 6.0
Kontaktdaten:

Beitrag von Falko »

Entschuldige, ich habe mich total verirrt und es war von mir nicht so gemeint
das kompliziert zu machen :freak:

Insofern ist es ein Bug. In der Registry müsste %APPDATA% geschrieben
sein und nicht wie es nach der Installation passiert, der Username eingefügt werden.
[Edit]
Commandline options for the IDE

The PureBasic IDE allows you to modify the paths and files being used from the commandline. This allows you to create several shortcuts that start the IDE with different configurations for different users, or for different projects.

Possible commandline options are:


/P <Preferences file> loads/saves all the configuration to/from the given file.
/T <Templates file> loads/saves the code templates from/to the given file.
/A <tools file> loads/saves the configuration of the external tool from/to this file.
/S <Source path> overwrites the "Source path" setting from the preferences
/E <Explorer path> starts the Explorer tool with the given path
/L <Line number> moves the cursor to the given line number in the last opened file
/NOEXT disables the registering of the .pb extension in the registry.
/LOCAL puts all preferences in the PureBasic directory instead of the user profile location.
/PORTABLE the same as /LOCAL and /NOEXT combined

The default files for /P /T and /A are saved in the %APPDATA%\PureBasic\ directory on the system.

The /NOEXT command is useful when you have several different PB versions at once (for testing of beta versions for example), but want the .pb extension to be associated with only one of them. The /PORTABLE command can be used to keep all configuration inside the local directory to easily copy PureBasic to different computers (or run it from USB sticks for example).

You can also put filenames of source files to load on the commandline. You can even specify wildcards for them. (so with "*.pb" you can load a whole directory.)
Anscheinend soll man durch die Möglichkeit von /NOEXT oder noch besser /PORTABLE das wohl in einer Purebasicverknüpfung ändern können. Habe es aber noch nicht probiert.


Gruß Falko
Bild
Win10 Pro 64-Bit, PB_5.4,GFA-WinDOS, Powerbasic9.05-Windows, NSBasic/CE, NSBasic/Desktop, NSBasic4APP, EmergenceBasic
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3857
Registriert: 13.09.2004 17:48
Kontaktdaten:

Beitrag von bobobo »

das mit den Parametern klappt so gut dass ich hier durchaus in der Lage
bin 4 vertschieden PB_VErsionen gleichzeitig auf einem Rechner vernünftig
mit jeweils eigenen Einstellungen bedienen zu können. Der Doppelklick auf
eine PB_Datei führt bei mir zu einem Starten eines PB_Vorauswahl-Progs
welches dann die ausgewählte PB-Version nebst Paramtern startet.
Ein direktes Starten der IDE's vollziehe ich immer über Verknüpfungen, die
die passenden Parameter enthalten.
‮pb aktuell5.7 - windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Little John

Beitrag von Little John »

Ich finde es auch gut, dass PB die verschiedenen Kommandozeilen-Schalter anbietet, so dass jemand der sich auskennt alles genau so konfigurieren kann wie er/sie es haben möchte -- gar keine Frage.
Das Problem war hier aber, dass das Setup-Programm offenbar Murks gemacht hat durch unsinnige Verwendung von Schaltern. Ich habe jetzt aus dem o.g. Registry-Eintrag alle Schalter manuell gelöscht, so dass dort nur noch steht
[HKEY_CLASSES_ROOT\Applications\PureBasic.exe\shell\open\command]
@="\"C:\\Programme\\PureBasic\\PureBasic.exe\" \"%1\"
Das Problem ist damit beseitigt.

Gruß, Little John
freak
PureBasic Team
Beiträge: 766
Registriert: 29.08.2004 00:20
Wohnort: Stuttgart

Beitrag von freak »

Es ist nicht das Setup, sondern die IDE selber die den Registry-Eintrag anlegt. (beim Starten)

Der Grund dafür das auch der Ort der Preferences mit gespeichert wird liegt darin das sonst
der /LOCAL (oder auch /P) switch (um die Preferences im PB Ordner zu behalten) keine Auswirkung
auf das Starten der IDE über den Doppelklick auf eine Datei hätte.
Die IDE speichert also beim normalen Start den Ort der Preferences mit in der
Registry damit bei späterem Starten über den Doppelklick auch die
richtigen Preferences verwendet werden.

Das gibt es erst seit 4.10, desshalb ist das Problem mit den Admin Rechten wohl noch
nicht aufgefallen (vorallem weil unter Vista unter HKEY_LOCAL_USER gespeichert wird)

Die Lösung sollte sein auf für XP den Registry key in HKEY_LOCAL_USER zu verwenden.
Ich werde mich darum kümmern.
Little John

Beitrag von Little John »

Alles klar, vielen Dank!

Gruß, Little John
freak
PureBasic Team
Beiträge: 766
Registriert: 29.08.2004 00:20
Wohnort: Stuttgart

Beitrag von freak »

Habs geändert für die final.

Vielleicht muss hier der Key in HKEY_CLASSES_ROOT aber noch manuell gelöscht werden (als admin),
weil die Enstellung des Admins eventuell die des users sonst trotzdem noch überschreibt.
Little John

Beitrag von Little John »

Vielen Dank! :)

Gruß, Little John
Gesperrt