He's mad, he's mad, he's madder then mad Jack McMad, winner of last years madman competition.
Verwijderd
Zover ik weet ondersteund VB6 en lager niet eens COM (laat staan COM+). VB ondersteund wel alle afgeleiden van IDispatch maar niet zozeer van IUnknown.
Dus gebruik je COM of COM+ want het lijkt me dat je COM+ net zo debugt als COM (zelf niet veel ervaring met COM+).
Dus gebruik je COM of COM+ want het lijkt me dat je COM+ net zo debugt als COM (zelf niet veel ervaring met COM+).
Verwijderd
VB5 en 6 supporten beide COM, COM+ heb ik nog niet zo heel veel mee gedaan maar aangezien com+ basicly de opvolger is van MTS welke al prima met VB6 werkte lijkt me jouw stelling well "bullshit"Zover ik weet ondersteund VB6 en lager niet eens COM
IUnknown staat aan de basis van *IEDER* COM component dus dat "VB IUnknown niet zo zeer support" is wederom well ermmz "bullshit" goed dat je' m niet kan implementeren vanuit VB heeft daar niets mee te maken, 't idee van VB is om de programmeur af te schermen van allerlei COM boilerplate code waar je 'n berg COM fundamental kennis voor nodig hebt.VB ondersteund wel alle afgeleiden van IDispatch maar niet zozeer van IUnknown.
Verwijderd
offtopic:
COM+ is iets heel anders dan COM.
COM is namelijk een techniek om platformonafhankelijk, binair uitwisselbare en herbruikbare stukken software (components) te maken, waarbij de nadruk ligt op Object Orientatie (vandaar COM: Common Object Model).
COM+ is een set services die door het Windows 2000 platform worden aangeboden, die NIETS veranderen aan de COM standaard zelf. Feitelijk is COM+ een soort halve applicatieserver, en inderdaad, zoals Yarvieh al zei, eigenlijk een vervanging met extra functionaliteit van Microsoft Transaction Server (MTS), en nu ook ingebouwd in het OS i.p.v. een los pakket.
In VB kan je vanaf versie 5 (of misschien zelfs al versie 4 met de laatste service pack) COM componenten ontwikkelen. Wat wel waar is dat je niet alle mogelijkheden van COM in VB kunt implementeren.
COM+ is iets heel anders dan COM.
COM is namelijk een techniek om platformonafhankelijk, binair uitwisselbare en herbruikbare stukken software (components) te maken, waarbij de nadruk ligt op Object Orientatie (vandaar COM: Common Object Model).
COM+ is een set services die door het Windows 2000 platform worden aangeboden, die NIETS veranderen aan de COM standaard zelf. Feitelijk is COM+ een soort halve applicatieserver, en inderdaad, zoals Yarvieh al zei, eigenlijk een vervanging met extra functionaliteit van Microsoft Transaction Server (MTS), en nu ook ingebouwd in het OS i.p.v. een los pakket.
In VB kan je vanaf versie 5 (of misschien zelfs al versie 4 met de laatste service pack) COM componenten ontwikkelen. Wat wel waar is dat je niet alle mogelijkheden van COM in VB kunt implementeren.
Als je een COM component wil debuggen, moet je dat binnen de omgeving doen waarin het gebouwd is, want debuggen gaat alleen goed als je tijdens het uitvoeren van een code in een component ook werkelijk door de code kunt stappen, watches en breakpoints kan aanbrengen e.d.
Probeer dus te bepalen waar het probleem zit. Als er dus bugs in het VB component zitten, dan zal je de source erbij moeten halen en in VB je component gaan debuggen. Het beste gaat dat door een ProjectGroup aan te maken, met daarin een project voor het component en een project voor een testprogramma, waarmee je het component aan gaat roepen.
Dat gaat overigens niet lukken als het om een 'out-of-proces' COM component gaat (dus een .exe project). In dat geval moet je twee instanties van de VB ontwikkelomgeving draaien, 1 met je component en 1 met je testproject.
Als het probleem in het Delphi component zit zal je die omgeving moeten gebruiken om het component te debuggen voordat je het kunt gebruiken. Van debuggen in Delphi heb ik echter geen kaas gegeten, maar daar kunnen vast andere mensen je bij helpen.
Succes
Het probleem ligt 'm aan de Delphi code. Een call vanuit VB naar het delphi component levert een 'ongeldige pointer bewerking op'.
Binnen VB kun je een COM+ component debuggen op het moment dat er een call naar wordt gedaan. Bijv vanuit ASP. Ik kan de dll in VB laten draaien met een breekpunt op de gewenste plek. Als ik dan vanuit een asp pagina een call naar het component doe neemt VB de honneurs waar en kan ik runtime debuggen. Ditzelfde wil ik dus ook in Delphi bereiken. Ik heb al wat Borland zooi met twee adviezen: [optie]include remote debug symbols[/optie] en in opvoeren van de DLLhost.exe bij run/parameters/host application, maar het levert me geen debugbare situatie.
Binnen VB kun je een COM+ component debuggen op het moment dat er een call naar wordt gedaan. Bijv vanuit ASP. Ik kan de dll in VB laten draaien met een breekpunt op de gewenste plek. Als ik dan vanuit een asp pagina een call naar het component doe neemt VB de honneurs waar en kan ik runtime debuggen. Ditzelfde wil ik dus ook in Delphi bereiken. Ik heb al wat Borland zooi met twee adviezen: [optie]include remote debug symbols[/optie] en in opvoeren van de DLLhost.exe bij run/parameters/host application, maar het levert me geen debugbare situatie.
He's mad, he's mad, he's madder then mad Jack McMad, winner of last years madman competition.
offtopic:
Oude
uit de sloot
Oude
He's mad, he's mad, he's madder then mad Jack McMad, winner of last years madman competition.
Pagina: 1