Jag har använt mig av C# av och till under några år och har mycket att lära fortfarande. Bland annat hur man kan använda sig av en COM-komponent som är en del av en EXE-fil. Jag har med framgång skapat interopversioner av DLL-filer, men jag går helt bet på hur jag ska "attackera" detta uppdrag. Jag har en sådan EXE gjord i VB6 som jag använder från en annan VB6-applikation. Men nu testade jag att lägga till en COM-referens i VS2005 och den finns med i listan där också. Så det borde alltså bara vara att lägga till en referens. Har du kollat om den finns med i listan där? Refererar du EXE-filen direkt då? Jag har VS 2003 så kanske finns det en skillnad i hur COM-objekt visas? Samma i VS2003. Högerklicka på projektet i Solution Explorer, välj Add Reference, går till COM-fliken och där ska den finnas om den är ordentligt registrerad. Då är det något vajsing med registreringen. Tack för hjälpen i alla fall!Anropa COM (comserver) som är inbyggt i en EXE
Jag har installerat programvaran ifråga och använt ett antal reg-filer för att registrera tre stycken ProgID:n. Sedan har jag per instruktion kört programvaran med växeln /RegServer. Detta ska vara tillräckligt för att köra igång. Jag skulle vilja referera till COM-komponenterna men jag hittar ingenting att referera. Via ett par böcker och en del surfande har jag kommit till slutledningen att jag måste använda mig av late binding och har börjar tröska med Type.CreateFromProgID, Invoke med mera men jag har kör fast.
Efter denna långa inledning är min fråga helt enkelt om det finns något sätt att skapa en Interop och därmed få early binding när jag bara har en EXE-fil att tillgå? Och om late binding är enda lösningen, om någon har något kodexempel.
Tack på förhand,
BjörnSv: Anropa COM (comserver) som är inbyggt i en EXE
/JohanSv:Anropa COM (comserver) som är inbyggt i en EXE
/BjörnSv: Anropa COM (comserver) som är inbyggt i en EXE
/JohanSv:Anropa COM (comserver) som är inbyggt i en EXE
/Björn