este es el codigo completo del programa( no definitivo)

al
13 de Mayo del 2004
bien enço aqui esta(a ver si sacais soluciones..)
el módulo:
Public MII As menuiteminfo

Private Const WH_KEYBOARD_LL = 13
Private Const LLKHF_ALTDOWN = &H20
'PRUEBAS----------------------------------------'
Public Const HWND_TOPMOST = -1
Public Const SWP_NOMOVE = &H2
Public Const SWP_NOSIZE = &H1
Public Const VK_NEXT = &H22
Public Const xSC_CLOSE As Long = -10
Public Const SwapID As Long = 1
Public Const ResetID As Long = 2


Private Const SC_CLOSE As Long = &HF060&

'SetMenuItemInfo fMask constants.
Public Const MIIM_STATE As Long = &H1&
Public Const MIIM_ID As Long = &H2&

'SetMenuItemInfo fState constants.
Public Const MFS_GRAYED As Long = &H3&
Public Const MFS_CHECKED As Long = &H8&



'ACABAN LAS PRUEBAS''--------------------------'
Private Type KBDLLHOOKSTRUCT
vkCode As Long
scancode As Long
flags As Long
time As Long
dwExtraInfo As Long
End Type

Public p As KBDLLHOOKSTRUCT
Public hhkLowLevelKybd As Long
Public retval As Long
Const HC_ACTION = 0
'esto es del getmenuiteminfo'

Public Const MIIM_TYPE = &H10
Public Const MIIM_SUBMENU = &H4


Private Type menuiteminfo
cbSize As Long
fMask As Long
fType As Long
fState As Long
wID As Long
hSubMenu As Long
hbmpChecked As Long
hbmpUnchecked As Long
dwitemdata As Long
dwTypeData As String
cch As Long
End Type


'esto tambien'
'Public Declare Function GetMenuItemID Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) As Long
Public Declare Function GetSystemMenu Lib "user32" (ByVal hwnd As Long, ByVal bRevert As Long) As Long
Public Declare Function GetMenu Lib "user32" (ByVal hwnd As Long) As Long
Public Declare Function GetMenuItemInfo Lib "user32" Alias "GetMenuItemInfoA" (ByVal hMenu As Long, ByVal un As Long, ByVal b As Boolean, lpmii As menuiteminfo) As Long
Public Declare Function SetMenuItemInfo Lib "user32" Alias "SetMenuItemInfoA" (ByVal hMenu As Long, ByVal uItem As Long, ByVal fByPosition As Long, lpmii As menuiteminfo) As Long
Public Declare Function GetSubMenu Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) As Long
Private Declare Function GetMenuString Lib "user32" (ByVal hMenu As Long, ByVal widitem As Long, ByVal lpstring As String, ByVal nMaxCount As Long, ByVal wflag As Long)
Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public Declare Function GetActiveWindow Lib "user32" () As Long
'hasta aqui'


Public Declare Function SendMessage Lib "user32" Alias _
"SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, _
ByVal wParam As Long, lParam As Any) As Long



Public Declare Function IsWindow Lib "user32" ( _
ByVal hwnd As Long) As Long
Public Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wflags As Long) As Long
Public Declare Function GetMenuItemCount Lib "user32" (ByVal hMenu As Long) As Long
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Public Declare Function GetForegroundWindow Lib "user32" () As Long
Public Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" (ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As Long, ByVal dwThreadId As Long) As Long
Public Declare Function UnhookWindowsHookEx Lib "user32" (ByVal hHook As Long) As Long
Public Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
Public Declare Function CallNextHookEx Lib "user32" (ByVal hHook As Long, ByVal nCode As Long, ByVal wParam As Long, lParam As Any) As Long

Public Sub FIN()
If hhkLowLevelKybd <> 0 Then
UnhookWindowsHookEx hhkLowLevelKybd
End If
End Sub

Public Sub INI()
hhkLowLevelKybd = SetWindowsHookEx(WH_KEYBOARD_LL, AddressOf LowLevelKeyboardProc, App.hInstance, 0)
End Sub


