Frage nach Möglichkeit

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 »

Man kann mit Compilerdirektiven das OS überprüfen:

Code: Alles auswählen

CompilerSelect #PB_Compiler_OS
  CompilerCase #PB_OS_AmigaOS
    ; Amigaspeziefischer Code
  CompilerCase #PB_OS_Linux
    ; Linuxspeziefischer Code
  CompilerCase #PB_OS_MacOS
    ; Äpfelchen
  CompilerCase #PB_OS_Windows
    ; Birnchen
CompilerEndSelect
Der Compiler compiliert jetzt nur den Teil, auf dessen OS er gerade läuft.
Das heißt, man kann Multiplattform-Source mit Plattformspezifischen Code-
teilen compilieren, muß dies aber immer extra auf dem jeweiligen OS tun.

Schlecht ausgedrückt, aber besser gehts gerade nicht :mrgreen:
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
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 »

geeforce hat geschrieben:Ich habe vor, es per Autostart von einem USB Stick zu Starten und je nach BS soll dann halt das richtige laufen.
Das wird nicht gehen:
1. hat jeder halbwegs vernünftige Mensch keinen Autostart für USB aktiviert.
2. kann in der Autoruninf nur eine startdatei angegeben werden, diese kann
also nur für ein OS funktionieren.
3. nicht jedes OS unterstützt Autostart von USB.
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
geeforce
Beiträge: 13
Registriert: 10.03.2009 17:07

Beitrag von geeforce »

mit einer autorun.inf Datei, oder was meinst du?
Andesdaf
Moderator
Beiträge: 2673
Registriert: 15.06.2008 18:22
Wohnort: Dresden

Beitrag von Andesdaf »

php-freak hat geschrieben:Wo kann man das Einstellen?
Was denn? Vom USB Stick oder die verschiedenen Compiler-OS-Exen?
Win11 x64 | PB 6.20
geeforce
Beiträge: 13
Registriert: 10.03.2009 17:07

Beitrag von geeforce »

ts-soft hat geschrieben:
geeforce hat geschrieben:Ich habe vor, es per Autostart von einem USB Stick zu Starten und je nach BS soll dann halt das richtige laufen.
Das wird nicht gehen:
1. hat jeder halbwegs vernünftige Mensch keinen Autostart für USB aktiviert.
2. kann in der Autoruninf nur eine startdatei angegeben werden, diese kann
also nur für ein OS funktionieren.
3. nicht jedes OS unterstützt Autostart von USB.
1. Ich geh mal davon aus, das der größte Teil der Menschen, die einen PC haben, nicht wissen, wie man den Autostart deaktiviert.

2.u.3. Stimmt /:->
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 »

geeforce hat geschrieben:mit einer autorun.inf Datei, oder was meinst du?
Das ist doch die einzige Möglichkeit des Autostarts. Andere kenne ich nicht.

Für USB hat man sowas aber grundsätzlich deaktiviert. Man handelt sich
sonst viel zu schnell einen Virus auf dem Stick eing. Hatte vor ein
paar Wochen so ein Ding auf nen Schulrechner entdeckt, der hatte bestimmt
schon mehrere Hundert Schüler-Sticks infiziert.
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
php-freak
Beiträge: 536
Registriert: 07.02.2009 18:08

Beitrag von php-freak »

Wenn Autostart das macht geht das im Prinzip schon!

Er macht 3 Dateien für jedes Betriebssystem eine und eine EXE-Datei die prüft welches OS Vorhanden ist! Die startet dann die richtige Datei!
PureBasic 4.30 (x86)
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 »

php-freak hat geschrieben:Wenn Autostart das macht geht das im Prinzip schon!

Er macht 3 Dateien für jedes Betriebssystem eine und eine EXE-Datei die prüft welches OS Vorhanden ist! Die startet dann die richtige Datei!
Und in welchem OS soll diese eine Exe-Datei kompiliert sein :lol:
also die, die prüft
Bild
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
geeforce
Beiträge: 13
Registriert: 10.03.2009 17:07

Beitrag von geeforce »

php-freak hat geschrieben:Wenn Autostart das macht geht das im Prinzip schon!

Er macht 3 Dateien für jedes Betriebssystem eine und eine EXE-Datei die prüft welches OS Vorhanden ist! Die startet dann die richtige Datei!
Genau so hab ich mir das gedacht. Nur die exe zum überprüfen läuft ja nicht auf jedem BS, wenn ich das richtig verstanden habe.
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 »

Vom Prinzip her könnteste als Startdatei eine HTML-Datei nehmen, die das
OS "ermittelt", aber ob das Sicher ist. Autostart für USB ist sowieso viel zu
gefährlich, ausser unter Windows wird wohl auch woanders garnicht gehen.
In Windows ist es, glaub ich zumindest, standardmässig auch nur für CD/DVD aktiviert.
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
Antworten