Visual Basic - Bajar prioridad de interrupciones de un proceso.

Life is soft - evento anual de software empresarial
 
Vista:

Bajar prioridad de interrupciones de un proceso.

Publicado por White_Rabitt (41 intervenciones) el 11/07/2005 19:46:21
Tengo un programa que descarga varias páginas web (¡¡ 15 en total !!) de forma no bloqueante, es decir: mediante interrupción. Lo que utilizo para ello es el control Inet con el método execute. El caso es que al descargar tantas páginas se producen un montón de eventos y el programa queda bloqueado unos segundos de manera que no puedo acceder a los menús. Ya tengo todo el programa lleno de DoEvents y esto ayuda a que vaya más fluído, pero lo que necesito ahora sería algo así como bajarle la prioridad a los eventos de descarga de la página web, de manera que cuando yo quiera acceder al menú de la pantalla el evento del ratón tenga prioridad sobre el de la interrupción del Inet.

Gracias (no se que haría yo sin este foro).
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 14
Ha aumentado 1 puesto en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

RE:Bajar prioridad de interrupciones de un proceso

Publicado por SuNcO (599 intervenciones) el 11/07/2005 23:37:17
Y si intentas bajarlo con Apis en lugar del control Inet ?

Me baje un archivo de 50k en 3 segundos :

Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long

Private Const ERROR_SUCCESS As Long = 0
Private Const BINDF_GETNEWESTVERSION As Long = &H10
Private Const INTERNET_FLAG_RELOAD As Long = &H80000000

Private Sub Command1_Click()
Dim sSourceUrl As String
Dim sLocalFile As String

' ---------- Cambia estas a tu gusto o que se tomen de un ListBox, etc...
sSourceUrl = "http://www.hotmail.com/archivo.jpg"
sLocalFile = "c:\prueba.jpg"

If DownloadFile(sSourceUrl, sLocalFile) Then
MsgBox "Archivo bajado"
End If
End Sub

Public Function DownloadFile(sSourceUrl As String, sLocalFile As String) As Boolean
DownloadFile = URLDownloadToFile(0&, sSourceUrl, sLocalFile, BINDF_GETNEWESTVERSION, 0&) = ERROR_SUCCESS
End Function

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Bajar prioridad de interrupciones de un proceso

Publicado por White_Rabitt (41 intervenciones) el 12/07/2005 12:53:59
Gracias sunco pero creo que no me vale hacerlo así ya que necesito descargar varias páginas a la vez y de forma no bloqueante. Además desconozco bastante cómo funcionan las apis.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar