PREGUNTAS CONTESTADAS - Visual Basic

 Hay un total de 3030 Preguntas.<<  >> 

    Pregunta:  2539 - POWERPOINT Y VISUAL BASIC PARA APLICACIONES
Autor:  Juan Mata
El caso es el siguiente: tengo una presentacion en formato .ppt a la cual he incorporado unas macros en codigo vba para proteger el archivo en si. El problema es que cuando se abre la presentacion, es opcional para el usuario la activacion o no de las macros. Yo necesito que obligatoriamente sean abiertas dichas macros, para que mi codigo tenga sentido. QUE HAGO ?
  Respuesta:  Luis Miguel Caballero
La solución más sencilla es que grabes tu presentación como .pps, fíjate en la opción Save As...

    Pregunta:  2546 - LEER UNA BASE DATOS .BTR
Autor:  Marcelo Larizzate
Hola: necesito leer una base de datos que esta hecha en Btrieve y cuya extension es .btr ¿alguien me puede ayudar? El programa que estoy haciendo es en Vb 6.0. ¿Exixte alguna forma? Desde ya gracias!!!!
  Respuesta:  Luis Alfonso Cañas
Puedes bajarte a visual basic 4.0 de 16 bits, y sin problemas puedes abrir la tabla btrieve.

O puedes Crear una conexion odbc ( para lo cual requieres pervasive sotfware) y abrir la tabla via odbc desde visual basic. Esto se debe a que en visual basic 4.0 de 32 bits en adelante elimaron el btrieve.

Espero te sirva.

    Pregunta:  2565 - IP HELPER API (IPHLPAPI)
Autor:  Miguel Francisco Conde De Santis
Necesito documentación de las funciones API de a librería IPHLPAPI, especificamente necesito saber las lista de IP´s activos que se encuentren en una maquina con varios adaptadores o conexiones dialup abiertas. Necesito usarlas desde visual basic. Si tienen ejemplo des de C++ o cualquier otro lenguaje tambien me sirve.
  Respuesta:  Xavi
Con el delphi 2.0 viene un archivo .hlp con la descripcion de las apis de W95 y NT.
No uso Delphi para nada ,pero este archivo es imprescindible para meterte con apis.
Te lo pasaria pero ocupa 11Mb.

    Pregunta:  2569 - MENSAJES A MOVILES CON VB 6.0
Autor:  Daniel Pazos Abal
¿Como puedo enviar mensajes a moviles a través de internet con Visual Basic? ¿Influye en algo la compañía de telefonía a la que se envía el mensaje? Gracias.
  Respuesta:  Jesus -
Hola:
La manera fiable, elegante y fácil es hacerlo con una empresa que se dedique al tema. Sé de una que es muy seria, formal y ademas permite no solo el envio de sms si no también recepción!. Se llama Soluciones GSM (www.solucionesgsm.com) y poseen un componente ocx para el envío y la recepción. Es estupendo.

Habla con ellos, dependiendo de tu volumen pueden darte tarifas muy interesantes.

Es independiente de:
Tu conexión a internet
Del destinatario del mensaje
lo de @correo.movistar.net.... ya no funciona. No es fiable y si no llegan los mensajes el culpable es siempre el programador. Ya me entiendes ;-)
  Respuesta:  Superwill
Para mandar mensajes a moviles, lo que debes hacer en realidad es mandar un mensaje a una direccion de correo. Por ejemplo, si no me equivoco, para mandar un mensaje a movistar, debes escribir a [email protected] o algo por el estilo.
La compañia del movil si que influye, para la direccion.

Si quieres hacer esto en visual basic, deberias utilizar los controles Mapi para enviar correo

    Pregunta:  2586 - PASSWORD DE WINDOWS 95/98
Autor:  Genaro Sanchez
Como puedo leer los archivos PWL de windows, y que me muestre el/los passwords que hay en el archivo?

Saludos
  Respuesta:  buhito
En los archivos *.PWL se guardan las claves encriptadas por lo cual de poco te valer que las puedas leer, lo que si te puedo decir es que es texto plano, esos signos raros que ves si lo editas con cualquier editor tipo worpad o edit del DOS no es ni mas ni menos por esta encriptación que se realiza. El proceso que sigue windows cuando se introduce la clave del usuario es encriptarla y comparar el resultado con el PWL.

    Pregunta:  2588 - PROBLEMA CON ACCESO A DATOS CON ADO VB6
