marlonwg Posted January 17, 2017 at 10:25 PM Report #602062 Posted January 17, 2017 at 10:25 PM Fala galera boas estou com um probleminha aqui na minha aplicação..... O problema eo seguinte estou a fazer uma conexao aki no sistema mas no meu pc passa de boa aonde ta o visual studio porque to importando as dlls e tudo mais o codigo e assim... Imports ADODB 'Microsoft ADO ext 6.0 for DLL and Security DLL Imports JRO Imports system.Oledb Dim CONN As ADODB.Connection CONN = New ADODB.Connection() CONN.Open("Provider=Microsoft.ACE.OLEDB.12.0; Data source=C:\Teste\Banco.accdb; OLE DB Services =-1") Try repReplica.ActiveConnection = CONN Catch ex As Exception End Try Então no meu pc este codigo le de boa so que quando instalo em outro pc o programa quando vai abrir ai banco de dados aparece este erro.. Descrição do erro: Não é possível converter o objeto COM do tipo 'System.__ComObject' na interface tipo 'ADODB.Connection'. Esta operação falhou porque a chamada de QueryInterface no componente COM para a interface com IID '{00001550-0000-0010-8000-00AA006D2EA4}' falhou devido ao seguinte erro: Não há suporte para esta interface (Exceção de HRESULT: 0x80004002 (E_NOINTERFACE)). Ai tentei importar no outro pc a dll , Tentei instalar o MDAC 2.8 Sp1 que li nuns forums que resolvia... Tentei varios Procedimentos sem sucesso ate agora... Se alguem ja passou por isso e tiver uma soluçao agradeceria se pudesse ajudar 😄 O windows meu e 7 sp1 64bits... E funciona 100% na maquina q ta o Visual studio instalado A tanbem tentei fazer o seguinte usar um OLEDB mas parece que ele nao e compativel com ActiveConnectionTentei desta Forma e da erro. Dim Conexao As OleDb.OleDbConnection Conexao = New OleDb.OleDbConnection Conexao.ConnectionString = ("Provider=Microsoft.ACE.OLEDB.12.0; C:\Teste\Banco.accdb; OLE DB Services =-1") Conexao.Open() Try repReplica.ActiveConnection = Conexao Catch ex As Exception End Try Porque se conseguir neste segundo metodo ai nao precizaria usar o ADODB Eu mesmo
marlonwg Posted January 17, 2017 at 10:26 PM Author Report #602063 Posted January 17, 2017 at 10:26 PM Fala galera boas estou com um probleminha aqui na minha aplicação..... O problema eo seguinte estou a fazer uma conexao aki no sistema mas no meu pc passa de boa aonde ta o visual studio porque to importando as dlls e tudo mais o codigo e assim... Imports ADODB 'Microsoft ADO ext 6.0 for DLL and Security DLL Imports JRO Imports system.Oledb Dim CONN As ADODB.Connection CONN = New ADODB.Connection() CONN.Open("Provider=Microsoft.ACE.OLEDB.12.0; Data source=C:\Teste\Banco.accdb; OLE DB Services =-1") Try repReplica.ActiveConnection = CONN Catch ex As Exception End Try Então no meu pc este codigo le de boa so que quando instalo em outro pc o programa quando vai abrir ai banco de dados aparece este erro.. Descrição do erro: Não é possível converter o objeto COM do tipo 'System.__ComObject' na interface tipo 'ADODB.Connection'. Esta operação falhou porque a chamada de QueryInterface no componente COM para a interface com IID '{00001550-0000-0010-8000-00AA006D2EA4}' falhou devido ao seguinte erro: Não há suporte para esta interface (Exceção de HRESULT: 0x80004002 (E_NOINTERFACE)). Ai tentei importar no outro pc a dll , Tentei instalar o MDAC 2.8 Sp1 que li nuns forums que resolvia... Tentei varios Procedimentos sem sucesso ate agora... Se alguem ja passou por isso e tiver uma soluçao agradeceria se pudesse ajudar 😄 O windows meu e 7 sp1 64bits... E funciona 100% na maquina q ta o Visual studio instalado A tanbem tentei fazer o seguinte usar um OLEDB mas parece que ele nao e compativel com ActiveConnection Tentei desta Forma e da erro. Dim Conexao As OleDb.OleDbConnection Conexao = New OleDb.OleDbConnection Conexao.ConnectionString = ("Provider=Microsoft.ACE.OLEDB.12.0; C:\Teste\Banco.accdb; OLE DB Services =-1") Conexao.Open() Try repReplica.ActiveConnection = Conexao Catch ex As Exception End Try Porque se conseguir neste segundo metodo ai nao precizaria usar o ADODB Eu mesmo
M6 Posted January 19, 2017 at 10:42 AM Report #602080 Posted January 19, 2017 at 10:42 AM Isso parece-me ser um caso de falta de bibliotecas. Deves ter alguma DLL (ou semelhante) que está em falta. Tens de ver as dependências do teu projeto e garantir que levas tudo o que necessitas ou, caso não possas levar com a aplicação, instalar o que necessitas no PC de destino. 10 REM Generation 48K! 20 INPUT "URL:", A$ 30 IF A$(1 TO 4) = "HTTP" THEN PRINT "400 Bad Request": GOTO 50 40 PRINT "404 Not Found" 50 PRINT "./M6 @ Portugal a Programar."
marlonwg Posted January 19, 2017 at 03:22 PM Author Report #602088 Posted January 19, 2017 at 03:22 PM (edited) Então as DLLS necessárias estou importando na Referencias de DLLS a ADODB, eo JRO que o nome vem interop.ADODB.DLL Ja tentei varias alternativas tentei registrar no windows,Tentei deixar elas na mesma pasta do Executável, engraçado se instalo o Vb.net no pc dai roda de boas mas se nao tem o vb.net instalado da este erro ai e não to entendendo porque o teimoso não vai...😕 ??? Falaram para usar o Local Copy vi em alguns forums, Mas esta opção no meu não aparece sempre e FALSE , que indica se a referencia sera copiada para o diretório de saída. ....Ate se tivesse uma maneira de usar uma conexão do JRO.ReplicaActiveConnection para OLEDB do tipo system.data.oledb eu faria mas como viu a conexão la em cima ele não reconhece da um erro tanbem. Edited January 19, 2017 at 03:23 PM by marlonwg Eu mesmo
marlonwg Posted January 19, 2017 at 05:30 PM Author Report #602090 Posted January 19, 2017 at 05:30 PM Opa parece que resolvi aqui ja... rsrs para quem tiver duvidas quanto a isto entre na opção Referencias do seu Projeto e importe a DLL . MICROSOFT ACTIVEX DATA OBJECTS 2.7 LIBRARY. Eu mesmo
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now