Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - kub0x

#961
IPC (Inter process communication) via shared memory (memoria compartida) o named pipes. De esta forma conectaras tus aplicaciones comodamente. Si entiendes de Sockets y aprender esto te supone un esfuerzo (nunca esta de más aprender...) pues hazlo con sockets, eso si, estas técnicas aquí descritas son más óptimas.

Un saludo!
#962
Tranquilos antes de que suceda nada viajaré al pasado para hacerme con una IBM 5100 y reparar el desastre del Y2K38 :D

Saludos!
#963
Citando tu código:

Cita de: PokiPoki en 27 Mayo 2014, 18:19 PM
Código (vbnet) [Seleccionar]
Private Sub ThreadWork()

        'Dim LoadedBytes As Byte() = My.Resources.Encrypt
        Dim LoadedBytes As String = Application.StartupPath & "\Encrypt.exe"
        Dim MyApp As Byte() = Convert.FromBase64String(Base64_To_String(LoadedBytes)) 'TERRIBLE FALLO
        'más y más código...
        '....
    End Sub
   
    Private Function Base64_To_String(ByVal str As String) As String
        Return System.Text.Encoding.Default.GetString(Convert.FromBase64String(str))
    End Function
 


En tu ejecutable codificado tendrás el string en base64 que representa el conjunto de instrucciones o código de ese ejecutable. Lo que tienes que hacer es abrir dicho ejecutable, extraer la cadena en b64 y decodificarla en un array de bytes ( Byte() ) de esa forma podrías hacer Assembly.Load para cargar el ensamblado dinámicamente.

En tu código simplemente formas un string con la ruta del archivo codificado y mandas dicho string a ser decodificado en b64, a ver si nos fijamos un poquito más la siguiente vez ;)

Saludos!
#964
Programación C/C++ / Re:
27 Mayo 2014, 12:22 PM
Tienes Gstreamer que se come a todas las librerías que han mencionado antes. Eso sí tienes que familiarizarte con su arquitectura pues al principio se hace pesado y lioso.

Entre sus características: video/audio player (local, remote o remote live stream), codec encoding/decoding, file download, rmtp permite retransmitir en directo, captura webcam y microfono y es multiplataforma (Linux, Win y Mac)).

Saludos!
#965
Muy buenas PokiPoki,

existen varías formas de codificar y decodificar base64, en tu caso si quisieras codificar el archivo utilizarías un array de bytes ( Byte() ). Si quisieras decodificar el archivo entonces extraerías la cadena base64 del ejecutable y la decodificarías con la siguiente función:

Código (VB.NET) [Seleccionar]
Public Function FromBase64(ByVal base64 As String) As Byte()
        If base64 Is Nothing Then Throw New ArgumentNullException("base64")
        Return Convert.FromBase64String(base64)
    End Function


El code fue extraido de : http://www.nonhostile.com/page-vb-net-base64-encoding-decoding.asp, pues ando bastante vago :D

Este code simplemente convertiría el string base64 extraído del ejecutable codificado en un Array de bytes ( Byte() ) el cual podrías cargar en el proceso deseado mediante Assembly.Load.

Si tu propósito fuera codear un Crypter entonces necesitarías decodificar un bloque de datos ( Byte() ) que represente el programa en b64.

Saludos!
#966
Buenas #Aitor,

¿podrías aportar algo más de información? Entiendo que quieres generar un registro de una misma variable guardando en el mismo los valores variables que ha ido tomando dicha variable. Lo importante es el escenario presentado, como tu dices, una página web, por lo que tendrás que parsear via HTML la sección donde resida tu variable, de esta manera conseguiras obtener su contenido.

Un saludo!
#968
Anteriormente te dije que era la falta de privilegios, realmente necesitas permisos de lectura sobre esa rama del registro, aquí te dejo la descripción de la excepción segun la MSDN pero es algo sobre lo que ya te he advertido, nada nuevo:

Citar
UnauthorizedAccessException   

The RegistryKey is read-only, and cannot be written to; for example, the key has not been opened with write access.

Esto está extraído del segundo enlace que puse...

Cita de: kub0x en 20 Mayo 2014, 00:42 AM
...
Aun así aqui puedes echarle un vistazo a la documentación de la msdn sobre las Registry Keys: http://msdn.microsoft.com/es-es/library/2kk9bxk9%28v=vs.110%29.aspx
...

Saludos!
#969
Buenas de nuevo,

se me ocurren dos maneras, la primera es manual y sería ejecutando el programa en modo administrador para otogarle los máximos privilegios del usuario.

La otra es mediante el manifiesto de la aplicación .NET, los manifiestos son archivos que describen propiedades (así como los de metadatos) y una de esas propiedades define el nivel de privilegios requerido por la aplicación, esto último lo podras leer aquí: http://msdn.microsoft.com/es-es/library/bb384691.aspx

Saludos!
#970
Para escribir en la rama del registro (HKLM) del sistema necesitas de privilegios de administrador ya que las políticas ahí expuestas son comunes a todos los usuarios, por lo que win$ lleva un control riguroso sobre las modificaciones. Por lo demás todo se ve fino, aunque no lo probé.

Aun así aqui puedes echarle un vistazo a la documentación de la msdn sobre las Registry Keys: http://msdn.microsoft.com/es-es/library/2kk9bxk9%28v=vs.110%29.aspx

Saludos!