Public Function LowLevelKeyboardProc(ByVal nCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Dim fEatKeystroke As Boolean

If (nCode = HC_ACTION) Then
CopyMemory p, ByVal lParam, Len(p)
If GetAsyncKeyState(p.vkCode) Then
Select Case p.vkCode
Case VK_NEXT
ejecutar
identificar
AlwaysOnTop Form1



End Select
End If
End If

If fEatKeystroke Then 'featkeystroke es para que solo te coja una entrada'
LowLevelKeyboardProc = -1
Else
LowLevelKeyboardProc = CallNextHookEx(0, nCode, wParam, ByVal lParam)
End If

End Function

Public Function identificar()
Dim i As Long
Dim j As Long
Dim hMenu As Long
Dim hwnd As Long
Dim subhwnd As Long
Dim ret2 As Long
Dim cont2 As Long
Dim cont As Long
Dim total As Long
total = 0
cont = 0
cont2 = 0
'prueba'
Dim lpItemInfo As menuiteminfo
'Dim lngid As Long
Dim lgRet As Long
Dim stBuffer As String * 80
'la prueba hasta aqui'
'Form1.Label5.Caption = hMenu
'obtiene el handle de la ventana activa'
hwnd = GetForegroundWindow()
Form1.Label1.Caption = hwnd
'obtiene el contexto del dispositivo de la ventana activa'
ret2 = GetAsyncKeyState(p.vkCode)



'obtener el handle del menu

hMenu = GetMenu(hwnd)
Form1.Label8.Caption = hMenu
cont = GetMenuItemCount(hMenu)
Form1.Label4.Caption = cont
For i = 0 To cont - 1
'pruebas
lpItemInfo.cbSize = 44
lpItemInfo.dwTypeData = stBuffer & Chr$(0)
lpItemInfo.fType = MF_STRING
lpItemInfo.cch = 80
lpItemInfo.fState = MFS_DEFAULT
lpItemInfo.fMask = MIIM_ID Or MIIM_STATE Or MIIM_TYPE Or MIIM_SUBMENU
lgRet = GetMenuItemInfo(hMenu, i, True, lpItemInfo)
lpItemInfo.dwTypeData = Replace(lpItemInfo.dwTypeData, Chr$(0), vbNullString)
Form1.lst1.AddItem lpItemInfo.dwTypeData

'hasta aqui


subhwnd = GetSubMenu(hMenu, i)
'lngid = GetMenuItemID(hMenu, i)
cont2 = GetMenuItemCount(hMenu)
total = total + cont2

'mas pruebas'

For j = 0 To cont2 - 1
' Mise à niveau de la structure
lpItemInfo.cbSize = 44
lpItemInfo.dwTypeData = stBuffer & Chr$(0)
lpItemInfo.fType = MF_STRING
lpItemInfo.cch = 80
lpItemInfo.fState = MFS_DEFAULT
lpItemInfo.fMask = MIIM_ID Or MIIM_STATE Or MIIM_TYPE Or MIIM_SUBMENU
' Récupère le contenu du sous-menu
lgRet = GetMenuItemInfo(subhwnd, j, True, lpItemInfo)
lpItemInfo.dwTypeData = Replace(lpItemInfo.dwTypeData, _
Chr$(0), vbNullString)
' Affiche le menu dans le contrôle ListBox
Form1.lst1.AddItem Space$(8) & lpItemInfo.dwTypeData
Next j
'aqui acaba prueba'
Next i

Form1.Label7.Caption = total
End Function


Public Sub AlwaysOnTop(frm As Form)
SetWindowPos frm.hwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE



End Sub




Public Sub ejecutar()

Dim i As Long
Dim menulen&

'Dim MII As menuiteminfo



'retval = Shell("C:WINNTnotepad.exe", 1)
'AppActivate (retval)
'retval = Shell("C:Archivos de programaWindows NTAccesorioswordpad.exe", 1)
'AppActivate (retval)
'retval = Shell("C:WINNTsystem32mspaint.exe", 1)
'AppActivate (retval)
'retval = Shell("C:Archivos de programaMicrosoft OfficeOfficewinword.exe", 1)
'AppActivate (retval)
retval = Shell("C:Archivos de programaWindows Media Playermplayer2.exe", 1)
AppActivate (retval)

End Sub


y este es el codigo del formulario correspondiente:

Private Sub cmdarriba_Click()
a = lst1.ListIndex

If lst1.ListIndex < 1 Then
MsgBox ("principio")
Else
lst1.ListIndex = (a - 1)

End If



End Sub

Private Sub cmdabajo_Click()


AppActivate retval, True
'SendKeys "%", True
SendKeys "%{f4}", True
'a = lst1.ListIndex


'If lst1.ListIndex = (lst1.ListCount - 1) Then
'MsgBox ("ultimo")
'Else
'lst1.ListIndex = (a + 1)
'End If






End Sub

Private Sub Command1_Click()
FIN
Unload Me
End Sub


Private Function SetId(Action As Long) As Long
Dim MenuID As Long
Dim Ret As Long

MenuID = MII.wID
If MII.fState = (MII.fState Or MFS_GRAYED) Then
If Action = SwapID Then
MII.wID = SC_CLOSE
Else
MII.wID = xSC_CLOSE
End If
Else
If Action = SwapID Then
MII.wID = xSC_CLOSE
Else
MII.wID = SC_CLOSE
End If
End If

MII.fMask = MIIM_ID
Ret = SetMenuItemInfo(hMenu, MenuID, False, MII)
If Ret = 0 Then
MII.wID = MenuID
End If
SetId = Ret
End Function






Private Sub Form_Load()
INI
Dim a As Variant
'Dim retval As Long

End Sub

ESPERO QUE PODAIS AYUDARME(CON LO DEL SENDKEYS PORQUE PONGA LA TECLA QUE PONGA NO HACE NADA)
GRACIAS.







Yuval
13 de Mayo del 2004
Bueno alberto, si te soy sincero casi no entendido nada asi visto en global es dificil sacar conclusiones
voy aver si lo voy desglosando ¿podrias comentar el codigo?, asi seria mas facil ver que hace cada cosa y tambien pon donde estas atascado y lo que quieres hacer. Asi seria mucho mas facil si tienes tiempo hazlo asi podriamos ayudarte mejor. Animo!!!

al
13 de Mayo del 2004
Bien voy a intentar explicartelo lo mejor que pueda(a veces no lo entiendo ni yo) :

ESTE ES EL MÓDULO
Public MII As menuiteminfo 'ES LA ESTRUCTURA DEL MENU, ES EL OBJETO MENU'

'LAS CONSTANTES PARA EL TECLADO'
Private Const WH_KEYBOARD_LL = 13
Private Const LLKHF_ALTDOWN = &H20
'PRUEBAS----------------------------------------'
Public Const HWND_TOPMOST = -1
Public Const SWP_NOMOVE = &H2
Public Const SWP_NOSIZE = &H1
Public Const VK_NEXT = &H22
Public Const xSC_CLOSE As Long = -10
Public Const SwapID As Long = 1
Public Const ResetID As Long = 2


Private Const SC_CLOSE As Long = &HF060&

'SetMenuItemInfo fMask constants.
Public Const MIIM_STATE As Long = &H1&
Public Const MIIM_ID As Long = &H2&

'SetMenuItemInfo fState constants.
Public Const MFS_GRAYED As Long = &H3& 'ESTAS DOS YA NO LAS UTILIZO'
Public Const MFS_CHECKED As Long = &H8&



'ACABAN LAS PRUEBAS''--------------------------'
Private Type KBDLLHOOKSTRUCT 'GANCHO TECLADO'
vkCode As Long
scancode As Long
flags As Long
time As Long
dwExtraInfo As Long
End Type

Public p As KBDLLHOOKSTRUCT
Public hhkLowLevelKybd As Long
Public retval As Long
Const HC_ACTION = 0
'esto es del getmenuiteminfo'

'MAS CONSTANTES DEL MENU'
Public Const MIIM_TYPE = &H10
Public Const MIIM_SUBMENU = &H4


'ESTA ES LA ESTRUCTURA QUE TIENE UN OBJETO MENU'
Private Type menuiteminfo
cbSize As Long
fMask As Long
fType As Long
fState As Long
wID As Long
hSubMenu As Long
hbmpChecked As Long
hbmpUnchecked As Long
dwitemdata As Long
dwTypeData As String
cch As Long
End Type


'esto tambien' ' DECLARACION DE APIS'
'Public Declare Function GetMenuItemID Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) As Long
Public Declare Function GetSystemMenu Lib "user32" (ByVal hwnd As Long, ByVal bRevert As Long) As Long
Public Declare Function GetMenu Lib "user32" (ByVal hwnd As Long) As Long
Public Declare Function GetMenuItemInfo Lib "user32" Alias "GetMenuItemInfoA" (ByVal hMenu As Long, ByVal un As Long, ByVal b As Boolean, lpmii As menuiteminfo) As Long
Public Declare Function SetMenuItemInfo Lib "user32" Alias "SetMenuItemInfoA" (ByVal hMenu As Long, ByVal uItem As Long, ByVal fByPosition As Long, lpmii As menuiteminfo) As Long
Public Declare Function GetSubMenu Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) As Long
Private Declare Function GetMenuString Lib "user32" (ByVal hMenu As Long, ByVal widitem As Long, ByVal lpstring As String, ByVal nMaxCount As Long, ByVal wflag As Long)
Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public Declare Function GetActiveWindow Lib "user32" () As Long
'hasta aqui'


