![]() |
PropertySheet in Anwendung
Hallo,
ich habe ein PropertySheet als dll welche ich eigentlich zur Verwendung als Display Specifier im Active Directory verwende! Nun möchte ich dieses Sheet in eine Anwendung reinbekommen als Formular in ein TabSheet. Ist das irgendwie möglich und wie? Gruss |
Re: PropertySheet in Anwendung
Sheet als Parent eintragen
|
Re: PropertySheet in Anwendung
muss ich da in der PropertySheet-dll was verändern?
könntest du es vielleicht ein bisschen genauer erklären? das wäre echt super! |
Re: PropertySheet in Anwendung
Ist die Dll in Delphi geschrieben?
Füge im Interface der Dll doch die Möglichkeit der Parented-Erzeugung ein. |
Re: PropertySheet in Anwendung
ja die dll ist in delphi geschrieben!
aber ich will an der dll nix ändern und das ganze als COM Object in meiner Anwendung verwenden? Also das PropertySheet ist registriert und ich will nicht die dll verwenden sondern über COM Interface gehen! Ist das möglich? |
Re: PropertySheet in Anwendung
Wenn die Dll einen ActiveX-Server und ein ActiveX-Objekt implemnetiert, kannst du diese ja wieder in Delphi importieren und verwenden. Einfacher wäre aber der Weg mit der Erweiterung des Interfaces.
|
Re: PropertySheet in Anwendung
und was mach ich dann wenn ich das importiert habe?
|
Re: PropertySheet in Anwendung
Die Komponente auf das Sheet ziehen
|
Re: PropertySheet in Anwendung
ich wäre jetz so vorgegangen:
in meiner anwendung habe ich so ein interface:
Delphi-Quellcode:
Die Funktion "propdlgproc" möchte ich aus dem COM Objekt aufrufen! Sieht so aus:
type
IPSheetTest = interface(IUnknown) ['{E6292C5D-5FBB-4BF8-911F-CC61132982DD}'] function QueryInterface(const IID: TGUID; out Obj): Integer; stdcall; function _AddRef: Integer; stdcall; function _Release: Integer; stdcall; function propdlgproc(hDlg: HWND; uMsg: UINT; wp: WPARAM; lp: LPARAM): boolean; stdcall; end;
Delphi-Quellcode:
Nur hauts ihn leider bei "LSheet.propdlgproc" auf die Schnauze. Weiß jemand woran das liegen könnte? Geht das überhaupt mit der Funktion propdlgproc einfach hinzufügen?
procedure TForm3.FormCreate(Sender: TObject);
var LSheet: IPSheetTest; tmpPropSheet : PROPSHEETPAGE; LDAPUrl: String; begin LDAPUrl := 'ldap://blablabla'; tmpPropSheet.lParam := Integer(LDAPUrl); tmpPropSheet.hInstance := TabSheet1.Handle; LSheet := IPSheetTest(CreateComObject(IPSheetTest)); LSheet.propdlgproc(self.Handle,WM_INITDIALOG, 0, Integer(@tmpPropSheet)) end; |
Re: PropertySheet in Anwendung
There's a sample in the PSDK (PropSheetHost) that might help. I started a conversion of the sample to Delphi (
![]() Are you trying to show a standard Active Directory property page or your own added property page? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:57 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