APIs de Windows Una de las secciones más interesantes con que mi portal salió adelante es esta. Las Apis de Windows son otra forma de poder acceder a ciertas funciones y recursos importantes en la realización de una aplicación. A continuación colocare una serie de Api muy interesantes. Devolver el Usuario de una unidad especifica DECLARE INTEGER WNetGetUser IN Win32API ; STRING @ lpName, STRING @ lpUserName, INTEGER @ lpnLength cDeviceName = 'Z:' && Unidad a Devolver el nombre de Usuario cUserName = SPACE(261) && Contendra el nombre de Usuario nLength = LEN(cUserName) IF WNetGetUser(cDeviceName, @cUserName, @nLength) = 0 ? 'Unidad ' + cDeviceName + ' User ' +LEFT(cUserName,AT(CHR(0),cUserName)-1) ELSE ? 'No se pudo determinar el nombre de usuario' ENDIF -------------------------------------------------------------------------------- Cambiar el cursor del puntero del Mouse DECLARE INTEGER LoadCursorFromFile IN WIN32API STRING DECLARE INTEGER SetCursor IN WIN32API INTEGER lcCursor = 'C:\Windows\cursors\globe.CUR' && Ruta y nombre del nuevo cursor SetCursor(LoadCursorFromFile(lcCursor)) -------------------------------------------------------------------------------- Mover formulario sin barra de titulo (Para VFP 7) Declaramos la función en el load del Formulario Declare integer SendMessage in "User32"; Long hwnd, Long wMsg, Long wParam, Long lParam Y en evento MouseDown del formulario programamos lo siguiente: #define WM_LBUTTONUP 514 #define WM_SYSCOMMAND 274 #define SC_MOVE 61456 #define MOUSE_MOVE 61458 = SendMessage(Thisform.hWnd, WM_LBUTTONUP, 0, 0) = SendMessage(Thisform.hWnd, WM_SYSCOMMAND, MOUSE_MOVE, 0) -------------------------------------------------------------------------------- Determinar si estas conectado a Internet #Define FORCE_CONNECTION 1 Declare Integer InternetCheckConnection in Wininet.dll; String Url, Long dwFlags, Long Reserved If InternetCheckConnection("http://www.hotmail.com", FORCE_CONNECTION, 0) != 0 Msg = "Estas Conectado a Internet" Else Msg = "Lo siento, no estas Conectado a Internet" EndIf =MessageBox(msg) --------------------------------------------------------------------------------