![]() |
unit1 in 'unit1.pas' funzt nur sporadisch
hi
ich hab mir selbst n paar units gemacht, aber das sind pas-dateien daher gibts zwei lösungen: 1. unit in 'unit1.pas' 2. das in dpu umbenennen das zweite krieg ich nicht hin (zu blöd?) bleibt für mich das erste: folgendes mal funzt es ohne probleme, mal sagt er "'in' found, ',' or ';' expectet" (ausm gedächnis und gekürzt) was mach ich falsch? |
Re: unit1 in 'unit1.pas' funzt nur sporadisch
Moin glkbkk,
Zitat:
Ich hab' jetzt Dein Problem nicht wirklich verstanden. Vielleicht könntest Du das mal an einem konkreten Beispiel erläutern. BTW: Was ist eine DPU Datei? Falls Du DCU meinst: Das ist eine compilierte Unit (Delphi Compiled Unit), sprich, das was Du herausbekommst, wenn Du eine PAS compilierst. |
Re: unit1 in 'unit1.pas' funzt nur sporadisch
stimmt, dcu
mein problem, nochmal anders: man kann ja eine unit, die in einer pas datei ist einbinden mit unit1 in 'unit1.pas' die funzt bei mir aber nur manchmal, und manchmal kommt eine fehlermeldung "'in' found, ',' or ';' expected" |
Re: unit1 in 'unit1.pas' funzt nur sporadisch
Moin glkbkk,
dann wäre ein Beispiel für einen Uses Abschnitt der nicht funktioniert eventuell ganz hilfreich. |
Re: unit1 in 'unit1.pas' funzt nur sporadisch
Delphi-Quellcode:
hier der uses abschnitt
uses
unit1 in 'unit1.pas',//von d generiert unit2 in 'unit2.pas',//von d generiert mymathprocedures in 'mymathprocedures.pas';//selber dazugetan aber hilft der dir weiter??? |
Re: unit1 in 'unit1.pas' funzt nur sporadisch
Moin glkbkk,
ich konnte den Fehler reproduzieren. Dieser tritt auf, wenn Du versuchst die PAS-Datei für eine Unit in der uses Klausel einer Unit anzugeben. Dort ist das aber nicht erlaubt. Geh' mal auf uses, und drücke F1. Dann erhältst Du die Hilfeseite "The syntax of a uses clause". Wichtig wäre hier der letzte Absatz. |
Re: unit1 in 'unit1.pas' funzt nur sporadisch
Moin!
Ausserdem macht Delphi diese Einträge doch selber und ich würde auch nur Delphi diese Uses Einträge in der DRP Datei machen lassen. Du kannst dieses "xxx in '...'" sowieso nur im Projektfile angeben und in keiner normalen Unit. Und um einen solchen Eintrag in dem Projektfile zu erreichen gibt es die Projektverwaltung (Ansicht->Projektverwaltung). Wenn du die mal aufmachst, dann siehst du oben den "Hinzufügen" Button oder du machst einen Rechtsklick auf dein Projekt in dem Baum darunter und wählst "existierende Datei hinzufügen" und wählst die Unit ordentlich aus. MfG Muetze1 |
Re: unit1 in 'unit1.pas' funzt nur sporadisch
thx, aber mit diesem "unit hinzufügen" oder so komm ich nicht zurecht/funzt bei mir nicht richtig
kann ích mir denn aus ner "pas-unit" eine "dcu-unit" machen? |
Re: unit1 in 'unit1.pas' funzt nur sporadisch
Zitat:
Also: du musst einfach nur die uses klausel korrekt schreiben! |
Re: unit1 in 'unit1.pas' funzt nur sporadisch
also nochmal kurz und knapp:
Delphi-Quellcode:
uses
unit1 in 'unit1.pas', unit2 in 'unit2.pas', mymathprocedures; |
Re: unit1 in 'unit1.pas' funzt nur sporadisch
Zitat:
zum teufel nochmal!!! wenn ich das könnte, hätt ich doch das problem nicht!!! |
Re: unit1 in 'unit1.pas' funzt nur sporadisch
Nana! Nicht fluchen!
Um dcu-Dateien musst du dir im Grunde keine Gedanken machen. Wenn Delphi meckert, dass er dcu Dateien nicht gefunden hat, liegt es bei selbstgeschriebenen Units daran, dass er die .pas nicht gefunden hat in deinem Fall, weil die Uses-Clause nicht stimmt. Guck, was Himitsu geschrieben hat und lass das "in xyz.pas" beim deinen eigenen Units weg. |
Re: unit1 in 'unit1.pas' funzt nur sporadisch
so, ganz ruhig... :-D
ich zitiere jetzt nochmal Zitat:
was heist einbinden, was heisst kompilieren???????? muss ich jetzt jede unit bei delphi registrieren, oder was? |
Re: unit1 in 'unit1.pas' funzt nur sporadisch
Zitat:
F9 = Kompillieren. |
Re: unit1 in 'unit1.pas' funzt nur sporadisch
Moin Matze,
STRG-F9 => Compilieren F9 => Start ;-) @glkbkk: wenn Du eine Unit einbinden willst, kannst Du das mit SHIFT-F11 => Dem Projekt hinzufügen (Menü: Projekt\Dem Projekt hinzufügen) oder über den entsprechenden Button in der Toolbar machen (grünes +) Ausserdem kannst Du auch einfach die Unit an passender Stelle mit in die Uses Anweisung aufnehmen (manuell) Compilieren: Siehe oben ggf. auch Projekt erzeugen (siehe Menüpunkt Projekt) hierbei wird das erneute erstellen der DCU erzwungen, da Delphi ansonsten nur die PAS Dateien neu compiliert, die sich seit dem letzen Mal geändert haben, was aber auch durchaus mal falsch erkannt werden kann. |
Re: unit1 in 'unit1.pas' funzt nur sporadisch
danke, das war die antwort, ich dachte man kann keine units kompilieren...
da müssten doch eigentlich dll rauskommen :gruebel: :gruebel: naja, egal... :-D |
Re: unit1 in 'unit1.pas' funzt nur sporadisch
Moin glkbkk,
DCU ist die Abkürzung für Delphi Compiled Unit DLL steht für Dynamic Link Library Du kannst zwar mit Delphi auch DLLs erstellen, für die Du wiederum Units verwenden kannst, aber die beiden Dateitypen haben erst einmal nichts miteinander zu tun. |
Re: unit1 in 'unit1.pas' funzt nur sporadisch
nein, mein gedankengang war in etwa so:
eine unit ist eine art befehlsbibliothek, also auch eine "library" wenn die compilt müsste doch eine dll rauskommen... vielleicht sollte ich auch einfach ins bett gehen :-D :wink: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:20 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