Announcement

Collapse
No announcement yet.

Brauche Hilfe...

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

  • Brauche Hilfe...

    Ich möchte von einer ASP Seite mit JavaScript auf ein COM Objekt zugreifen. Es soll eine Zahl an das COM Objekt übergeben werden. Das COM Objekt soll mit dieser Zahl Rechnen, und das Ergebnis zurückgeben. (In Process Server??)
    Kann mir jemand ein solches COM-Objekt mit einer einfachen Rechenfunktion in Delphi (4 oder 5) schreiben?
    Weiß jemand auch noch, wie ich mit JAva Script auf das COM Objekt zugreifen kann??

    Für Hilfe wäre ich echt dankbar!
    Thomas Schroeder
    [email protected]

  • #2
    Hallo,

    welche Delphi-Version steht zur Verfügung? In der Enterprise-Version ist ein Experte vorhanden, der ASP-Objekte sowie das Grundgerüst der ASP-Seite anlegen kann.

    Welche Windows-Version wird verwendet (NT oder 2000)? Für Windows 2000 habe ich ein Beispiel für ein ASP-Objekt "am Lager", das auch mit Delphi 5 Professional compiliert werden kann

    Comment


    • #3
      Ich benutze Delphi 5 Enterprise, aber Delphi 4 ist auch verfügbar. Außerdem benutze ich WinNT Service Pack

      Comment


      • #4
        Für Jedes (Simpel!) InProcessBeispielprojekt wäre ich dankbar.
        Bitte Per Mail an [email protected]

        Dank

        Comment


        • #5
          Hallo,

          wenn Delphi 5 Enterprise zur Verfügung steht, ist die Sache ganz einfach: <br>
          1. Neue Activex-Bibliothek anlegen und speichern <br>
          2. Neues Active-Server-Object anlegen und speichern <br>
          3. Im Typbibliothekseditor die Methode <b>calculate</b> einrichten <br>
          4. COM-Objekt (ASP-Objekt) compilieren (Zielverzeichnis = Scripts-Verzeichnis des IIS) <br>
          5. COM-Objekt registrieren <br>
          6. Die vom Delphi-Wizard generierte ASP-Datei erweitern

          Das folgende Beispiel einer ASP-Seite verwendet zwar VBScript, allerdings sollte sich die Syntax auf JScript umstellen lassen:
          <pre>
          < HTML>
          < BODY>
          < TITLE> Test von Delphi ASP </TITLE>
          < CENTER>
          < H3> Sie sollten das Ergebnis Ihrer Delphi Active Server-Methode unten sehen</H3>
          < /CENTER>
          < HR>
          < % Dim iInput
          Dim iOutput

          Set DelphiASPObj = Server.CreateObject("ASPDemo.ASPDemoObj")
          iInput = 10
          iOutput = DelphiASPObj.Calculate(iInput)
          Response.Write "Der übergebene Wert beträgt "
          Response.Write iInput
          Response.Write "< br>"
          Response.Write "Der erhaltene Wert beträgt "
          Response.Write iOutput
          % >
          < HR>
          < /BODY>
          < /HTML>
          </pre>
          Das COM-Objekt für die ASP sieht in der Implementierung so aus:
          <pre>
          unit ASPDemo_Impl;

          interface

          uses
          ComObj, ActiveX, AspTlb, ASPDemo_TLB, StdVcl;

          type
          TASPDemoObj = class(TASPObject, IASPDemoObj)
          protected
          procedure OnEndPage; safecall;
          procedure OnStartPage(const AScriptingContext: IUnknown); safecall;
          function Calculate(iInput: Integer): Integer; safecall;
          end;

          implementation

          uses ComServ;

          procedure TASPDemoObj.OnEndPage;
          begin
          inherited OnEndPage;
          end;

          procedure TASPDemoObj.OnStartPage(const AScriptingContext: IUnknown);
          begin
          inherited OnStartPage(AScriptingContext);
          end;

          function TASPDemoObj.Calculate(iInput: Integer): Integer;
          begin
          Result := iInput + 1;
          end;

          initialization
          TAutoObjectFactory.Create(ComServer, TASPDemoObj, Class_ASPDemoObj,
          ciMultiInstance, tmApartment);
          end.
          </pre>
          P.S: Das vollständige Beispielprojekt werden ich im Download-Bereich des Delphi-FORUMS ablegen

          Comment


          • #6
            Danke für die gute und schnelle Hilfe!
            "Was fehlt?" hat sich damit auch erledigt.

            Dank

            Comment

            Working...
            X