USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Tempo Exedido
RDM.TECNOLOGIA
SÃO PAULO
SP - BRASIL
ENUNCIADA !
Postada em 27/12/2006 12:13 hs            
Pessoal eu tenho um aplicativo rodando em uma maquina Win98se em rede e esta funcionando legal, porem em 2 maquinas Win98se esta dando problema, tipo:
o programa esta rodando normalmente, o usuário faz o q tem q ser feito e blz, só que as vezes ele da 2 cliques no icone do sistema para acessa-lo e o sistema gera este erro:
RUN TIME ERROR '-2147467259 (80004005)'
[MICROSOFT][ODBC SQL SERVER DRIVER] TEMPO EXEDIDO
 
eu ja exclui e criei novamente a ODBC, ja tentei de tudo, dei uma verificada na rede pra ver se esta tudo bem etc....
será que pode ser o código fonte, será q minha conexão não esta correta, será q é melhor eu gerar um pacote de instalação, porque esta rodando somente o executável nas maquinas devido a alterações q estão sendo feitas no sistema, porém não creio q seja este o problema.
Pessoal segue abaixo o código com a conexão para vcs darem uma olhada pra ver se esta tudo certo e se tem algum tipo de conexão que seja mais rápida q esta q estou usando.
 
 
Private Sub Form_Load()
Dim StrSql As String
Set conn = CreateObject("ADODB.Connection")
Set rs_login = CreateObject("ADODB.Recordset")
conn.ConnectionString = "Producao"
conn.Open ConnectionString
StrSql = "SELECT * FROM usuario"
rs_login.Open StrSql, conn, adOpenKeyset, adLockOptimistic
Do While Not rs_login.EOF
   cbo_login.AddItem rs_login!nome
   rs_login.MoveNext
Loop

End Sub
   
kerplunk
Pontos: 2843 Pontos: 2843 Pontos: 2843
SÃO PAULO
SP - BRASIL
ENUNCIADA !
Postada em 27/12/2006 15:00 hs         
Putz...
Evite usar o createobject para criar objetos de referências comuns como ADO.
Adicione a referência ao Microsoft ActiveX Data Objects no seu projeto(se é que já não existe), e troque as linhas:

Set conn = CreateObject("ADODB.Connection")
Set rs_login = CreateObject("ADODB.Recordset")

por

Set conn = New ADODB.Connection
Set rs_login = new ADODB.Recordset

Não esqueça também de mudar o tipo de objeto na declaração das variáveis:

ao invés de
(public, dim, global) conn as Object
(public, dim, global) rs_login as Object

por

(public, dim, global) conn as ADODB.Connection
(public, dim, global) rs_login as ADODB.Recordset
   
Claudio EngeSys
PARANAGUA
PR - BRASIL
ENUNCIADA !
Postada em 27/12/2006 17:54 hs            
Olha, além da dica do kerplunk você poderia retirar as opções "adOpenKeyset, adLockOptimistic" na abertura do recordset já que pelo jeito a intenção é apenas popular um controle.
 
Não sei exatamente a razão dessa mensagem mas de vez em quando também tenho esse problema. Parece que é como se o SQL ficasse lento e num looping como esse teu (e vários meus tb) o processo retorne tempo excedido devido a espera dele próprio. Pô complicada essa minha resposta, mas acho que é isso que acontece. Pois em todas as vezes que recebi essa mensagem era em loopings de gravação. Por isso minha sugestão de retirar a opção de Lock para que o processo não trave por ele mesmo.
 
Um abraço,
 

Claudio Alves.
   
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página