Autor:  Manuel R. Bercian
Estoy iniciandome en Visual Basic 6.0, trabajando con ADO y conectandome a la bases de datos Access 97 por medio de ODBC, resulta que uso varias rutinas para
-------------------------------
Abrir CONEXION
Abrir RECORSET
Cerrar RECORDSET
Cerrar CONEXION
-------------------------------
Cuando ya he abierto la conexion a la base de datos y quiero poblar el Recordset que es lo que hace la rutina Abrir_Recordset con el siguiente comando

RecSet.Open SQL, cnConnection, adOpenDynamic, adLockOptimistic ´Poblado del recordset

donde RecSet es el Nombre del Recordset y el contenido de SQL es
"SELECT * FROM Clientes ORDER BY idcliente, apellidos, nombres"
y esta tabla unicamente tiene 2208 registros
y el cnConnection es la conexion que fue abierta exitosamente.
se queda sin funcionar Visual Basic es decir me da un mensaje Visual Basic NO responde y tengo que finalizar la tarea con CTRL+ALT+DEL., ya probe instalando de nuevo VB6 y sigue igual, en otras computadoras si pobla el recordset y tienen 32 en Ram y mas registros en una tabla parecida, yo tengo 64 y no funciona.
Sera que hay otra forma de Usar ADO..., inmaginense cuando tenga que trabajar con tablas que tengan mas registros.

Que podria Hacer...? Gracias
  Respuesta:  Manuel Alvarez Antelo
Hola, lo que puedes probar es a rellenar el recordset de la forma que consume menos memoria:

sub Abrir_Recordset
set RecSet=cnConnection.execute(SQL)
end sub

De esta forma lo abres con un cursor solo para adelante. Y asi gasta muy pocos recursos.

    Pregunta:  2603 - SOBRE NÚMEROS DECIMALES
Autor:  Cristina Durante
Quisiera saber si es posible introducir en visual basic numeros decimales con la coma como símbolo decimal, dado que al introducir numeros con coma me toma como entero y al introducir con punto, sí me toma como decimal.
En la configuración de windows, está la coma como decimal y el punto para los miles y en access tambien, pero cuando entro en visual la configuracion es al revés.
Gracias
  Respuesta:  Al Camms
Cris:

Usa el comando replace:
----------------------------------------------------------------------
dim sValor as string, siValor as single
sValor = "3425,243"
siValor = Val(Replace(sValor,",","."))
----------------------------------------------------------------------

Saludos.
  Respuesta:  Fernando Ise
Yo para solucionar tu problema uso la siguiente funcion, en un modulo estandar.

Public Function Convertir(TextoIni$)
Dim Car$, J%
L = Len(TextoIni$)
Num$ = ""
For J = 1 To L
Car$ = Mid(TextoIni, J, 1)
If Car$ <> "," Then
Num$ = Num$ & Car$
Else
Num$ = Num$ & "."
End If
Next J

End Function

Para usarla debes declarar public la variable NUM$
convertir(text1.text)
Numero = val(num$)

Espero te sirva. Suerte.

    Pregunta:  2610 - VER EL ENTORNO DE RED
Autor:  Esteban Marin Cervantes
Hola como están?, pues esperando que se encuentren bien. Vieran que me encuentro realizando una aplicación en la cual tengo que mostrar las unidades (A:\ , C:\ ..) y el entorno de red, si se diera el caso que el usuario quisiera explorar las estaciones de trabajo que se encuentran en red. Estoy utilizando el control drivelistbox, pero se muestran solo las unidades actuales de la computadora y no el entorno de red el cual es el que me más me interesa.

Quiero saber si con este control es posible que se muestre el entorno de red y si no que alguien me oriente como puedo hacerlo.

Gracias anticipadas..
  Respuesta:  Antonio Ortiz Ramirez
En versiones anteriores de Visual Basic se utilizaban los "drivelistbox" y "filelistbox" en conjunto para acceder a los recursos de almacenamiento. Pero tambien existe el control "Commond Dialog", que se puede agregar de los componentes ActiveX de Visul Basic.

Prueba agregando un control "Commond Dialog" y un boton que al presionarlo tenga la instruccion:

CommondDialog1.ShowOpen o
CommondDialog2.ShowSave, segun el caso

* Mostrara la misma ventana de Abrir o Guardar de Word y aplicaciones de Windows.

    Pregunta:  2611 - TRANSFERENCIA DE ARCHIVOS POR EL PUERTO SERIAL
Autor:  Hari Lancheros
Estoy haciendo un programa que transmita archivos por visual basic, tengo hasta el momento transmision de caracteres. sialguien me puede ayudar le agradeceria, la ayuda lo mas pronto porfavor.
  Respuesta:  Pedro De Alba
