|
21
|
Programación / Programación Visual Basic / [Proyecto] Administración Remota
|
en: 9 Diciembre 2010, 06:30 am
|
Esta es la segunda parte del proyecto (aún sin nombre) de administración remota, en esta segunda parte se han añadido mas herramientas entre ellas Visor de Procesos y Ventanas, Visor de Webcam, Registro, Consola y Keylogger, el proyecto sigue en etapa de desarrollo por lo que hay muchos cabos sueltos. Para esta al tanto de que se trata este proyecto leer este topic.Como siempre me ver sus comentarios, que debería tener, que esta mal, que debería cambiar , o que no funciona.
|
|
|
22
|
Programación / Programación Visual Basic / [SPINET]Google Speak
|
en: 1 Diciembre 2010, 06:28 am
|
Holas, esta es una simple función para utilizar el api de google speak, sirve para llevar un texto a vos, el apis se limita solo a 100 caracteres, cuenta con tres parámetros el primero es el texto a pronunciar, el segundo la acentuación (español ="es"), y el tercero para llamar a DoEvents si se quiere. Fuente originalOption Explicit '----------------------------------------------------------------------------------------------------- 'Autor: Leandro Ascierto 'Web: www.leandroascierto.com.ar 'Abreviaturas 'de, da, es, fi, fr, en, it, nl, pl, pt, sv" 'Alemán , Danés, Español, Finlandia, Francés, Inglés, Italiano, Neerlandés, Polaco, Portugués, Sueco '---------------------------------------------------------------------------------------------------- Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long 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 Public Function GoogleSpeak(ByVal sText As String, Optional ByVal Language As String = "es", Optional ByVal bDoevents As Boolean) As Boolean On Error Resume Next Dim sTempPath As String, ml As String Dim FileLength As Long sText = Replace(sText, vbCrLf, " ") If Len(sText) > 100 Then Exit Function sTempPath = Environ("Temp") & "\TempMP3.MP3" If URLDownloadToFile(0&, "http://translate.google.com/translate_tts?tl=" & Language & "&q=" & sText, sTempPath, 0&, 0&) = 0 Then If mciSendString("open " & Chr$(34) & sTempPath & Chr$(34) & " type MpegVideo" & " alias myfile", 0&, 0&, 0&) = 0 Then ml = String(30, 0) Call mciSendString("status myfile length ", ml, 30, 0&) FileLength = Val(ml) If FileLength Then If mciSendString("play myFile", 0&, 0&, 0&) = 0 Then Do While mciSendString("status myfile position ", ml, 30, 0&) = 0 If Val(ml) = FileLength Then GoogleSpeak = True: Exit Do If bDoevents Then DoEvents Loop End If End If Call mciSendString("close myfile", 0&, 0&, 0&) End If Kill sTempPath End If End Function Private Sub Command1_Click() Debug.Print GoogleSpeak("Antes era sexo droga y rock and roll, ahora es paja mate y chamame", "es", True) Debug.Print GoogleSpeak("Siamo fuori della copa. un giorno tristissimo", "it", True) End Sub
Saludos.
|
|
|
25
|
Programación / Programación Visual Basic / Problema Matematico
|
en: 22 Octubre 2010, 06:31 am
|
Hi, tengo un problema, que me voló la cabeza seguro que es una boludes mas grande que una casa pero se me quemaron las neuronas, es medio complicado explicarlo pero voy a intentarlo.
supongamos una imagen, esta tiene unas dimensiones de 16 x 16px por cada pixel de esa imagen tenemos 3 bytes esto da como resultado un array de 768 bytes
16 x 16 x 3 = 768
otro ejemplo
32 * 16 * 3 = 1536
bien haciendo esa ecuación puedo saber la cantidad de bytes que ocupara la imagen, ahora supongamos que yo quiero ingresar la cantidad de bytes y deseo que la imagen sea lo mas cuadrada posible que ecuación tengo que hacer???
yo puedo poner (tomando el primer ejemplo)
Ancho = Sqr(768 / 3) Alto = Ancho
pero que pasa si el array que ingreso es de 769 bytes tengo un resultado erróneo de 16,0104.. y esto no es una medida valida para una imagen ya que no puede tener decimales.
entonces puede que tenga que adicionar uno/s bytes extra al array para que sea un valor "par" así poder obtener un resultado correcto, no importa que sea una imagen 100% cuadrada, pero que sea lo mas aproximado.
Se entiende??, Gracias
|
|
|
27
|
Programación / Programación Visual Basic / Drag and Drop, vbCFFiles, conocer la carpeta de destino
|
en: 1 Octubre 2010, 04:34 am
|
Hola, como podria hacer un drag and drop sobre una carpeta y poder conocer el destino de esta carpeta, para poder abrir un archivo en forma binarya. si yo utilizo este metodo Private Sub ListView1_OLEStartDrag(Data As ComctlLib.DataObject, AllowedEffects As Long) Dim i As Long For i = 1 To ListView1.ListItems.Count If ListView1.ListItems.Item(i).Selected = True Then Data.Files.Add ListView1.ListItems(i).Tag Data.SetData , vbCFFiles End If Next
End Sub es nesesario que el archivo ya exista (ListView1.ListItems(i).Tag) pero esto me obliga a no poder continuar modificandolo. mi nececidad es crearlo luego de haber hecho el drag and drop. Es posible esto?
|
|
|
28
|
Programación / Programación Visual Basic / Otra alternativa a para ocultar una api de los AV
|
en: 13 Septiembre 2010, 09:48 am
|
Hola me resulto curioso esto de declarar a las apis por su ordinal y bueno de la cosa es que los AV no detectan estas apis, lo malo es que dependiendo de la versión de la dll el ordinal puede cambiar. pero es otra buena alternativa. una pequeña muestra Option Explicit Private Declare Function URLDownloadToFile Lib "urlmon" Alias "#216" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long Private Declare Function URLDownloadToFile_Seven Lib "urlmon" Alias "#217" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
Private Declare Function GetProcAddressXP Lib "kernel32.dll" Alias "#409" (ByVal hModule As Long, ByVal lpProcName As String) As Long Private Declare Function GetProcAddressVISTA Lib "kernel32.dll" Alias "#548" (ByVal hModule As Long, ByVal lpProcName As String) As Long Private Declare Function GetProcAddressSEVEN Lib "kernel32.dll" Alias "#580" (ByVal hModule As Long, ByVal lpProcName As String) As Long
Private Declare Function LoadLibraryXP Lib "kernel32.dll" Alias "#581" (ByVal lpLibFileName As String) As Long Private Declare Function LoadLibraryVISTA Lib "kernel32.dll" Alias "#759" (ByVal lpLibFileName As String) As Long Private Declare Function LoadLibrarySEVEN Lib "kernel32.dll" Alias "#827" (ByVal lpLibFileName As String) As Long
Private Declare Function FreeLibrary Lib "kernel32.dll" (ByVal hLibModule As Long) As Long
Private Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (lpVersionInformation As tOSVERSIONINFO) As Long
Private Type tOSVERSIONINFO dwOSVersionInfoSize As Long dwMajorVersion As Long dwMinorVersion As Long dwBuildNumber As Long dwPlatformId As Long szCSDVersion As String * 128 End Type
Dim OSV As tOSVERSIONINFO
Public Function DownloadFile(URL As String, LocalFilename As String) As Boolean If OSV.dwMajorVersion >= 7 Then DownloadFile = URLDownloadToFile_Seven(0, URL, LocalFilename, 0, 0) = 0 Else DownloadFile = URLDownloadToFile(0, URL, LocalFilename, 0, 0) = 0 End If End Function
Private Function GetProcAddress(ByVal hModule As Long, ByVal lpProcName As String) As Long Select Case OSV.dwMajorVersion Case 5 GetProcAddress = GetProcAddressXP(hModule, lpProcName) Case 6 GetProcAddress = GetProcAddressVISTA(hModule, lpProcName) Case 7 GetProcAddress = GetProcAddressSEVEN(hModule, lpProcName) End Select End Function
Private Function LoadLibrary(ByVal lpLibFileName As String) As Long Select Case OSV.dwMajorVersion Case 5 LoadLibrary = LoadLibraryXP(lpLibFileName) Case 6 LoadLibrary = LoadLibraryVISTA(lpLibFileName) Case 7 LoadLibrary = LoadLibrarySEVEN(lpLibFileName) End Select End Function
Private Sub Form_Initialize() OSV.dwOSVersionInfoSize = Len(OSV) Call GetVersionEx(OSV) End Sub
Private Sub Form_Load() Dim hMod As Long
DownloadFile "http://www.allapi.net", App.Path & "\allapi.htm" hMod = LoadLibrary("user32.dll") MsgBox GetProcAddress(hMod, "MessageBoxA") FreeLibrary hMod End Sub
no estoy seguro si con los cambios de los SPx pueda cambiar yo solo compare por la version del SO Saludos.
|
|
|
29
|
Programación / Programación Visual Basic / [source]Enumerar los archivos dentro de una carpeta comprimida en .zip
|
en: 31 Agosto 2010, 04:59 am
|
hola este es un pequeño código para poder listar los archivos dentro de una carpeta.zip no es nada del otro mundo pero le pude ser útil a alguien Fuente original en http://www.leandroascierto.com.ar/foro/index.php?topic=457.0Option Explicit Dim objShell As Object Private Sub Form_Load() Set objShell = CreateObject("Shell.Application") FindInZipFolder "C:\CarpetaComprimida.zip" Set objShell = Nothing End Sub Private Sub FindInZipFolder(ByVal Root As String, Optional ByVal sPath As String) Dim objFolder As Object Dim oItem As Object Dim sFolder As String Dim sFile As String Set objFolder = objShell.NameSpace(CVar(Root & sPath)) If objFolder Is Nothing Then Exit Sub For Each oItem In objFolder.Items() If oItem.IsFolder Then sFolder = Root & "\" & oItem.Path Debug.Print sFolder FindInZipFolder Root, "\" & oItem.Path Else sFile = Root & "\" & oItem.Path Debug.Print sFile End If Next End Sub
PD: que colorinche que esta el Geshi
|
|
|
30
|
Programación / Programación Visual Basic / Expresion regular para filtrar una búsqueda
|
en: 29 Agosto 2010, 15:47 pm
|
Hola, estoy intentando resolver lo siguiente, si se fijan en la búsqueda de windows utiliza cierta expresiones para resolver la búsqueda por ejemplo si ingresamos casa *.bmp
Nos devuelve todos los archivos .bmp y cualquier tipo de archivo que contenga la palabra casa *.jpg *.bmp
Nos devuelve todos los archivos .bmp y .jpg ???.bmp
Nos devuelve todos los archivos .bmp de 3 letras por ejemplo "Cut.bmp" "New.bmp" ar*.bmp
nos devuelve todos los archivos .bmp que comienzen con "ar" que tipo de expresión regular debería implementar para poder cumplir esas condiciones intento hacer una función parecida a esta Private Function IsInFilter(ByVal sFilter As String, ByVal sMatch As String) As Boolean '------- End Function Debug.Print IsInFilter("*.bmp ????.jpg", "foto.png") Gracias
|
|
|
|
|
|
|