'YA NO UTILIZO SENDMESSAGE'
Public Declare Function SendMessage Lib "user32" Alias _
"SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, _
ByVal wParam As Long, lParam As Any) As Long



Public Declare Function IsWindow Lib "user32" ( _
ByVal hwnd As Long) As Long
Public Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wflags As Long) As Long
Public Declare Function GetMenuItemCount Lib "user32" (ByVal hMenu As Long) As Long
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Public Declare Function GetForegroundWindow Lib "user32" () As Long
Public Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" (ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As Long, ByVal dwThreadId As Long) As Long
Public Declare Function UnhookWindowsHookEx Lib "user32" (ByVal hHook As Long) As Long
Public Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
Public Declare Function CallNextHookEx Lib "user32" (ByVal hHook As Long, ByVal nCode As Long, ByVal wParam As Long, lParam As Any) As Long

Public Sub FIN()
If hhkLowLevelKybd <> 0 Then
UnhookWindowsHookEx hhkLowLevelKybd
End If
End Sub

Public Sub INI()
hhkLowLevelKybd = SetWindowsHookEx(WH_KEYBOARD_LL, AddressOf LowLevelKeyboardProc, App.hInstance, 0)
End Sub


Public Function LowLevelKeyboardProc(ByVal nCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Dim fEatKeystroke As Boolean

If (nCode = HC_ACTION) Then
CopyMemory p, ByVal lParam, Len(p)
If GetAsyncKeyState(p.vkCode) Then
Select Case p.vkCode
Case VK_NEXT 'CUANDO LE DOY A LA TECLA AV-PAG:'
ejecutar 'EJECUTO UNA APLIACION'
identificar 'CUENTO OPCIONES MENU'
AlwaysOnTop Form1 PONGO EL FORM EN PRIMER PLANO'



End Select
End If
End If

'SE REFIERE AL GANCHO DE TECLADO'
If fEatKeystroke Then 'featkeystroke es para que solo te coja una entrada'
LowLevelKeyboardProc = -1
Else
LowLevelKeyboardProc = CallNextHookEx(0, nCode, wParam, ByVal lParam)
End If

End Function

Public Function identificar()
Dim i As Long
Dim j As Long
Dim hMenu As Long 'HANDLE DEL MENU
Dim hwnd As Long
Dim subhwnd As Long
Dim ret2 As Long
Dim cont2 As Long
Dim cont As Long
Dim total As Long
total = 0
cont = 0
cont2 = 0
'prueba'
Dim lpItemInfo As menuiteminfo
'Dim lngid As Long
Dim lgRet As Long
Dim stBuffer As String * 80
'la prueba hasta aqui'
'Form1.Label5.Caption = hMenu
'obtiene el handle de la ventana activa'
hwnd = GetForegroundWindow() 'GUARDO EL HANDLE DE LA VENTANA ACTIVA'
Form1.Label1.Caption = hwnd 'LO MUESTRO'
'obtiene el contexto del dispositivo de la ventana activa'
ret2 = GetAsyncKeyState(p.vkCode)



'obtener el handle del menu

hMenu = GetMenu(hwnd)
Form1.Label8.Caption = hMenu 'LO MUESTRO'
cont = GetMenuItemCount(hMenu)
Form1.Label4.Caption = cont
For i = 0 To cont - 1
'pruebas
lpItemInfo.cbSize = 44
lpItemInfo.dwTypeData = stBuffer & Chr$(0)
lpItemInfo.fType = MF_STRING
lpItemInfo.cch = 80
lpItemInfo.fState = MFS_DEFAULT
lpItemInfo.fMask = MIIM_ID Or MIIM_STATE Or MIIM_TYPE Or MIIM_SUBMENU
lgRet = GetMenuItemInfo(hMenu, i, True, lpItemInfo)
lpItemInfo.dwTypeData = Replace(lpItemInfo.dwTypeData, Chr$(0), vbNullString)
Form1.lst1.AddItem lpItemInfo.dwTypeData

'hasta aqui


subhwnd = GetSubMenu(hMenu, i) 'OBTENGO HANDLE DEL SUBMENU'
'lngid = GetMenuItemID(hMenu, i) 'PRUEBA'
cont2 = GetMenuItemCount(hMenu) 'CUENTO ELEMENTOS DEL MENU'
total = total + cont2

'mas pruebas'

For j = 0 To cont2 - 1
' Mise à niveau de la structure 'ERA WEB FRANCESA'
lpItemInfo.cbSize = 44
lpItemInfo.dwTypeData = stBuffer & Chr$(0)
lpItemInfo.fType = MF_STRING
lpItemInfo.cch = 80
lpItemInfo.fState = MFS_DEFAULT
lpItemInfo.fMask = MIIM_ID Or MIIM_STATE Or MIIM_TYPE Or MIIM_SUBMENU
'CON ESTE PROCESO DIBUJO MENU EN LISTBOX'
' Récupère le contenu du sous-menu
lgRet = GetMenuItemInfo(subhwnd, j, True, lpItemInfo)
lpItemInfo.dwTypeData = Replace(lpItemInfo.dwTypeData, _
Chr$(0), vbNullString)
' Affiche le menu dans le contrôle ListBox
Form1.lst1.AddItem Space$(8) & lpItemInfo.dwTypeData
Next j
'aqui acaba prueba'
Next i


'MUESTRO TOTAL ELEMENTOS DEL MENU'
Form1.Label7.Caption = total
End Function


'PONGO EL FORMULARIO EN PRIMER PLANO'
Public Sub AlwaysOnTop(frm As Form)
SetWindowPos frm.hwnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE



End Sub




Public Sub ejecutar()

Dim i As Long
Dim menulen&

'Dim MII As menuiteminfo

'CON ESTO HAGO LAS PRUEBAS DE EJECUCIÓN, CON
DISTINTAS APLICACIONES'

'retval = Shell("C:WINNTnotepad.exe", 1)
'AppActivate (retval)
'retval = Shell("C:Archivos de programaWindows NTAccesorioswordpad.exe", 1)
'AppActivate (retval)
'retval = Shell("C:WINNTsystem32mspaint.exe", 1)
'AppActivate (retval)
'retval = Shell("C:Archivos de programaMicrosoft OfficeOfficewinword.exe", 1)
'AppActivate (retval)
retval = Shell("C:Archivos de programaWindows Media Playermplayer2.exe", 1)
AppActivate (retval)

End Sub


y este es el codigo del formulario correspondiente:

'ES EL CÓDIGO CON EL QUE ME AYUDASTE'
Private Sub cmdarriba_Click()
a = lst1.ListIndex

If lst1.ListIndex < 1 Then
MsgBox ("principio")
Else
lst1.ListIndex = (a - 1)

End If



End Sub

Private Sub cmdabajo_Click()


AppActivate retval, True
'AQUI EN VEZ DE USAR SENDKEYS QUIERO USAR keybd_event VK_MENU, 0, 0, 0'

'SendKeys "%", True
SendKeys "%{f4}", True
'a = lst1.ListIndex
'SI LLEGO AL ÚLTIMO, SALE MENSAJE'

'If lst1.ListIndex = (lst1.ListCount - 1) Then
'MsgBox ("ultimo")
'Else
'lst1.ListIndex = (a + 1)
'End If






End Sub

'PARA SALIR'
Private Sub Command1_Click()
FIN
Unload Me
End Sub

ES LARGO EH?, BUENO LO QUE TE QUIERO CONTAR AHORA ES QUE ES UNA APLICACIÓN PARA PERSONAS CON DISCAPACIDAD(ESTOY EN LAS PRÁCTICAS) Y POR ESO EL OBJETIVO ES QUE MEDIANTE ESTA APLICACIÓN PUEDAN ACCEDER DE FORMA MAS SENCILLA AL MENU DE CUALQUIER APLICACIÓN, PARA ELLO DEBO SABER MOVERME POR EL MENU Y SUS SUBMENUS PERO NO SE SI DEBO COMBINAR keybd_event VK_MENU, 0, 0, 0 CON ALGO, PORQUE NO SE COMO VA. Bueno espero que aunque sea ahora entiendas mejor mi programa, ojala puedas ayudarme,tambien le envie mensajes al foro a Enço y a Sdemingo porque parece que controlan pero no he recibido aun respuesta.Te doy las gracias de forma anticipada espero que puedas ayudarme algo, pero como ves es un programa complicado.



Private Function SetId(Action As Long) As Long
Dim MenuID As Long
Dim Ret As Long

MenuID = MII.wID
If MII.fState = (MII.fState Or MFS_GRAYED) Then
If Action = SwapID Then
MII.wID = SC_CLOSE
Else
MII.wID = xSC_CLOSE
End If
Else
If Action = SwapID Then
MII.wID = xSC_CLOSE
Else
MII.wID = SC_CLOSE
End If
End If

MII.fMask = MIIM_ID
Ret = SetMenuItemInfo(hMenu, MenuID, False, MII)
If Ret = 0 Then
MII.wID = MenuID
End If
SetId = Ret
End Function






Private Sub Form_Load()
INI
Dim a As Variant
'Dim retval As Long

End Sub



Yuval
13 de Mayo del 2004
Ante todo no hay de que para eso estamos aqui para ayudar y que nos ayuden. Como dicen hoy por ti y mañana por mi Siempre es bueno esto, asi piensas soluciones que te refrescan la memoria sobre cosas y sobre todo aprendes cosas interesantes. como es tu programa que parece mazo de atractivo. El problema que donde estas atascado ahora mismo yo no puedo ayudarte por que ninguna de las dos opciones que barajas las he utilizado nunca, lo que si te agradeceria que cuando lo resuelvas me mandes informacion sobre ello. A eso si para todo lo demas yo estoy aqui SUERTE!!! y espero que alguin pueda hecharte una mano o que puedas resolver tu mismo el problema animo, ¿Cuando vayas ala tutoria podrias preguntar a tu profe de programacion?¿no?

al
13 de Mayo del 2004
Ojala, pudiera preguntarle, pero es que aunque no te lo creas no tiene ni idea de APIS(alli no tienen manuales lo he preguntado..)
GRACIAS POR TODO, a ver si me puede ayudar alguien puede que enço o sdemingo pero no he recibido respuesta en el foro desde el lunes(sdemingo me ha mandado un email)
Por cierto a ver cuando te haces email, para hacer ranking de revistas favoritas!! jejeje!!!!

Yuval
13 de Mayo del 2004
jejejejej Nose alomejor despues del verano me conecto a internet otra vez en casa si es asi ya me creare una o volvere a utilizar la que tenia antes.
Ya te informare si estoy haciendo lo de las revistas para ver cual empezar a comprar. hay que tomarse enserio esto y me quiero poner al dia y las revistas es un buen metodo asi mientras el prosimo año empiezo la carrera me voy actualizando por eso tambien quiero internet en casa para mirar cosas y tal.
Bueno voy aver si resuelvo dudas por ahi jejeje