Inquiridor
Criar instância de uma dll no Framework 4.0 apartir de um aplicação que utilize framework 2.0

Pergunta
-
Boa noite,
Gostaria de saber com faço para criar a instância de uma classe que está no framework 4.0 apartir de um aplicação que utiliza o framework 2.0
Fiz a seguinte tentativa
Utilizei o recurso "CreateObject", com isso a instância foi criada porem tenho uma função que retorna "Generic", ao realizar a chamada para esta função é retornado o seguinte erro:
Não é possível converter o objeto COM do tipo 'System.__ComObject' no tipo de classe 'System.Collections.Generic.List`1[IServicoCatalogoCalculo]'. Instâncias dos tipos que representam componentes COM não podem ser convertidas em tipos que não representam componentes COM. No entanto, elas podem ser convertidas em interfaces, desde que o componente COM subjacente ofereça suporte a chamadas de QueryInterface para o IID da interface.
Gostaria de saber se existe outra forma?
- Editado JRCGYN quinta-feira, 11 de outubro de 2012 12:13
Todas as Respostas
-
Amigo, o velho CreatObject é um comando de instânciação do VB, porém não entendi seu cenário completamente. você tem uma aplicação que herda de ServicedComponent (COM+) em framework 2.0 e migrou ela para 4.0 porém a mesma está dando problema ?
Olavo Oliveira Neto
http://olavooneto.wordpress.com
Twitter @Olavooneto
Facebook Olavo Neto
Linkedin Olavo Neto
Se for útil marque como resposta e faça um Developer feliz :) -
Olavo boa tarde,
Eu tenho uma aplicação que utiliza o framework 2.0 porem preciso instanciar uma classe que foi compilada no framework 4.0.
Através do "CreateObject" é possível criar a instância, porem a instância de objetos "COM_OBJECT" não suporta "Generic", só trabalha com tipos primitivos(Integer, String..).
Gostaria de saber se é possível criar a instância de uma classe que foi compilada no framework 4.0 em uma aplicação que utiliza framework 2.0 de outra forma?
-
Amigo, o CreateObject é utlizando para instanciação de objetos COM+. ou classes .net que herdem ServicedComponent.
Se não for o caso, não irá funcionar, você poderá instanciar o mesmo através da referência dele ao projeto
importando ele a sua classe
Imports System.Text Imports System.DirectoryServices Public Class _Default Inherits System.Web.UI.Page
e instanciando ele com o AS NEW
Dim obGpEntry As New DirectoryEntry(ob)
Olavo Oliveira Neto
http://olavooneto.wordpress.com
Twitter @Olavooneto
Facebook Olavo Neto
Linkedin Olavo Neto
Se for útil marque como resposta e faça um Developer feliz :) -
Amigo, a minha resposta resolveu sua questão ?
Obrigado
Olavo Oliveira Neto
http://olavooneto.wordpress.com
Twitter @Olavooneto
Facebook Olavo Neto
Linkedin Olavo Neto
Se for útil marque como resposta e faça um Developer feliz :) -
Olavo,
acho que não resolveu o problema dele...
Pelo que entendi, ele tem uma aplicação funcionando com o .Net 2 e ele quer instanciar uma classe feita no 4.0 SEM mudar o framework da aplicação.
JRCGYN, acredito que não seja possível isso, já que a dll compilada no .net4 necessita do framework 4.0.
Você não pode migrar sua aplicação para o framework 4?
A resposta foi útil? Marque-a para que outros possam utiliza-la também!