[erledigt] GetLocalOS() ?

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
scholly
Beiträge: 793
Registriert: 04.11.2005 21:30
Wohnort: Düsseldorf

Beitrag von scholly »

nicolaus hat geschrieben:Habe den Thread mal in Anfänger verschoben ist hier denke ich besser aufgehoben ;-)
OS-Unabhängige Programmierung ist ein ANFÄNGER-Thema ?
Einspruch... :)
scholly
Ich bin blutiger PB-Anfänger.
seit 17.12.08: PB 4.3 unter XP Home(SP3)
MARTIN
Beiträge: 454
Registriert: 08.09.2004 14:03
Wohnort: Kiel

Beitrag von MARTIN »

OS-Unabhängige Programmierung ist ein ANFÄNGER-Thema ?
Einspruch...
Wenn ich das lese:
Ich will zur Laufzeit des Programms herausbekommen, welches OS, nicht nur welche Windows-Version; also ob WinXYZ, Linux oder MacOS
Ich denke dass dieser Thread eher in Anfänger passt.
Amilo 1667|Suse Linux 10.1_64bit/WinXP |PB 4.00/3.94
Benutzeravatar
Falko
Admin
Beiträge: 3535
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.11b1
HP255G8 Notebook @AMD Ryzen 5 5500U with Radeon Graphics 2.10 GHz 3.4GHz, 32GB_RAM, 3TB_SSD (Win11 Pro 64-Bit)
Kontaktdaten:

Beitrag von Falko »

Das mit den Includes geht, so wie du es beschrieben hast mit TS-Soft
seinem Tip :wink: .
Dann machste zusätzlich die einzelnen sources für die NameOS.pbi's.
Somit kann man dann abhängig vom System den passenden Source
compilieren. Ein Hauptgerüst für alle und die Includes dann überall
einsetzen, wo du diese Bedingung überprüfst. Wo z.B. API rein soll, könnte
dann API stehen, wenn es für Windows ist. Ich kann mir jetzt so ungefähr
vorstellen, wie du das meinst.

[Edit] Oder mach in den einzelnen NameOS.pbi dann einfach nur
Proceduren, ähnlich wie bei DLL's, die alle die je gleichen Procedure-
Namen erhalten, aber für das jeweilige OS den passenden Algo nutzt.
Damit kann das Hauptgerüst bei der Entscheidung automatisch aufrufen.
[/Edit]


Code: Alles auswählen

CompilerSelect #PB_Compiler_OS 
  CompilerCase #PB_OS_AmigaOS 
    ; AmigaCode 
    IncludeFile  "Amiga.pbi"
  CompilerCase #PB_OS_Linux 
    ; PinguinCode 
    IncludeFile  "Pinguin.pbi"
  CompilerCase #PB_OS_MacOS 
    ; ApfelCode 
    IncludeFile  "Mac.pbi"
  CompilerCase #PB_OS_Windows 
    ; FensterCode 
    IncludeFile  "Windows.pbi"
CompilerEndSelect
Bild
Win11 Pro 64-Bit, PB_6.11b1
Benutzeravatar
PAMKKKKK
Beiträge: 321
Registriert: 21.04.2005 22:08
Wohnort: Braunschweig
Kontaktdaten:

Beitrag von PAMKKKKK »

Ich habe dazu mal ein kleines TUT gemacht:
http://forums.purebasic.com/german/view ... 9251#69251
Wir Schreiben ein PureBasic Buch.
Auch du kannst mitmachen!
http://www.purearea.net/pb/english/pure ... :Main_Page
Benutzeravatar
scholly
Beiträge: 793
Registriert: 04.11.2005 21:30
Wohnort: Düsseldorf

Beitrag von scholly »

PAMKKKKK hat geschrieben:Ich habe dazu mal ein kleines TUT gemacht:
http://forums.purebasic.com/german/view ... 9251#69251
Super :allright:
Auch an Falko und ts-soft herzlichen Dank für die Unterstützung, ich wurde geholfen :wink:
Tut mir leid, wenn ich mit der 'Laufzeit'-Erwähnung für Verwirrung gesorgt habe, aber ich bin ja noch bei der Planung und konnte keinen Beispielcode posten.
bis zum nexten mal...
scholly
Ich bin blutiger PB-Anfänger.
seit 17.12.08: PB 4.3 unter XP Home(SP3)
Nik
Beiträge: 132
Registriert: 04.02.2005 19:57

Beitrag von Nik »

<veraltet>
Da ist überhauptnichts Ansichtssache...
Es ist einfach so das du dafür die Compiler direktiven benutzen musst da dein Code sich gar nicht kompleieren lässt wenn es eine Funktion auf dem OS Nicht gibt wird es sonst auch nie eine Laufzeit geben.
</veraltet>
sorry erst Blättern dann Posten
www.KoMaNi.de
Eine kleine Gruppe von Hobby Programmierern, die gerade einen Instant Messenger natürlich in PureBasic schreiben.
Antworten