Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Einbinden eines Unter Visual Basic 6.0 erstellten OCXs (https://www.delphipraxis.net/88339-einbinden-eines-unter-visual-basic-6-0-erstellten-ocxs.html)

Stefan Paproth 14. Mär 2007 10:03


Einbinden eines Unter Visual Basic 6.0 erstellten OCXs
 
Hallo Forum,

folgendes Problem: Ich möchte gern ein unter Visual Basic 6.0 erstelltes und kompiliertes OCX in ein Delphi-Projekt einbinden.

Zunächst wähle ich unter
Component -> import ActiveX-Control aus. In dem darauf folgendem Dialogfeld in der oberen Liste wähle ich dann mein OCX aus und klicke anschließend auf Install. danach wird das Paket auch ohne Fehler kompiliert.

Nun müßte es ja eigentlich in der Toolbar unter ActiveX angezeigt werden ( was bei mir leider nicht der Fall ist!)

Wer weiß, wo da der Hund begraben liegt?


Zumindest habe ich es hinbekommen, per Quelltext auf die einzelnen Mehtoden zuzugreifen. Jedoch stürtzt hier das Programm mit ein Speicherzugriffsverletzung ab. Wer weiß Rat?

Vielen Dank im voraus für die Bemühungen,

Stefan

Kohbach 16. Nov 2007 11:22

Re: Einbinden eines Unter Visual Basic 6.0 erstellten OCXs
 
Hallo Stefan,

ich habe das gleiche Problem. Ich möchte ebenfalls VB-OCX-Komponenten unter Delphi verwenden.

Hast du für dein Problem inzwischen eine Lösung gefunden?



Viele Grüße
Tino

Bernhard Geyer 16. Nov 2007 13:13

Re: Einbinden eines Unter Visual Basic 6.0 erstellten OCXs
 
Wenn ihr Pech habt wirst du einfach keinen Eintrag in der Toolpalette haben weil unter VB einfach die falschen Schalter bezüglich "veröffentlichung" gesetzt sind. Und funktionieren kann es u.U. auch nicht weil es mit Delphi inkompatiblen Schalter gibt. Du kannst mal probieren ob du es zum laufen bekommst wenn du es per TWebbrowser und passender HTML-Seite einbindest.

Kohbach 16. Nov 2007 13:52

Re: Einbinden eines Unter Visual Basic 6.0 erstellten OCXs
 
Hallo Bernhard,
kennst du die Schalter bezüglich "Veröffentlichung" in VB, die für dieses Fehlverhalten verantwortlich sind? Da die Komponente von mir selber programmiert ist, könnte ich das ja unter Umständen beeinflussen...

Was meinst Du mit inkompatible Schalter?

Tino

AliDi 16. Nov 2007 14:12

Re: Einbinden eines Unter Visual Basic 6.0 erstellten OCXs
 
Hallo Tino,

Es handelt sich hier um das CanCreate Flag. Sowiet ich weiß, kannst Du das mit VB nicht direkt beeinflussen. Du kannst allerding bei Delphi in den Umgebungsoptionen im Tab Typebiliothek die Einstellung setzen, das dieses Flag ignoriert wird. Dann gehts meistens mit VB OCX.

Getestet mit Delphi6 Prof.


Gruß
Alidi

Kohbach 16. Nov 2007 14:14

Re: Einbinden eines Unter Visual Basic 6.0 erstellten OCXs
 
OK, das werde ich probieren.

Vielen Dank erst mal und ein schönes WE.

Tino

Bernhard Geyer 16. Nov 2007 20:11

Re: Einbinden eines Unter Visual Basic 6.0 erstellten OCXs
 
Zitat:

Zitat von Kohbach
kennst du die Schalter bezüglich "Veröffentlichung" in VB, die für dieses Fehlverhalten verantwortlich sind? Da die Komponente von mir selber programmiert ist, könnte ich das ja unter Umständen beeinflussen...

Was meinst Du mit inkompatible Schalter?

Das Problem ist schon 2-3 Jahre her und ich habe mir das nicht gemerkt (bzw. schon wieder vergessen). :-(
Evtl finde ich es ja am Montage im outlook-Archiv?

Kohbach 16. Nov 2007 20:23

Re: Einbinden eines Unter Visual Basic 6.0 erstellten OCXs
 
Hallo Bernhard,

der Hinweis von AliDi war goldrichtig! Ich habe in den Optionen wie beschrieben den Flag auf "CanCreate beim Importieren ignorieren" gesetzt und konnte nun tatsächlich das OCX importieren.

Damit ist mein Problem vorerst gelöst. Ich hoffe, dass dieser Thread auch anderen hilft, dieses Problem zu lösen.


Vielen Dank an alle!

Tino


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:17 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