|
51
|
Programación / Programación Visual Basic / Re: Encuesta
|
en: 16 Agosto 2006, 15:01 pm
|
Y ,si soplo es moderador ¿Por qué no consta en la pagina inicial del foro? Es moderador global, no de VB. y que quien dispone este de acuerdo con la idea y con los moderadores propuestos...¿por cierto quien se ofrece como candidato con disponibilidad y ganas? Cuando dije que hacia falta un mod me ofrecí y vuelvo a hacerlo las veces que haga falta; pero estas cosas no funcionan así, creo que lo mejor es una encuesta y que nos pongamos todos de acuerdo con alguien Yo creo que lo de los candidatos lo tiene que elegir la Staff no nosotros no¿? Como es lógico el Staff es quien decide, pero en el fondo los interesados somos nosotros. Un saludo
|
|
|
52
|
Programación / Programación Visual Basic / Re: Encuesta
|
en: 16 Agosto 2006, 13:19 pm
|
Yo se lo dije a Mancebo y lo hablaron en el staff, y decidieron que no.
Me alegra saber que no soy el único que se da cuenta que hace falta un mod, a ver si entre todos conseguimos poner a alguien.
Un saludo
|
|
|
53
|
Programación / Programación Visual Basic / Re: Intalador
|
en: 11 Agosto 2006, 14:17 pm
|
Como alternativa al instalador por defecto de VB tienes el Wise Intaller, genera automáticamente instalaciones para Visual Basic, VB.NET, C# yJ#, a partir del proyecto.
Un saludo
|
|
|
54
|
Programación / Programación Visual Basic / Re: Usar archivos .ini
|
en: 10 Agosto 2006, 18:07 pm
|
Aqui tienes, ligeramente comentado como utilizar las API GetPrivateProfileString y WritePrivateProfileString para usar archivos INI. En un modulo Bas ponemos el siguiente codigo 'Declaración de las funciones API's para escribir y leer archivos INI. Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As Long
'Función para leer los datos en archivos INI: Public Function INI_Read(Filename As String, Key_Value As String, Key_Name As String, Optional ByVal Default As String) As String 'On Error GoTo ErrOut Dim Size As Integer Dim value As String
'Comprobamos que el archivo existe. If Not SYS_FileExists(Filename) Then Err.Raise 53
'Se define el tamaño maximo de caracteres 'que podra tener la variable Value value = Space(200) 'Se utiliza la función para obtener 'el valor de la clave Size = GetPrivateProfileString(Key_Value, Key_Name, "", value, Len(value), Filename) 'Si el tamaño es mayor a -1 entonces 'se ha encontrado el valor de la clave If Size > 0 Then value = Left$(value, Size) Else INI_Read = Default End If
'Devolver el dato... 'Verificar que el dato no sea nulo, 'en caso de ser nulo de se devuelve 'el valor por defecto (Default) If Len(value) Then INI_Read = value Else INI_Read = Default End If Exit Function
ErrOut: INI_Read = Default End Function
'Función para escrbir datos en archivos INI. Public Function INI_Write(Filename As String, Key_Value As String, Key_Name As String, value As String) As Long 'On Error GoTo ErrOut Dim Size As Integer
'Escribimos el valor de la clave en el INI Size = WritePrivateProfileString(Key_Value, Key_Name, value, Filename) INI_Write = 1 Exit Function
ErrOut: INI_Write = 0 End Function
'Para usarlo 'Si nuestro archivo Ini ( Config.Ini ) es asi [General] Ruta="C:Sistema" BaseDatos="Clientes.Mdb"
'En nuestro programa hacemos asi: cRutaActual = INI_Read("Config.ini", "General", "Ruta", "C:") cBaseDatos = INI_Read( "Config.Ini", "General", "BaseDatos", "Data.Mdb" )
Un saludo
|
|
|
55
|
Programación / Programación Visual Basic / Re: Ayuda con un pequeño proyecto !!!
|
en: 10 Agosto 2006, 14:39 pm
|
Aqui tienes un code que seguro que te ayudará, sólo tienes que hacer un proyecto estándar, pegarlo y ejecutarlo. Private Sub Form_Load() 'Leer los datos Datos = "HacktorSRV|127.0.0.1|Hacktor" MatrizDatos = Split(Datos, "|") Servidor = MatrizDatos(0) IP = MatrizDatos(1) Admin = MatrizDatos(2) MsgBox "Vamos a leer los datos", , "Ejemplo" MsgBox "Servidor: " & Servidor & vbNewLine & "IP:" & IP & vbNewLine & "Admin: " & Admin, , "Ejemplo" 'Cambiarlos MsgBox "Vamos a cambiarlos", , "Ejemplo" Servidor = InputBox("Introduzca el nuevo servidor", "Ejemplo") IP = InputBox("Introduzca la nueva IP", "Ejemplo") Admin = InputBox("Introduzca el nuevo Admin", "Ejemplo") Datos = Servidor & "|" & IP & "|" & Admin 'Ahora, leemos los datos que hemos guardado MsgBox "Ahora leeremos los datos que hemos cambiado en la variable Datos", , "Ejemplo" MatrizDatos = Split(Datos, "|") Servidor = MatrizDatos(0) IP = MatrizDatos(1) Admin = MatrizDatos(2) MsgBox "Servidor: " & Servidor & vbNewLine & "IP:" & IP & vbNewLine & "Admin: " & Admin, , "Ejemplo" 'Acalaraciones finales MsgBox "La variable ""Datos"" podría haber sido cualquier cosa, un archivo o una parte de él, un textbox etc.", , "Ejemplo" End End Sub Está minimamente comentado, pero lo importante es ejecutarlo para ver como funciona. Esto está pensado para, por ejemplo guardar los datos en un servidor de una aplicación Cliente/Servidor al final del archivo y luego extraerlos. Si lo que quieres es hacer un fichero INI (por secciones) debes utilizar las API que te han dicho, GetPrivateProfileString y WritePrivateProfileString, para ello un par de búsquedas en Google te valdrán. Saludos
|
|
|
56
|
Programación / Programación Visual Basic / Re: Pulsar Tecla
|
en: 9 Agosto 2006, 22:19 pm
|
alguien sabe donde puedo encontrar q numero le corresponde a cada boton del teclado??? desde ya muchas gracias No hace falta que lo busques, cada código ASCII tiene una equivalencia. Para encontrarla, tienes que usar la función Chrs.Por ejemplo, quieres saber a que tecla le corresponde 65 Msgbox "El caracter 65 es " & Chr(65) Chr(65) te devolverá una letra A mayúscula Un saludo
|
|
|
57
|
Programación / Programación Visual Basic / Re: Ayuda con Codigo
|
en: 9 Agosto 2006, 22:15 pm
|
Bueno, seguro que hay muchas formas de hacerlo, pero a mi se me ocurre ésta. Lo primero, declara una variable global (llamada por ejemplo, Terminado, que sea Boolean) Es decir, en General Declarations Luego, al cargar el form añade esto Luego, en el evento NavigateComplete2 del WebBrowser, hacemos que vaya hacia atrás sólo si ya ha terminado. Para ello, al terminar de rellenar los datos, hacemos que Terminado sea igual a True. Quedaría algo así: Dim Terminado As Boolean Option Explicit
Sub Espera(Segundos As Single) Dim ComienzoSeg As Single Dim FinSeg As Single ComienzoSeg = Timer FinSeg = ComienzoSeg + Segundos Do While FinSeg > Timer DoEvents If ComienzoSeg > Timer Then FinSeg = FinSeg - 24 * 60 * 60 End If Loop End Sub
Private Sub cmdparar_Click() Timer.Enabled = False smsenviados.Text = 0 End Sub
Private Sub cmdrun_Click() Timer.Enabled = True End Sub
Private Sub Form_Load() Terminado = False wb.Navigate ("http://www.fci.edu.uy/inscripcion.htm") End Sub
Private Sub Timer_Timer() wb.Document.Form1.Nombre.Value = txtnombre wb.Document.Form1.apellido.Value = txtapellido wb.Document.Form1.ctedad.Value = txtedad wb.Document.GetElementById("E-mail").Value = txtmail wb.Document.Form1.telefono.Value = txttel wb.Document.Form1.mensaje.Value = txtmensaje Terminado = True wb.Document.Form1.enviar.Click smsenviados.Text = smsenviados.Text + 1 Espera (5) End Sub
Private Sub wb_NavigateComplete2(ByVal pDisp As Object, URL As Variant) If Terminado = True Then wb.GoBack End If Terminado = False End Sub
Un saludo
|
|
|
59
|
Programación / Programación Visual Basic / Re: Web cam de msn?
|
en: 8 Agosto 2006, 14:36 pm
|
No es que dude que no se pueda. Es que no se puede, es 100% imposible. Piensa que tiene que existir algun programa en el equipo remoto que transfiera las imagenes. En el supuesto de que no haga falta transferir las imágenes y que pudieramos ver la cam por la interface del MSN (que repito, no se puede) habría que explotar algun bug en el pc de la víctima, con lo que tendríamos que enviarle un EXE, con lo que estamos en las mismas.
En resumen, basta pensarlo un poco para entender que no se puede ni se podrá jamas, y........ sin enviar un EXE a la victima..... y hecho en VB ..... pues muchísimo muchísimo menos. Es como plantearse si desde Internet Explorer puedes entrar en los documentos secretos del pentágono usando un asistente para ello (un "Asistente de Hackers de Internet Explorer" xDDDD) o que con una tostadora conectada a la corriente puedes electrocutar a un señor del otro lado del mundo.
Además, dejando a un lado el hecho de que es 100% imposible... Si eso se pudiera hacer y lo supieramos ¿No creeis que ya se hubiera hablado en el foro?
Sed realistas y usad el sentido común.
Un saludo.
|
|
|
60
|
Programación / Programación Visual Basic / Re: Adaptadores de Red
|
en: 8 Agosto 2006, 13:45 pm
|
Para comprobar si estamos conectados o no a una red local, puedes usar la API IsNetworkAliveConst NETWORK_ALIVE_AOL = &H4 Const NETWORK_ALIVE_LAN = &H1 Const NETWORK_ALIVE_WAN = &H2 Private Declare Function IsNetworkAlive Lib "SENSAPI.DLL" (ByRef lpdwFlags As Long) As Long Private Sub Form_Load() Dim Datos As Long If IsNetworkAlive(Datos) = 0 Then MsgBox "No estamos conectados a una red" Else MsgBox "¡El sistema está conectado a una " + IIf(Datos = NETWORK_ALIVE_AOL, "AOL", IIf(Datos = NETWORK_ALIVE_LAN, "LAN", "WAN")) + "!" End If End Sub Para enumerar los adaptadores, podemos usar la API GetIpStatistics Lib, que devuelve muchísimos datos. En este ejemplo al cargar el formulario nos dice cuantos adaptadores hay. Ojo a Cstr para convertir el valor a String. 'No las he comentado todas porque 'hay muchas que no se para que sirven Private Type MIB_IPSTATS dwForwarding As Long dwDefaultTTL As Long dwInReceives As Long dwInHdrErrors As Long ' errores de cabecera dwInAddrErrors As Long ' errores de direccion dwForwDatagrams As Long dwInUnknownProtos As Long dwInDiscards As Long dwInDelivers As Long dwOutRequests As Long dwRoutingDiscards As Long dwOutDiscards As Long dwOutNoRoutes As Long dwReasmTimeout As Long dwReasmReqds As Long dwReasmOks As Long dwReasmFails As Long dwFragOks As Long dwFragFails As Long ' dwFragCreates As Long dwNumIf As Long ' número de adaptadores de red dwNumAddr As Long ' número de direcciones ip dwNumRoutes As Long End Type Private Declare Function GetIpStatistics Lib "iphlpapi" (pStats As MIB_IPSTATS) As Long
Private Sub Form_Load() Dim IpStats As MIB_IPSTATS GetIpStatistics IpStats MsgBox "El numero de conexiones de red es " & CStr(IpStats.dwNumIf) End Sub
En cuanto a lo de establecer y cerrar conexiones de red, esto ya es algo más complicado ya que en muchos casos requiere autentificación, mírate este enlace: Ejemplo conectar y desconectar recursos de redhttp://www.vb-mundo.com/truco_programacion_177-Conectar-y-desconectar-una-unidad-de-red.htmUn saludo
|
|
|
|
|
|
|