Linker-Optionen Datei

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

ZeHa hat geschrieben:Naja man könnte sich ja so 'ne Art "Starter" machen, muß ja nicht Autorun sein. Der Starter holt sich kurz den Pfad, schreibt ihn in %PB_DIR% oder so und ruft direkt die IDE auf.

Aber sicher daß das nicht auch global gesetzt werden kann? Also ohne Neuanmeldung?
Fast, nur einfacher

Code: Alles auswählen

SetEnvironmentVariable("PB_DIR", "der Pfad")
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

:mrgreen: also so falsch war mein Hinweis garnicht, die Vorgehensweise bräuchte man dann ja im Starter....
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

ZeHa hat geschrieben: Aber sicher daß das nicht auch global gesetzt werden kann? Also ohne Neuanmeldung?
Das geht auch ohne ab/anmelden.
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Hier mal ein Beispiel wie das mit der Vererbung funktioniert:

Code: Alles auswählen

SetEnvironmentVariable("THOMAS", "Hallo")
cmd = RunProgram(GetEnvironmentVariable("COMSPEC"), "", "", #PB_Program_Open|#PB_Program_Write|#PB_Program_Read)
If ProgramRunning(cmd)
  WriteProgramStringN(cmd, "echo %THOMAS%")
  While ProgramRunning(cmd)
    Debug ReadProgramString(cmd)
  Wend
  CloseProgram(cmd)
EndIf
Über ein Beispiel mit Systemvariable würde ich mich auch freuen, wenns
denn so einfach ist :wink:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Little John

Beitrag von Little John »

Hallo,

erstmal vielen Dank für die ganzen Antworten.
Leider habe ich noch nichts funktionierendes hinbekommen.

Das Herumprobieren mit Umgebungsvariablen scheitert bei mir momentan an einem zusätzlichen Problem: Angenommen, ich schreibe in das genannte Dialogfeld

Code: Alles auswählen

%pbdir%\PbLinker.txt
dann wird diese Option immer nur für das jeweilige Projekt gespeichert.
Wie kann ich es erreichen, dass diese Einstellung in der Datei PureBasic.prefs für alle zukünftigen Projekte gespeichert wird?

Gruß, Little John
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

> Wie kann ich es erreichen, dass diese Einstellung in der Datei PureBasic.prefs für alle zukünftigen Projekte gespeichert wird?
Bisher garnicht, kannste nur im engl. im FeatureRequest wünschen, wobei
ich mir nicht denken kann, das es von vielen gebraucht wird. Aber wünschen
ist bisher kostenlos :wink:

PS: Du kannst auch Dein eigenes Compilerplugin schreiben, das Interface ist
doch Dokumentiert!
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Rokur
Beiträge: 167
Registriert: 29.12.2005 09:58
Computerausstattung: Intel Core2 Quad (4x2,4 GHz), 4096 MB RAM, GForce 8800GTX 786 MB
Windows XP 32 Bit, PureBasic 4.40 (x86)

Beitrag von Rokur »

Du kannst dir eine Vorlage mit den gewünschten Einstellungen erstellen, und diese dann für jedes neue Projekt verwenden.
Little John

Beitrag von Little John »

Rokur hat geschrieben:Du kannst dir eine Vorlage mit den gewünschten Einstellungen erstellen, und diese dann für jedes neue Projekt verwenden.
Danke auch für diesen Tipp, das hört sich gut an.

Aber lässt sich das mit dem anderen Vorschlag kombinieren -- also mit einem Startprogramm, das eine Umgebungsvariable setzt und dann die IDE aufruft?
Woher weiß dann das Startprogramm bzw. die IDE, welche Vorlage es benutzen soll?

Gruß, Little John
Rokur
Beiträge: 167
Registriert: 29.12.2005 09:58
Computerausstattung: Intel Core2 Quad (4x2,4 GHz), 4096 MB RAM, GForce 8800GTX 786 MB
Windows XP 32 Bit, PureBasic 4.40 (x86)

Beitrag von Rokur »

Einfachste Lösung:
Du hast ein Vorlagenverzeichnis, aus dem du dir die Vorlage jedesmal per Hand rauskopierst, wenn du eine neue Quellcodedatei anlegst. Je nach PB-Einstellung können deine Projekteinstellungen ja am Ende der Quellcodedatei oder in einer separaten Projektdatei liegen.

Andere Lösung:
Schreib dir doch einen kleinen Wizzard um ein neues Projekt bzw. neue Quelldateien für ein Projekt anzulegen. Als Minimum musst du den Projektnamen und evtl. den gewünschten Dateinamen eingeben. Der Wizzard erstellt dann ein entsprechendes Verzeichnis und einer leeren Quellcodedatei, an der am Ende deine Einstellungen stehen.
Die Vorlage liegt dann in irgend einem Template-Verzeichnis auf deinem USB-Stick, deren Pfad genauso wie der Pfad der Linker-Datei ermittelt wird.
Antworten