Utiliza el control Microsoft COMM control de Visual BAsic el cual es especial para esto y solo hay que establecer en la propiedad .settings la velocidad de transmision, la cantidad de bits de datos y los bit de parada o paridad, si necesita ejemplos escribame
  Respuesta:  Xavi
Lo que tienes que hacer, es abrir el archivo a enviar con la instruccion ´Open´ en formato de Bit, de esta manera podras ir enviando los bits por el puerto igual que si fueran caracteres.

Seria algo asi:
Open Ruta\nombreArchivo For Binary AS #1

Espero que te sirva de ayuda.

    Pregunta:  2625 - COMO CREAR DSN ODBC PARA SQL SERVER DESDE CODIGO
Autor:  enzo aranibar
Por favor alguien me puede ayudar en crear conexion odbc para sql server desde codigo para no estar configurando en cada equipo el dsn en el panel de control.
  Respuesta:  L.I. Enrique Campos Gómez
Puedes crearlo así:

'dentro de las declaraciones:
Private Const REG_SZ = 1 'Constant for a string variable type.
Private Const HKEY_LOCAL_MACHINE = &H80000002

Private Declare Function RegCreateKey Lib "advapi32.dll" Alias _
"RegCreateKeyA" (ByVal hKey As Long, ByVal lpSubKey As String, _
phkResult As Long) As Long

Private Declare Function RegSetValueEx 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 RegCloseKey Lib "advapi32.dll" _
(ByVal hKey As Long) As Long

'dentro de una función:
Dim DataSourceName As String
Dim DatabaseName As String
Dim Description As String
Dim DriverPath As String
Dim DriverName As String
Dim LastUser As String
Dim Regional As String
Dim Server As String

Dim lResult As Long
Dim hKeyHandle As Long

'Especificar los parametros del DSN.

DataSourceName = "Nombre_DSN"
DatabaseName = "Nombre_DB"
Description = "Descripcion_DSN"
DriverPath = "C:\WINDOWS\SYSTEM32\SQLSRV32.dll"
'AQUI HABRIA QUE BUSCAR EL DIRECTORIO SYSTEM32 DE LAS MAQUINAS, ESTE EJEMPLO ES PARA WINDOWS XP
LastUser = "sa"
Server = "Nombre_Servidor"
DriverName = "SQL Server"

'Crea la Llave del DSN

lResult = RegCreateKey(HKEY_LOCAL_MACHINE, "SOFTWARE\ODBC\ODBC.INI\" & _
DataSourceName, hKeyHandle)

'Establece las Variables del DSN

lResult = RegSetValueEx(hKeyHandle, "Database", 0&, REG_SZ, _
ByVal DatabaseName, Len(DatabaseName))
lResult = RegSetValueEx(hKeyHandle, "Description", 0&, REG_SZ, _
ByVal Description, Len(Description))
lResult = RegSetValueEx(hKeyHandle, "Driver", 0&, REG_SZ, _
ByVal DriverPath, Len(DriverPath))
lResult = RegSetValueEx(hKeyHandle, "LastUser", 0&, REG_SZ, _
ByVal LastUser, Len(LastUser))
lResult = RegSetValueEx(hKeyHandle, "Server", 0&, REG_SZ, _
ByVal Server, Len(Server))

'Cierra la nueva Llave del DSN.

lResult = RegCloseKey(hKeyHandle)

'Abre "Origen de Datos (ODBC)" para mostrar el nuevo DSN
'Especifica el nuevo valor
'Cierra la Llave

lResult = RegCreateKey(HKEY_LOCAL_MACHINE, _
"SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources", hKeyHandle)
lResult = RegSetValueEx(hKeyHandle, DataSourceName, 0&, REG_SZ, _
ByVal DriverName, Len(DriverName))
lResult = RegCloseKey(hKeyHandle)
  Respuesta:  Victor Saldivia
Solo se puede si ocupas una conexion RDO.

´ Crear cadena de palabras clave.
strAttribs = "Description=" _
& "SQL Server" _
& Chr$(13) & "UID=<ID>" _
& Chr$(13) & "PWD=<PWD>" _
& Chr$(13) & "SERVER=<SERVER>"

´ Crea un nuevo DSN o vuelve a registrarlo. rdoEngine.rdoRegisterDataSource <DSN>, _
"SQL Server", True, strAttribs

|<  <<  41 42 43 44 45 46 47 48 49 50 51  >>  >|