AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Probleme mit Datentypen bei einer DLL
Thema durchsuchen
Ansicht
Themen-Optionen

Probleme mit Datentypen bei einer DLL

Ein Thema von mcinternet · begonnen am 21. Jun 2012 · letzter Beitrag vom 2. Jul 2012
Antwort Antwort
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.342 Beiträge
 
Delphi 12 Athens
 
#1

AW: Probleme mit Datentypen bei einer DLL

  Alt 21. Jun 2012, 18:27
CONST bringt bei Word nicht viel (ändert garnichts).

"ErrMsg" ... C++ baut gerne auch die Parametersignatur in den Exportnamen ein. Eventuell heißt es ja nicht "ErrMsg". ( ist das eigentlich CaseSensitiv? )

Statt Pointer kann man auch gleich PAnsiChar nehmen.
PWideChar wird es mit großer Wahrscheinlichkeit nicht sein.

Neben cdecl und stdcall gibt es noch ein paar Varianten mehr, aber Anderes hab ich hier auch noch nicht gesehn. (außer selten mal savecall und in Delphi natürlich pascal)
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
NickelM

Registriert seit: 22. Jul 2007
Ort: Carlsberg
445 Beiträge
 
Delphi 2009 Professional
 
#2

AW: Probleme mit Datentypen bei einer DLL

  Alt 21. Jun 2012, 18:48
@himitsu : Ich weis, wegen Pointer. Wollte nur mal gugen, ob sich der Pointer immer ändert, ob er ungleich nil ist und wenn der Pointer existiert, ich die Adresse dann erst übertrage.
Wenn es dan funkt mit irgendeinem Funktionsaufruf, kann man immernoch Pointer durch PAnsiChar ersetzten.
Stimmt CONST bringt bei PWideChar,PAnsiChar oder sonstwo nur was, wenn sie als Paramter übergeben werden richtig? Was macht das dan eigentlich für einen Unterschied? Ich denke mal CONST bringt, das bei PAnsiChar,PWideChar z.b. der Text im Speicher der Funktion liegt und nicht die Adresse des Textes oder?
@Thread : Was mir gerade einfällt, so beim schreiben grad, wegen dem Namen der Funktion.
Ich kenn die Dll nicht vielleicht heist die Funktion ja "ErrMsgA".
Zumindest ist es oft bei WinAPIs so. Neuere Dlls, so ab Win2000 haben dann eine "ErrMsgA" und eine "ErrMsgW". Das "A" steht für ANSI und das "W" für Wide also PWideChar.

Das wären jetzt meine einizg letzen Ideen.

Gruß NickelM
Nickel
"Lebe und denke nicht an morgen"
Zitat aus dem gleichnamigen Bollywoodfilm.
  Mit Zitat antworten Zitat
Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.487 Beiträge
 
Delphi 12 Athens
 
#3

AW: Probleme mit Datentypen bei einer DLL

  Alt 22. Jun 2012, 08:33
Raten bringt hier nicht viel.
Entweder mit dem Debugger in die DLL-Funktion springen und sich den Code anschaun oder gleich die ganze DLL diassemblieren (Windasm o.ä.).
  Mit Zitat antworten Zitat
mcinternet

Registriert seit: 22. Apr 2010
Ort: Odenwald
193 Beiträge
 
Delphi 10.3 Rio
 
#4

AW: Probleme mit Datentypen bei einer DLL

  Alt 2. Jul 2012, 09:23
Problem ist gelöst.
da ich in die dll definitiv nicht hereinschauen kann, habe ich eine eigene Fehlercodetable aufgebaut

danke an alle für die Tipps.

Gruss

mc
Jörg
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz