[pregunta-ayuda] generar exe con propiedades a gusto?

Iniciado por Larva93, 12 Agosto 2009, 00:08 AM

0 Miembros y 3 Visitantes están viendo este tema.

BlackZeroX

#10
Esto ya estaba expuesto hay sin fin de maneras para hacerlo...

Código (vb) [Seleccionar]


'Objetivo: Leer/Escribir configuracion/Datos al final de un archivo dato, dada una
              longitud fija, que de igual forma es plasmada exactamente al final del _
              archivo!!
'Autor: BlackZeroX
'Web: http: http://infrangelux.sytes.net/
'Version 1.0

Option Explicit

Function LeerConfig(Archivo As String) As String
   On Error GoTo e:
   Dim NFile As Integer
   Dim DatosServer As String
   Dim ByteI As Long
   
   NFile = FreeFile
   Open Archivo For Binary As NFile
       'Primero Leemos la longitud de los Datos de Configuración
       ByteI = Val(LOF(NFile)) - 4 'El numero 4 es segun se espesifique en Format, es decir la longitud del texto predeterminado en Format()
       DatosServer = Space(4) 'Hay que redimencionar la variable para obtener la longitud de configuración.¡!
       Get NFile, ByteI + 1, DatosServer
       ByteI = Val(LOF(NFile)) - 4 - Val(DatosServer)
       DatosServer = Space(Val(DatosServer)) ' Redimencionamos para obtener ahora el Rango deseado
       Get NFile, ByteI + 1, DatosServer 'Lo obtenemos
       LeerConfig = DatosServer
   Close NFile
   Exit Function
e:
   LeerConfig = "Error:" & Err.Description
   Err.Clear
End Function

Function EscribirDatos(Archivo As String,DatosEOF as string) As Boolean
   On Error GoTo e:
   Dim Datas As String
   Dim NFile As Integer
   NFile = FreeFile
   Datas = InputBox("Datos Formato--->   IP:Puerto:TiempoReconección", "Configurador", "")
   Datas = Datas + Format(Len(Datas), "000#") ' Segun sea este formato abajo se sustituye el numero 4 por otro valor segun la longitud.
   Open Archivo For Binary As NFile
       Seek (NFile), LOF(NFile) + 1 'Escribirmos al final del archivo
       Put NFile, , Datas
   Close NFile
   EscribirDatos = True
   Exit Function
e:
   EscribirDatos = False
   Err.Clear
End Function



The Dark Shadow is my passion.

yovaninu

yo no entiendo por que aquellos usuarios cosntantes de este foro dicen las cosas por su nombre, lo que el quiere es un EDITOR DEL SERVER, un elemento comun de la figura clasica de un troyano (CLIENTE, SERVIDOR Y EDITOR DEL SERVER), y codigo de eso hay hasta por montones... pero solo sugiero que las cosas se llamen por su nombre no se vayan a molestar.

Un saludo.

BlackZeroX

#12
Código (vb) [Seleccionar]

'Objetivo: Leer/Escribir configuracion/Datos al final de un archivo dato, dada una _
              longitud fija, que de igual forma es plasmada exactamente al final del _
              archivo!!
'Autor: BlackZeroX
'Web: http: http://infrangelux.sytes.net/
'Version 1.1

Option Explicit

'Archivo  = Ruta del archivo a abrir y leer los bytes finales
'lenconf  = valor devuelto de la funcion EscribirDatos (Obligatoriamente Numerico)

Function LeerDatos(Archivo As String, lenConf As Long) As String
   On Error GoTo e:
   If Dir(Archivo, vbArchive) = "" Or lenConf <= 0 Then Exit Function
   Dim NFile As Integer, DatosServer As String, ByteI As Long
   NFile = FreeFile
   Open Archivo For Binary As NFile
       ByteI = Val(LOF(NFile)) - lenConf
       DatosServer = Space(lenConf)
       Get NFile, ByteI + 1, DatosServer
       ByteI = Val(LOF(NFile)) - lenConf - Val(DatosServer)
       DatosServer = Space(Val(DatosServer))
       Get NFile, ByteI + 1, DatosServer
       LeerDatos = DatosServer
   Close NFile
   Exit Function
e: LeerDatos = "Error:" & Err.Description: Err.Clear
End Function

'Archivo              = Ruta del Archivo a escribir...
'Str_EOF              = Datos a escribir en el final del archivo

'La Funcion "EscribirDatos" Devuelve el Num usado en 'LenConf' de la Funcion LeerDatos
'    El Numero devuelto si es mayor a Cero  = Todo a ido correctamente
'    Si el numero es Cero = No se escribio NADA en el archivo indicado (Error de la cadena String, archivo No existente, Archivo en uso actualmente, etc)
'El Numero devuleto es importante para la correcta lectura del string de configuracion

               
Function EscribirDatos(Archivo As String, Str_EOF As String) As Long
   On Error GoTo e:
   Dim Datas As String, NFile As Integer, f As String, i As Integer
   NFile = FreeFile
   If Dir(Archivo, vbArchive) = "" Or Str_EOF = "" Then Exit Function
   EscribirDatos = Len(CStr(Len(Str_EOF)))
   For i = 1 To EscribirDatos - 1: f = "0" & f: Next i
   Datas = Str_EOF + Format(Len(Str_EOF), f & "#")
   Open Archivo For Binary As NFile
       Seek (NFile), LOF(NFile) + 1 'Escribirmos al final del archivo
       Put NFile, , Datas
   Close NFile
   Exit Function
e: EscribirDatos = 0: Err.Clear
End Function



Código (vb) [Seleccionar]

'Ejemplo en uso:

Option Explicit
Sub main()
   Dim n As Long, Archivo As String, Res As String
   Archivo = ""
   n = EscribirDatos(Archivo, "miguel angel ortega avila alias BlackZeroX")
If n = 0 Then Exit Sub
   Res = LeerDatos(Archivo, n)
If Res = "" Then Exit Sub
   MsgBox Res
   Kill Archivo
End Sub
The Dark Shadow is my passion.