AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi 7 dcu in D2005 benutzen

Ein Thema von runner · begonnen am 19. Feb 2007 · letzter Beitrag vom 20. Feb 2007
Antwort Antwort
runner

Registriert seit: 13. Jan 2006
36 Beiträge
 
#1

Delphi 7 dcu in D2005 benutzen

  Alt 19. Feb 2007, 14:07
Hallo,
ich habe das Problem das ich für die serielle Schnittstelle eines Gerätes nur in Delphi7 comilierte Units (DCU) besitze. Nun muß ich die Anwendung aber nach Delhi2005 portieren. Besteht die Möglichkeit die Units z. B. in eine dll oder ähnliches zu kapseln oder gibt es sonst einen Weg unter Delphi2005 darauf zuzugreifen?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Delphi 7 dcu in D2005 benutzen

  Alt 19. Feb 2007, 14:09
In einer Bpl, Dll wäre das möglich, sonst nicht, da das Format der dcus bei verschiedenen Delphi-Versionen unterschiedlich ist.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: Delphi 7 dcu in D2005 benutzen

  Alt 19. Feb 2007, 14:22
BPL haben gleiches Format? Wird auch nicht gehen. Und DLL's nur wenn sie nicht mit "lebeneden" Delphi-Objekten im der Schnittstelle Arbeiten.

@runner: Wenn schon umstellen dann gleich nach Delphi 2006. Mit der 2005er-Version wirst Du nicht glücklich werden.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Delphi 7 dcu in D2005 benutzen

  Alt 19. Feb 2007, 14:45
Hallo,

oder gleich ne COM-Klasse in D7 basteln,
dann ist die Klasse auch aus der DLL nutzbar.


Heiko
Heiko
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Delphi 7 dcu in D2005 benutzen

  Alt 19. Feb 2007, 14:47
Zitat:
BPL haben gleiches Format?
Ja, da es erweiterte Dlls sind. Probleme könnten nur die Abhängigkeiten zu anderen Bibliotheken sein.
Zitat:
@runner: Wenn schon umstellen dann gleich nach Delphi 2006. Mit der 2005er-Version wirst Du nicht glücklich werden.
Volle Zustimmung, besorge dir TD (D10 wie auch BDS2006) das ist auch kostenlos und um Längen besser als Delphi 2005.
Markus Kinzler
  Mit Zitat antworten Zitat
19. Feb 2007, 15:00
Dieses Thema wurde von "r_kerber" von "Programmieren allgemein" nach "Object-Pascal / Delphi-Language" verschoben.
Ist ein Delphi-Thema.
runner

Registriert seit: 13. Jan 2006
36 Beiträge
 
#7

Re: Delphi 7 dcu in D2005 benutzen

  Alt 19. Feb 2007, 15:21
@Bernhard Geyer: Bei einer Kapselung in eine DLL dürfte das auch keine Rolle spielen.

COM Klasse hört sich interessant an. Hat jemand eine Idee wie das genau aussehen müsste?
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#8

Re: Delphi 7 dcu in D2005 benutzen

  Alt 19. Feb 2007, 15:23
Zitat von runner:
@Bernhard Geyer: Bei einer Kapselung in eine DLL dürfte das auch keine Rolle spielen.
Wenn es eine C-Kompatible DLL-Schnittstelle ist: Ja.
Aber es gibt genügend Entwickler die lebende Objekte zwischen Exe und DLL austauschen und auch trotzt der vielen Hürden zum laufen bekommen wenn exe und dll mit der gleichen Delphi-Version kompiliert werden.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
I.A

Registriert seit: 14. Jan 2007
83 Beiträge
 
#9

Re: Delphi 7 dcu in D2005 benutzen

  Alt 20. Feb 2007, 13:12
Hallo!

Da muss ich mich geleich mal reinhängen.

Zitat von Bernhard Geyer:
BPL haben gleiches Format? Wird auch nicht gehen. Und DLL's nur wenn sie nicht mit "lebeneden" Delphi-Objekten im der Schnittstelle Arbeiten.
Ich beschäftige mich nämlich grad mit Debuggern. Hab neben Delphi auch Lazarus. Nur lassen sich deren Units nicht 1:1 nach Delphi portieren (anderer Pascal Dialekt). Da wollte ich eine Debuggerschnittstelle bauen und die passende DLL mit Lazarus übersetzen. Heißt das das in der Dll keine Objekte vorkommen dürfen?
Was mache ich, wenn die entscheidenden Debuggercodes in Klassen definiert sind und ich den Code per DLL für Delphi bereitstellen will?

Mein Vater verwendet Mathcad. Dort kann er auch neue Funktionen definieren indem er Dll-s mit dem Code einbindet. Es gibt da aber nur Beispiele in C. Da gibt es in der DLL eine Funktion WINMAIN. Wie sorge ich in Delphi (bzw. Object Pascal) dafür, das die erzeugte Dll binärkompatibel ist. Mach ich das, indem ich unten "Begin End" schreibe? So hier:

Delphi-Quellcode:
library Mydll;

uses
 //benötigte Units

procedure DoSomething; cdecl;
begin
end;

procedure DoSomethingElse; cdecl;
begin
end;

// ... weitere Routinen

exports
DoSomething,
DoSomethingElse;

begin //Entspricht das hier der Funktion WinMain der in C geschriebenen DLL???
end.
-oder kommt es nur auf die Anweisung cdecl an?
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#10

Re: Delphi 7 dcu in D2005 benutzen

  Alt 20. Feb 2007, 13:44
es geht nur darum das keine Delphieigenheiten (AnsiStrings, Objecte) zwischen DLL und Exe ausgetauscht werden.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  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 18:24 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz