Announcement

Collapse
No announcement yet.

Generator Programm

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Generator Programm

    Hallo Delphianer,

    ich versuche zur Zeit ein Programm zu schreiben der aus den Tabellen einer Datenbank sofort den gesamten Quellcode generiert. Wie ich kann ein Programm dazu bringen Delphi von außen so zu dirigieren, daß es Projekte, Formulare (units ist kein Problem) erzeugt und Sie geeignet zu Projekten zusammenfügt. Dabei geht es wirklich nur darum die Dateien überhaupt zu generieren. Was sie enthalten sollen, spielt zunächst keine.

    Serkan

  • #2
    Hallo nochmals,

    inzwischen bin ich etwas weiter gekommen und kann meine Frage genauer spezifizieren. Ich Erzeuge aus dem Generator Programm heraus eine Textdatei, wo die Informationen über das Formular enthalten sind. Nun steht da z.B. eine Textdatei "form1.dfm". Jetzt muss ich diese Datei in eine Binäre umwandeln, damit Delhi dies auch als Formular darstellen kann. Dazu stellt Delphi die Funktion ObjectTextToBinary oder die Funktion ObjectTextToRessource bereit. Diese Funktionen benutzen als Eingabe- und Ausgabewert Streams. Mein Problem besteht eingendlich im umgang mit Streams, die leider in vielen Büchern zu kurz kommen.Wie kann ich die Textdatei "form1.dfm" mit Hilfe der oben genannten Funktionen in eine Binärdatei umwandeln ?

    Dank

    Comment


    • #3
      <html>
      <head>
      <title>Untitled</title>
      </head>
      <!-- Generated by ConTEXT HTML exporter -->
      <body text="#000000" bgcolor="#D0D0D0">
      <pre>
      <code><font face="Courier New"><font color="#000000">Hi

      <font color="#000000"><b>procedure </b></font>Convert<font color="#000000">;
      <b>var
      </b></font>Source<font color="#000000">,</font>Dest<font color="#000000">: </font>TStream<font color="#000000">;
      <b>begin
      </b></font><font color="#008080"><i>// &ouml;ffne DFM File als text
      </i></font>Source <font color="#000000">:= </font>TFileStream<font color="#000000">.</font>Create<font color="#000000">(</font><font color="#0000FF">'Test1.dfm.txt'</font><font color="#000000">, </font>fmOpenRead <font color="#000000"><b>or </b></font>fmShareDenyNone<font color="#000000">);
      <b>try
      </b></font><font color="#008080"><i>// lege das bin&auml;re DFM File an
      </i></font>Dest <font color="#000000">:= </font>TFileStream<font color="#000000">.</font>Create<font color="#000000">(</font><font color="#0000FF">'Test1.dfm'</font><font color="#000000">, </font>fmCreate<font color="#000000">);
      <b>try
      </b></font><font color="#008080"><i>// convertiere
      </i></font>ObjectTextToBinary<font color="#000000">(</font>Source<font color="#000000">, </font>Dest<font color="#000000">);
      <b>finally
      </b></font>Dest<font color="#000000">.</font>Free<font color="#000000">;
      <b>end</b>;
      <b>finally
      </b></font>Source<font color="#000000">.</font>Free<font color="#000000">;
      <b>end</b>;
      <b>end</b>;

      </font>Gru<font color="#000000">&szlig; </font>Hagen

      </font>
      </code></pre>
      </body>
      </html&gt

      Comment


      • #4
        Danke Herr Reddmann,

        das bringt mich wieder etwas weiter. Ich habe die Prozedur geschrieben. Die Textdatei wurde auch in eine binäre konvertiert. Wenn ich das Formular mit Delphi aufrufe, kommt aber immer die Fehlermeldung "ungültiger Streamformat". Ich hatte diese Fehlermeldung auch dann, wenn ich Formulare die mit Delphi 4 erstellt wurden mit Delphi 6 öffnen wollte. Hat Delphi 6 vielleicht zusätzliche Einstellungen gespeichert. Aber normalerweise müsste doch Binärdatei gleich Binärdatei sein.

        Gruß Serka

        Comment


        • #5
          Hi

          In diesem Fall musst Du <b>ObjectTextToResource()</b> verwenden, hätte ich gleich so schreiben müssen, sorry. (man kann ja nicht alles im Kopf haben

          Gruß Hagen

          PS: Mit 31 Jahren schätze ich bin ich älter als Du, also das nächste mal reicht ein einfaches "Hagen". Herr Reddmann ist mir zu unpersönlich

          Comment


          • #6
            Hallo Hagen,

            ich hatte gestern bereits ObjektTextToResource() ausprobiert, aber versäumt es noch zu erwähnen. In diesem Fall bekomme ich zwar keine Fehlermeldung, ich kann die Datei aber nur im Textmodus öffnen. Die Option "als Formular anzeigen" ist ausgeblendet.

            ubrigens: Hagen finde ich persönlich auch besser, aber man weiss ja nicht wer einem gegenüber ist.

            Gruß Serka

            Comment

            Working...
            X