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

 

  Fórum

  Visual Basic .Net
Voltar
Autor Assunto:  Cancelar processamentos !!!
Galafura
não registrado
ENUNCIADA !
Postada em 27/07/2006 08:06 hs   
Bom dia
 
No VB6 usava a instrução - DoEvents() - para cancelar um processo em execução. Como posso fazer agora em VB.NET ?????
Obrigado.
   
Elieser Topassi
Pontos: 2843 Pontos: 2843
SÃO JOSÉ DO RIO PRETO
SP - BRASIL
Postada em 28/07/2006 18:27 hs            
Ola,
Em primeiro lugar, o DoEvents não cancela um processamento. Ele libera a Thread para processar a fila de eventos e depois retorna a execucao ao ponto onde estava.
Bem, o .Net é MultiThread, portanto não faz sentido pensar em liberar processamento para fila de eventos. O que tem que ser feito é colocar o codigo que vai levar tempo pra ser executado (gerar um relatorio, digitalizar uma imagem, baixar algo da internet, coisas do tipo) dento de uma nova Thread... assim seu aplicativo não vai precisar esperar até que esse codigo termine. No momento em que ele terminar, ele chama um evento de CallBack, assim sua aplicacao fica informada que o processamento terminou...


Elieser Carlos Topassi
Analista de Sistemas - Desenvolvedor VB/ASP/.Net

e-mail/msn:
elieser_topassi@yahoo.com.br
São José do Rio Preto,SP - Brasil
_____________________________________________________
Emoções "O caminho do tolo aos seus prórios olhos lhe parece reto, mas o sábio ouve conselhos" (Pv 12:15)

     
Galafura
não registrado
ENUNCIADA !
Postada em 31/07/2006 04:51 hs   
Bom dia e obrigado pela sua resposta ...
 
Mas penso que não resolveu o meu problema.
Tenho um programa em VB.NET que tem um ciclo em que lê um conteúdo de uma tabela e nesse ciclo executa vários instruções ... e coloquei um butão de comando nessa opçâo para permitir ao utilizador parar o processamento executado nesse ciclo, para lhe permitir 'desistir' a meio. Esse 'cancelamento' é feito atravez da instrução - DoEvents - no VB6, que depois executa as instruções desse butão de comando.
Eu queria saber como posso fazer isso em VB.NET.
EX...
-  Ciclo do processamento
...  
    RS_MST.MoveMin
    While RS_MST.EOF = False
        DoEvents
        If Fl_Cancelar = True Then
            Exit Sub
        End If
        Call M_Processamento_Curso(f_a_categ, RS_MST.Fields("mst_codigo"))
        If CDate(RS_MST.Fields("mst_dtcat")) > CDate(MaskEdBox1) Then
            GoTo ACateg_Imp_Mp_Prx
        End If
...
-  Instruções do Butão de comnado
Private Sub cancelar_Click()
    Fl_Cancelar = False
    Resp = Imp_Mensagem(98, 4 + 32, "Mensagem da Aplicação")
    If Resp = 6 Then
        Fl_Cancelar = True
    End If
End Sub
-
 
Obrigado.
   
caco
Pontos: 2843

SP - BRASIL
ENUNCIADA !
Postada em 01/08/2006 13:59 hs            
Realmente não é a instrução DoEvents que cancela o processamento, como o Elieser falou ele te dá a possibilidade de interagir com o Form e clicar num botão para cancelar enquanto o sistema está executando um loop, mas respondendo sua pergunta no VB.NET está localizada na classe Application.

Application.DoEvents

Messenger: vbdev@uol.com.br

   
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