PREGUNTAS CONTESTADAS - Visual Basic

 Hay un total de 3030 Preguntas.<<  >> 

    Pregunta:  12598 - MANEJO DE INSTANCIAS ACTIVAS
Autor:  Martin Mela
Estoy desarrollando una aplicación en VB6, que solo debe ser ejecutada una vez. Por el momento, puedo enviarle un mensaje al usuario indicandole que ya existe una aplicación activa con las funciones:
app.previnstace = false
pero lo que necesito en realidad es mostrar nuevamente la instancia ya existente maximizando la ventana de la misma que se encuentra en la barra de tareas.

No se si por API puede hacerse...

Les agradeceria cualquier apoyo a esta pregunta...
  Respuesta:  Martin Mela
Bueno, dicen que probando y probando se resuelven las cosas...

Esta es la forma como resolvi mi problema.

Primero en un modulo general hice la declaración del uso del API ShowWindow de la siguiente forma:

Public Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long

Public xUltInstancia As Long 'Será la referencia a la aplicación anterior

Public Const SW_MAXIMIZE = 3
Public Const SW_MINIMIZE = 6

Sub Main()

If Not App.PrevInstance Then
' La primera vez que se ejecute la aplicación
' se realizara lo siguiente...
frmPrincipal.Show

else
' La segunda vez que se ejecute buscamos la información guardada
' en nuestro registro, y la enviamos a la función API ShowWindow

xUltInstancia = CLng(GetSetting _ (App.Title, "Configuracion", "Instancia", "0"))
ShowWindow xUltInstancia, SW_MAXIMIZE

endif

end sub

y en el evento load de la forma principal hacer lo siguiente:

Private Sub Form_Load()
'Esto solo ocurrira la primera vez que se ejecute la aplicación
' La variable xUltInstancia recivirá el número de manejo de ventana
' que es proporcionado por windows

xUltInstancia = frmPrincipal.hwnd

'Salvamos este numero en el registro de nuestra aplicación
SaveSetting App.Title, "Configuracion", "Instancia", xUltInstancia

End Sub

Espero que esto les ayude... si algun dia tienen un problema similar...

    Pregunta:  12607 - MODIFICAR LA FUNCION DE UN TECLA DEL TECLADO
Autor:  Cristobal Mora Regino
Como puedo configurar el teclado desde Visual Basic, por ejemplo quisiera que al accesar a un programa en VB, me cambiara la tecla +, por la tecla tab, Se lo agradeceria si me contestaran, gracias.
  Respuesta:  SuNcO
Mi chavo, en la pregunta 1087 viene lo ke tu buscas, solo es cuestion de ponerle un If para cuando sea la tecla ke kieres y se mande al buffer otra, puedes hacerlo con el comando SendKey

Si es en un TextBox pues mucho mas facil, solo vez el KeyAscii y lo cambias por otro

    Pregunta:  12612 - PROBLEMA CON LOS DECIMALES EN CRYSTAL REPORT Y SQLSERVER
Autor:  Paulino Garrido
El problema que tengo es que estoy haciendo un programa en VB6 SP5 y tengo que lanzar un report que tiene decimales. La base de datos es SQLServer 7.0 y utilizo un ODBC para enlazar el Crystal Report 8.0 contra la base de datos. Todo ello en Windows 2000

El caso es que el report si lanzo la actualización de datos desde el diseñador del Crystal me muestra los decimales en cambio en cuanto lo lanzo desde VB6 (con el control 'crystal report control') me salen las posiciones decimales pero con 0. Esto es en vez de salir 15,55 sale 15,00.

Haciendo prueba comprobé que esto mismo pasa si el report esta enlazado contra acces a través de un ODBC.
  Respuesta:  ilp ilp
revisa la definición de datos de la bd y el formato de datos en crystal del campo insertado, mete el sp1 o 2 del 2000 y comprueba tu acceso a datos mdactip.exe, si no lo tienes instalalo, tiene toda la pinta de ser una antigua actualización de acceso a datos DSN.

Espero q te sirva

    Pregunta:  12619 - NO ME EJECUTA UN INFORME DEL CRISTAL REPORTS
Autor:  Pepe Juan Marquez
Estoy acabando un programa que gestiona el almacen de una empresa en Visual Basic 5.0 bajo Windows Me. Es la primera vez que utilizo el "Cristal Reports" y noestoy seguro de lo que hago.

He hecho un informe para los albaranes y en la cabecera meto los datos del albaran y lego introduzco una linea para las lineas del albaran y le digo que cambie con el codigo del albaran.
Luego desde el programa llamo al informe pasandole la ruta, la formula y .PrintReport y no me hace nada.

A que se debe? Muchas Gracias
  Respuesta:  Juanjo Navalón
Debes de asegurararte primero en CR. de que vinculas bien los datos de la Cabecera con los de Detalle.

Si esto esta bien, desde VB, despues de pasar la ruta, la formula, etc. tienes que poner ObjetoCrystal.Action = 1

Un ejemplo:

TEXT1 = NUMEROALBARAN

CrystalReport1.DataFiles(0) = App.Path + "\BASEDATOS.mdb"
CrystalReport1.ReportFileName = App.Path + "\report\ALBARAN.rpt"
CrystalReport1.SelectionFormula = "{albarancab.numalba} = " & Text1

CrystalReport1.Action = 1

Espero que te ayude.
Un saludo

    Pregunta:  12633 - COMO MANIPULAR MICROSOFT PROJECT 2000 DESDE VISUAL BASIC 6.0
Autor:  Natasha Sanchez
Estoy realizando una aplicación en Visual Basic 6.0 en la cual tengo que manipular información de Microsoft Project, quisiera saber como hago para abrir Project en Visual Basic y manejar toda la información, como introduzco y saco información de un programa a otro, por ejemplo si quiero hacer una planificación de actividades en Project, y coloco cada una de las actividades y sus duraciones en Visual, como hago para pasarlas a Project y hacer la planificación. Por otro lado me gustaria saber como se trabaja con un comando OLE en el cual se abra Project, cuales son las propiedades que se usan, como por ejemplo, abrir un archivo, crear uno nuevo, guardar la información, cerrar el archivo, en fin todas las funciones que hace Project pero manejadas desde un OLE en Visual Basic.
  Respuesta:  Mariano García Mattío
Te aconsejo que utilices VBA (Visual Basic para aplicaciones)
La manera en que yo lo hago es entrar en la aplicación objeto por ejemplo Project en tu caso y crear una macro con la acción que deseo conocer luego ingresar en el editor para visual basic y tendrás el condigo necesario, solo tendrás que transferirlo a tu programa.
Si deseas más explicación escribeme un correo

    Pregunta:  12654 - VECTORES Y MATRICES
Autor:  Cristian Rojas
hola, espero que esten bien..
como puedo trabajar con vectores y matrices ej. descargando un campo de la bd y guardarla en un vector y despues consultar desde el vector y no utilizar la bd.. gracias...
  Respuesta:  Pepe Juan Marquez
En lugar de cargar los datos de la base de datos en una matriz hazlo en un variant o en una coleccion que sera mucho mas eficiente.
Una colleccion es parecido a una matriz pero que solo ocupa el tamaña utilizado, entonces puedes hacer:
Ej : cargar en la coleccion la tabla de clientes que tiene nombre y codigo

'declaras la coleccion prinicpal y las auxiliares

Set col as new collection
Set aux as new colection
set aux2 as new colecction
'introduces los datos de la base de datos en la coleccion

for i=o to numero_deregistros_en_la_basededatos

aux.add nombre
aux.add codigo
.movenext

next i

'y asignas las colecciones auxiliares a la coleccion principal

col.add aux
col.add aux2

De esta forma lo tienes como una matriz de dos dimensiones que si recorres la dimension 1 tendras los nombre y si recorres la dimension 2 tendras los codigos y estan en la misma posicion de la coleccion en codigo y el nombre

Intentalo

    Pregunta:  12660 - OBTENER EL IDIOMA DE WINDOWS
Autor:  Oscar Guerrero
Quiero atravez de un programa en Visual Basic, saber como puedo obtener el idioma de Windows (ingles o Español). De ante mano Gracias ....
  Respuesta:  Jose A.
Busca información sobre las siguientes APIS:
-- GetSystemDefaultLangID
-- GetUserDefaultLangID
sólo sé que devuelven un dato de tipo INTEGER indicando el lenguaje por defecto del sistema y del usuario actual, respectivamente. A mí, para Español, me devuelven el dato "3082", pero no he encontrado por ningún sitio con qué se corresponde ese valor.
Espero haberte ayudado algo, un Saludo.
  Respuesta:  SuNcO
No estoy seguro pero creo ke es en el win.ini

En la seccion [intl] esta una parte ke dice sLanguage=esm

Me imagino ke si es ingles debe decir in o en

Algo es algo, chekalo

    Pregunta:  12662 - COMUNICACION CON MSCOMM DE FORMA HALF DUPLEX
Autor:  isaac de jesus guevara
tengo un problema al comunicarme a traves del puerto serial en el momento de leer los datos de una aplicacion hecha en pascal la cual trabaja en forma half duplex, como realizo una aplicación de forma half duplex de manera que cuando ejecute la istruccion mscomm.port = true
no se me coloque el modem en full duplex.

gracias
  Respuesta:  victor muñoz
Saludos :

Lo que debes de hacer es configurar tu modem mediante comandos AT, recuerda que tu modem funciona de acuerdo a cuatro configuraciones y de acuerdo a tu modelo de modem y las capacidades que este tenga.

Puedes configurar tu modem en opcion 0 que es datos, opcion 1 que es fax, opcion 8 que es voice y opcion 80 que es view voice.

    Pregunta:  12676 - ¿QUE OTROS INSTALADORES PUEDO USAR CON VISUAL BASIC 6?
Autor:  Kardo Alonso Gallardo Luna
Necesito un programa para realizar las instalaciones de las aplicaciones que realizo, ya que el instalador del visual basic no funciona correctamente y no los puedo instalar en las maquinas que necesito hacer las instalaciones.

ATTE.
  Respuesta:  Carlos Kozlowski
Hola :

Yo te recomiendo que utilices el InstallShield. Este te permitirá crear instalaciones muy buenas, desde las muy basicas hasta muy complejas como instalar servicios de NT.

Al principio es un poco engorroso pero una vez que sacas uno despues es muy fácil. Además te scanea tu proyecto Visual y recupera los Activex y DLL que utiliza.

    Pregunta:  12679 - TABLAS DTA,VB Y PERVASIVE
Autor:  Ing Edgar Octavio Gallardo Campos
Tengo un problema, tengo que enlazar una tabla generada en clipper, tiene la extensión dta. Estoy utilizando además Pervasive como motor de base de datos, y necesito poder abrir estas tablas para contar el número de registros que tienen, además de hacer un chequeo de la información contenida..AYUDA POR FAVOR
  Respuesta:  willson santos
La Forma mas rapida de cominicar es con una conecxion de tipo cadena con ado 2.5 y con el commando de vb tabla1.recordcount obtienes el numero de registros dentro de la tabla la conecxion seria

Public con as adodb.conection

con = conectionstring " xxxxxxxxxxxx"

con.open

|<  <<  126 127 128 129 130 131 132 133 134 135 136  >>  >|