Announcement

Collapse
No announcement yet.

DLL's in Install Shield Express 2.13 und 3.02

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

  • DLL's in Install Shield Express 2.13 und 3.02

    Hallo Alle,<br>
    ich möchte gerne wissen, wie man richtig DLL's in Delphi für ISX 2.13 und 3.02 schreibt. Ich habe z. B. so eine DLL für eine benutzerdefinierte Aktion in ISX 3.02 erstellt:<br>
    uses
    Classes,
    Windows;

    { function MsiGetProperty(hInstall : THandle;
    szName : PChar;
    szValueBuf : PChar;
    pchValueBuf : pointer) : longint; stdcall;
    external 'msi.dll'
    name 'MsiGetPropertyA';<br>

    function ActionNew(hInstall : THandle) : HResult; export; stdcall;<br>
    var Buffer : array[0..31] of char;<br>
    Count : integer;<br>
    begin<br>
    Count := SizeOf(Buffer);<br>
    MsiGetProperty(hInstall, PChar('INSTALLDIR'), Buffer, @Count);<br>
    Windows.MessageBox(0,PChar('Bestätigung'),PChar('S oftware wurde im '+Buffer+' installiert'),MB_OK);<br>
    Result := 1;<br>
    end;}<br>

    function ActionClassic(hwnd : HWND;<br>
    szSrcDir,szSupport,szInst,szDbase : PChar) : <br>HResult; export; stdcall;<br>
    begin<br>
    Windows.MessageBox(0,PChar('Bestätigung'),PChar('S oftware wurde im '+szInst+' installiert'),MB_OK);<br>
    Result := 1;<br>
    end;<br>

    exports<br>
    //ActionNew,<br>
    ActionClassic;<br>
    begin<br>
    end.<br>

    Nach den Einbinden von der DLL in ISX 3.02 bekomme ich einen Fehler:<br>
    ** fehler -3713: Der Funktionsblock in benutzerdefinierter Funktion 'CustomAction1' muss in folgender Form vorliegen: Modul::Funktion.<br>
    Was ist fasch?<br>
    Vielleicht gibt jemand ein Beispiel für die DLL-Definition.<br>
    Danke
Working...
X