AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Compiling-Fehler auf Resource in integr. Übersetzungsumgebun
Thema durchsuchen
Ansicht
Themen-Optionen

Compiling-Fehler auf Resource in integr. Übersetzungsumgebun

Ein Thema von oki · begonnen am 6. Mär 2003 · letzter Beitrag vom 31. Mär 2005
Antwort Antwort
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#1

Compiling-Fehler auf Resource in integr. Übersetzungsumgebun

  Alt 6. Mär 2003, 08:35
Hallo,

ich nutze zum ersten mal die ITE von Delphi 5 und das natürlich unter Zeitdruck. Nun habe ich folgendes Problem.

Nach dem Hinzufügen einer neuen Spache und nachfolgendem Compiling des Projektes sagt mir Delphi:

RC Fehler
kann Datei Programmname_DRC.res nicht finden


in der automatisch angelegten Projektdatei steht auch diese Datei, ist in dem automatisch angelegten Unterverzeichnis nicht zu finden.

Was ist da los?

Wenn mir jemand schnell helfen kann, währe toll.

Gruß oki
  Mit Zitat antworten Zitat
hacki

Registriert seit: 15. Nov 2002
96 Beiträge
 
Delphi XE5 Professional
 
#2
  Alt 3. Mai 2003, 18:58
Hallo oki,

leider kann ich dir nicht helfen. Ich interessiere mich aber für die integrierte übersetzungs umgebung (ITE). Wie nutze ich sie ? Gibt es vielleicht irgendwelche Dokumentation, falls ja wo finde ich sie.

Danke und Grüsse
Hacki
Es ist nicht gesagt, daß es besser wird, wenn es anders wird! Wenn es aber besser werden soll, muß es anders werden! ** There are 10 different types of people in this world; those who understand binary numbers and those who don’t !
  Mit Zitat antworten Zitat
Benutzerbild von APP
APP

Registriert seit: 24. Feb 2003
Ort: Graz (A)
705 Beiträge
 
Delphi 7 Enterprise
 
#3
  Alt 3. Mai 2003, 20:14
Hallo,

ich habe zu Hause leider nur D5 Pro ohne ITE, kann Dir aber sagen,
dass ich damit auch schon meine "Freude" hatte, ich hoffe,
Du hast Dein Projekt vor dem Hinzufügen der neuen Sprache gesichert?

Ich kann nur mal eine Ferndiagnose machen, aber hast Du nach dem
Hinzufügen auch im Translation Manager nachgesehen, ob Deine DFM und
Units mit den Ressourcen in der neuen Sprache angelegt sind?

Ich bin im Moment total blank, aber bei meinem D7 gibt es doch einen
Menüpunkt mit <ADD NEW LANGUAGE> oder so, und 2 Zeilen weiter unten
gibt es noch einen Menüpunkt zum ITE der mir nicht einfällt, aber
soweit ich mich erinnere, immer wenn ich einen z.B. Resourcenstring
einfügte, musste ich diesen Menüpunkt anwählen und danach konnte ich
mir <Build all> erst korrekt kompilieren.


Vielleicht hilft das?


p.s.
Mir ist auch noch aufgefallen, dass, wenn ich nachträglich den
BorderStyle umstellte und danach wieder zurückstellte, hatte ich größte
Probleme mit der korrekten Darstellung der Form.

p.p.s.
Soll nun kein Schauermärchen werden, ich finde den ITE grundsätzlich
O.K., aber man muß höllisch aufpassen, wenn man nachträglich etwas
ändert

p.p.p.s Sonst bitte warten auf Monatg, vielleicht finden wir da eine Lösung...
Armin P. Pressler

BEGIN
...real programmers are using C/C++ - smart developers Delphi;
END;
  Mit Zitat antworten Zitat
Benutzerbild von APP
APP

Registriert seit: 24. Feb 2003
Ort: Graz (A)
705 Beiträge
 
Delphi 7 Enterprise
 
#4
  Alt 4. Mai 2003, 11:47
Hallo Oki,
mir ist gerade noch etwas eingefallen:

Du schreibst leider nicht, ob Du vorher schon
eine andere Sprache "aktiviert" hast oder nicht,
wenn nein, und, falls Du Dein Projekt in verschiedene
Verzeichnisse (\bin, \dcu, \source...) verteilt hast,
habe ich möglicherweise eine Lösung für Dich:

Ich postete hier einmal Translation Manager und Verzeichnisse eines Projektes ein Problem, vielleicht ist das bei Dir genauso?
Armin P. Pressler

BEGIN
...real programmers are using C/C++ - smart developers Delphi;
END;
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#5
  Alt 5. Mai 2003, 07:16
Hi Leute.

Danke für die Anteilnahme. Ich habe in der Zwischenzeit mein Problem gelöst. Die Ursache war folgende.

Nach Auswahl der neuen Sprachen muß der Menüpunkt Resourcen-DLL erstellen angewählt werden, damit die entsprechenden Formulare und Resourcen-Dateien für die neuen Sprachen durch die ITE erstellt werden. Nun war es bei mir so, dass die ITE Probleme mit meinem Datenmodul hatte. Das hat zum Abbruch des Erstellungungsvorganges geführt. Offensichtlich ist die eigentliche Resourcen-Datei in der Reihenfolge der Erstellung erst nach den DFM-Dateien dran. Beim compilieren ist dann die ausländische res-Datei natürlich nicht vorhanden gewesen. Ich habe mein Datenmodul ausgetauscht, danach hat alles super geklappt. (Datensicherung ist doch was tolles).

Wenn noch jemand Fragen hat, so'n bischen kenn ich mich nun mit der ITE aus.

Gruß oki
  Mit Zitat antworten Zitat
Benutzerbild von APP
APP

Registriert seit: 24. Feb 2003
Ort: Graz (A)
705 Beiträge
 
Delphi 7 Enterprise
 
#6
  Alt 5. Mai 2003, 07:36
Hallo oki,

es freut mich das nun alles klappt, was mich aber noch brennend
interessieren würde ist, ob Du deine Projektdateien in verschiedene
Verzeichnisse speicherst (\bin, \dcu, \source...), wenn ja, wie funkt
dann bei Dir der ITE?
Armin P. Pressler

BEGIN
...real programmers are using C/C++ - smart developers Delphi;
END;
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#7
  Alt 5. Mai 2003, 10:14
Hi App,

also ich speichere grundsätzlich folgendermaßen.

Ich lege mir ein eigenes Projektverzeichnis mit dem Namen meines Projektes an (C:\Programmierung\Delphi5\MeinProjekt). Dort speicher ich alle Dateiern meines Projektes ab (*.dfm, *.pas, *.dcu usw.). Die ITE bildes dann in meinem Projektverzeichnis ein Unterverzeichnis, z.B. esp für eine spanische Version. Dort liegen nach dem Erstellen der Übersetzung alle Formular-dfm in der entspechenden Sprachversion. In meinem Projekthauptverzeichnis wird die Datei Projektname.esp als kopierfähige Sprachresource abgelegt.
Habe ich einzelne Units die mein Projekt verwendet in anderen Pfaden abgelegt, so erstellt mir die ITE in meinem Projekt-Verzeichnis im Verzeichnis esp entprechende Unterverzeichnisse die dem Pfad dieser Dateien entsprechen. In diesen liegen dann die entsprechenden Resourcen.

ok, so siehts bei mir aus.

Gruß oki
  Mit Zitat antworten Zitat
Benutzerbild von APP
APP

Registriert seit: 24. Feb 2003
Ort: Graz (A)
705 Beiträge
 
Delphi 7 Enterprise
 
#8
  Alt 7. Mai 2003, 07:44
Hallo, oki

bin nun endlich zurück und habe noch einmal den TM mit Verzeichnissen ausprobiert:

Ich kam zum Schluß, dass der TM auch mit Verzeichnissen arbeitet.
Allerdings habe ich mir angewöhnt mit relativen Pfaden (..\BIN) zu arbeiten,
dabei motzt der TM, dass er den Pfad \BIN\MeinProg.EXE nicht findet, allerdings
kann man diese Meldung ignorieren, das habe ich am Anfang aber nicht gemacht...

Mit absoluten Pfaden geht alles klaglos.

----------------------------------------------------------------------------------------

@hacki

Kochrezept zur Benutzung des TM:

VORBEREITUNGEN:
In den Units vor IMPLEMENTATION die Resourcen (=Texte) definieren die man übersetzen möchte.
(in EINER Sprache, am Besten in der Ausgangssprache)

Delphi-Quellcode:
RESOURCESTRING
  RsTest = 'Sapperlot';
  RsErrorQueryBereich = 'Can not execute SQL: %s' + CRLF + '%s';
BENUTZUNG MIT FORMATSTRINGS:
z.B.
   E.Message := Format(RsErrorQueryBereich, [queryBereich.SQL.Text, E.Message]); EINSATZ DES TM (englische Version):
  • Projekt speichern
  • Menü: Projekt/Languages/Add
  • (Select ALL) <Next>
  • gewünschte Sprachen auswählen
  • 3x <Next>
  • 1x <Finish>
    -- Projekt wird compiliert --
    -- *.bpg Datei speichern --
  • TM Fenster öffnet sich
  • Reiter <Workspace> (ganz rechts)
  • Im Treeview gibt es Knoten für jede Sprache
    -> Forms: Formulareigenschaften und Texte für jede Sprache individuell anpassen
    -> Ressource Scripts: ResourceStrings die man vorher erstellt hat übersetzen

SPRACHUMSCHALTUNG IM CODE AKTIVIEREN:

Die Datei reinit in das Projektverzeichnis kopieren:
C:\Program Files\Borland\Delphi7\Demos\RichEdit\reinit.pas


Im Hauptprogramm folgendes einfügen:
Delphi-Quellcode:
USES
  ...
  reinit, // Länderanpassung
  ...

CONST
// ------------------ Länderanpassung ------------------
// Konstanten sind in der Windows.pas definiert.
  ENGLISH = (SUBLANG_ENGLISH_US SHL 10) OR LANG_ENGLISH;
  FRENCH = (SUBLANG_FRENCH SHL 10) OR LANG_FRENCH;
  GERMAN_A = (SUBLANG_GERMAN_AUSTRIAN SHL 10) OR LANG_GERMAN;
Ich habe die Sprachauswahl in eine INI-Datei verpackt:

Code:
[Translation]
Language=GERMAN_A
Codebeispiel zur Umschaltung zur Laufzeit:

Delphi-Quellcode:
     // Anpassen für mehrere/andere Sprachen!
      IF LoadNewResourceModule(IniFile.ReadInteger(SectionDatabase, KeyLanguage, GERMAN_A)) <> 0 THEN
        BEGIN
          ReinitializeForms;
        END;
ACHTUNG:
Projekt natürlich nur mehr über die *.bpg und nicht durch *.dpr Datei öffnen!

ACHTUNG:
Bei Änderungen in Forms/Code immer mit <Build ALL> kompilieren,
bei Bedarf auch im Menü: Projekt/Languages/Update Resource DLLs ausführen.

ACHTUNG:
Zur Laufzeit hartkodierte Texte ( z.B. Form1.Caption := 'SEPPL' ) werden natürlich überschrieben.
-> Abhilfe: Form1.Caption := 'SEPPL'; NACH dem Aufruf ReinitializeForms ausführen.


p.s. Ich hoffe ich habe nichts vergessen, wenn alles funkt könnte das ja einmal ein Beitrag für die Library werden.
Armin P. Pressler

BEGIN
...real programmers are using C/C++ - smart developers Delphi;
END;
  Mit Zitat antworten Zitat
Benutzerbild von APP
APP

Registriert seit: 24. Feb 2003
Ort: Graz (A)
705 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: Compiling-Fehler auf Resource in integr. Übersetzungsumg

  Alt 5. Mär 2004, 07:42
Nachtrag:

Ich habe mal eine Mini-Demo beigefügt, damit man nachvollziehen kann was ich oben beschrieben habe.

Anmerkung: In der Projektanzeige muß die Datei LangDemo.exe auf ACTIVE (rechte Maus) gesetzt sein.


p.s.
Ich bin KEIN Translation Manager Spezialist (daher auch mein Kochrezept),
und denke, man soll sich gut überlegen, ob man ein mühsam erstelltes Projekt
im Nachinein noch für den Translation Manager anpassen sollte, oder ob man
andere Alternative suchen sollte.

Manchmal gibt es nicht immer logisch nachvollziehbare Probleme mit dem TM, z.b. ist mir passiert, dass
nachdem ich die *.Exe und die *.DEU/*.ENG Dateien in ein anderes Verzeichnis kopierte, dass bei der
Umschaltung von einer auf die andere Sprache "Geisterfenster" erschienen, allerdings nur einmal
Angehängte Dateien
Dateityp: zip lang_demo.zip (301,8 KB, 94x aufgerufen)
Armin P. Pressler

BEGIN
...real programmers are using C/C++ - smart developers Delphi;
END;
  Mit Zitat antworten Zitat
SteffenSchm

Registriert seit: 2. Nov 2004
Ort: Herzogenaurach
84 Beiträge
 
Delphi 10.3 Rio
 
#10

Re: Compiling-Fehler auf Resource in integr. Übersetzungsumg

  Alt 31. Mär 2005, 08:09
Obwohl das Thema jetzt schon ein Jahr alt ist, möchte ich die Diskussion hier doch noch einmal aufnehmen, weil ich ein ähnliches, etwas weiter führendes Problem habe:

Ich habe für mein Projekt deutsche und englische Ressourcen-dlls erstellt (zwar nicht mit dem TM, da der in meiner Delphi-Version nicht enthalten ist, aber ich glaube das ändert am Prinzip nichts). Das Programm kann mit einem Parameter aufgerufen werden, um auf deutsche oder englische Sprache der Oberfläche umzuschalten. Das Umschalten auf die gewünschte Sprache erfolgt (wie von APP beschrieben) durch LoadNewResourceModule und ReinitializeForms;.

Auf den ersten Blick scheint alles zu klappen. Als ich aber vom Programm mal eine Fehlermeldung erhielt (z.B. Gleitkommadivision durch Null) war diese auch bei englischer Programmoberfläche in deutsch obwohl ich zumindest die nach meiner Meinung wichtigen Strings (u.a. auch den oben erwähnten) übersetzt hatte.

Um das nachzuvollziehen habe ich das LangDemo von APP mal erweitert - mit dem gleichen Effekt, dass die Fehlermeldung beim Umschalten der Sprachen über LoadNewResourceModule und ReinitializeForms; nicht mit übersetzt wird.

Setze ich die Sprache aber entweder über die Systemsteuerung oder über die Registry (../Borland/Locales) dann wird auch die Fehlermeldung korrekt übersetzt.

Gibt es dafür eine Erklärung/Lösung ?
Angehängte Dateien
Dateityp: zip lang_demo2_145.zip (527,0 KB, 47x aufgerufen)
Steffen
  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 22:02 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