PBOSL (NTService) und Pure Basic 4.0 - POLINK ERROR

Anfängerfragen zum Programmieren mit PureBasic.
funk.munich
Beiträge: 123
Registriert: 27.03.2006 09:45

PBOSL (NTService) und Pure Basic 4.0 - POLINK ERROR

Beitrag von funk.munich »

Hi zusammen,

wenn ich die Lib "NTService" unter PB 4.0 nutzen möchte und den
folgenden Code http://www.purebasic.fr/german/viewtopi ... =ntservice ausführe erhalte ich immer die folgende
Fehlermeldung:

POLINK: error: Unresolved external symbol "SYS_StringEqual"
POLINK: error: Unresolved external symbol "PB_Len"
POLINK: error: Unresolved external symbol "PB_Str"
POLINK: error: Unresolved external symbol "_SYS_CopyString4"
POLINK: error: Unresolved external symbol "SYS_FreeString4"
POLINK: fatalerror: 5 unresolved external(s).

Kann das sein, dass PB 4.0 die Lib nicht unterstützt?

Danke + Gruß,
Daniel
Benutzeravatar
winduff
Beiträge: 879
Registriert: 10.02.2006 21:05
Wohnort: Gießen
Kontaktdaten:

Beitrag von winduff »

jup, nicht unterstüzt.
Bild
AND51 hat geschrieben:...und ich würde dein Programm aus Wut zwei mal installieren, um eines genüsslicher löschen zu können, als das andere...
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: PBOSL (NTService) und Pure Basic 4.0 - POLINK ERROR

Beitrag von Kiffi »

@funk.munich:

der Code von PAMKKKKK funktioniert (nach den üblichen Änderungen von
PB3.94 nach PB4) bei mir ohne Fehlermeldungen.

Bist Du Dir sicher, dass Du die PBOSL in der Version für PB4 heruntergeladen
und installiert hast?

http://pbosl.purearea.net/index.php?site=Libs

Grüße ... Kiffi
funk.munich
Beiträge: 123
Registriert: 27.03.2006 09:45

Beitrag von funk.munich »

Hi zusammen,

ich habe PB 4.0 noch einmal deinstalliert (zusätzlich existierenden Ordner manuell entfernt).
Dann neu installiert und alle PBOSL Libs in das Verzeichnis kopiert.
Jetzt erhalte ich noch folgende Fehlermeldung:

POLINK: error: Unresolved external symbol '_PB_StringBasePosition".

bei folgenden Einzeiler:

Code: Alles auswählen

Installservice("ServiceName","ServiceDisplayName","hello.exe","ServiceExplanation",#SERVICE_AUTO_START)
Das gleiche passiert auch wenn ich das Beispiel Programm aufrufe "Example_by_PAMKKKKK.pb".

Was mache ich nur falsch?

Gruß,
Daniel
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

> Dann neu installiert und alle PBOSL Libs in das Verzeichnis kopiert.

nochmal meine Frage: Die PBOSL für PB4?

Grüße ... Kiffi
funk.munich
Beiträge: 123
Registriert: 27.03.2006 09:45

Beitrag von funk.munich »

Hi,

sorry .. vergessen mit anzugeben. Ja ... es ist die aktuelle PBOSL für PB4.0.
Hatte ich mir gerade noch einmal heruntergeladen und da eben nur noch den
einen Fehler bekommen.

Gruß,
Daniel
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

> Ja ... es ist die aktuelle PBOSL für PB4.0.

das ist wirklich seltsam. Ich bekomme da keinen Fehler beim Kompilieren.

[grübel, grübel]

Verschieb mal alle Libs bis auf die NT-Lib aus dem Ordner Userlibs in einen
temporären Ordner. Dann startest Du die IDE erneut und kompilierst
diesen Code:

Code: Alles auswählen

End
Installservice("ServiceName","ServiceDisplayName","hello.exe","ServiceExplanation",#SERVICE_AUTO_START)
Wenn das ohne Fehlermeldung klappt, dann hast Du wahrscheinlich noch
eine alte Userlib, die nicht mit PB4 funktioniert. In diesem Fall solltest Du
dann Deine Userlibs aus dem temporären Ordner Stück für Stück
zurückkopieren und zwischendurch obigen Code kompilieren (IDE-Neustart
nicht vergessen!).

Grüße ... Kiffi
funk.munich
Beiträge: 123
Registriert: 27.03.2006 09:45

Beitrag von funk.munich »

Hi Kiffi,

das hatte ich auch schon ausprobiert, jedoch ohne Erfolg :(
Eine Frage ... wie hast Du die Lib in Dein Verzeichnis kopiert?

Hast Du ein Upgrade von PB 3.9x auf PB4.0 gemacht und danach
die Libs hereinkopiert/überschrieben?

Ich habe PB 4.0 neu installiert gehabt (ohne PB3.9x) und dann PBOSL für
4.0 reinkopiert.

Danke für die schnellen Antworten,
Daniel
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

> Hast Du ein Upgrade von PB 3.9x auf PB4.0 gemacht und danach
> die Libs hereinkopiert/überschrieben?

nein, das war mir zu mühselig.

> Ich habe PB 4.0 neu installiert gehabt (ohne PB3.9x) und dann PBOSL für
> 4.0 reinkopiert.

genau so habe ich's auch gemacht.

mh, dann habe ich momentan keine Idee, woran es liegen kann.

Vielleicht kann Thomas (ts-soft) heute abend weiterhelfen.

Grüße ... Kiffi
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 »

Hört sich an, als wenn dort Unicode an ist, das funktioniert zur Zeit bei so gut
wie keiner Lib. TailBite libs werden alle in ASCII initialisiert. Wenn das
Programm also Unicode-Strings benutzt vesteht die Lib nur Bahnhof, und
umgekehrt. TailBite ist zur Zeit noch Beta und funktioniert nur Teilweise,
dasselbe gilt auch für PBOSL-Libs, sowie für alle anderen auch.

Für Unicode versuchen den Source der Lib zu includieren, so das der dortige Code auch in Unicode ausgeführt wird. Mit einer Lib ist das zur Zeit etwas schwieriger, da diese unabhängig vom Programm initialisiert wird.

Versteht keiner, egal, vielleicht hat's gehilft :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
Antworten