07. januar 2005 - 17:11Der er
3 kommentarer og 1 løsning
Problem med at benytte COM vha MFC class wizard
Hej.
Jeg vil gerne bruge COM objekter i min C++ kode. I .Net 2003 er der en MFC class wizard som jeg benytter til at skabe en header til COM objektet Ms Commondialog 6.0 ud fra type library'et.
Derefter trode jeg at man så bare kunne behandle det som et normalt objekt. dvs:
Det compiler fint men der kommer bare ikke en Color dialog frem. Det nedenstående kode virker, men hvordan benytter man Class wizarden til at bruge COM objekter ? Jeg har også prøvet at skabe en reference til COM librayet men det hjalp ikke.
Er det ikke muligt at benytte COM objekter i C++ a la Visual Basic ?
Jo, du kan godt bruge COM objekter, og den version du bruger skulle der være rigtig god support i - i form af mange linier sparet kode. Du ved godt at der er MFC support for common dialogs, ikk?
Jo jeg ved godt at der er CommonDialog'er i MFC, det var nu mere for at have nogle COM objekter at "lege" med for at finde ud af hvordan .Net 2003 virker mht. COM at jeg brugte dem.:)
Mit problem består mere i hvordan man bruger .Net 2003 til at simplificere COM programmering. Jeg har ikke kunnet google mig frem til en tutorial eller et eksempel. Nogen ideer ?
Prøv at debugge koden og se hvilke kald der laves i vrapper-klassen du har genereret. "COM-funktioner" returnerer en HRESULT kode, der angiver hvilken fejl der evt. opstod, måske den kan bruges til at finde fejlen... Det er ikke sikkert at vrapperen sørger for CoInitialize-kaldet, har du prøvet at kalde den først (som i dit andet ex)?
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.