PREGUNTAS CONTESTADAS - Visual Basic

 Hay un total de 3030 Preguntas.<<  >> 

    Pregunta:  8696 - COMO CONTROLAR EL NúMERO DE PáGINAS QUE SE IMPRIMEN.
Autor:  José Madrid Madrid
Alguien me puede ayudar a realizar un pequeño programa que me permita llevar un registro de todas las impresiones que se realicen en mi PC (número de impresiones). Como habilitar y deshabilitar la impresora desde visual Basic 5.
Muchas personas abusan de la confianza y me gastan mi tinta. No quiero deshabilitar la impresora desde las mismas aplicaciones por que saben como arreglar el problema.

Por favor ayudenme.
  Respuesta:  Jesus Antonio Sanchez Valdez
Que yo sepa, La impresion es controlada por Windows. Como un recurso propio del sistema Operativo.
Y es independiente de cualquier programa.
Mejor habla con las personas que te afectan la tinta, y hazles conciencia del recurso.
Espero encuentres una alternativa. Si se de algo te aviso, amigo. Sayoonara.

    Pregunta:  8702 - APIS USER32 EN WINDOWS 2000
Autor:  Estrella Ruiz de Gregorio
He desarrollado un programa de menús dinámicos utilizando la API de windows User32 en una máquina con windows 98. El problema es que cuando lo voy a instalar en una máquina que tiene windows 2000 no funcionan las llamadas a dicha API.
Me imagino que los tiros iran principalmente por actualizar las dll de windows 98 a 2000 pero cómo se actualizan o si no es así qué debo hacer.
Muchas gracias.
  Respuesta:  Gerald Valdes Lopez
Hola,
no se si es una respuesta muy rebuscada pero podrias probar instalando visual basic en un pc con windows 2000 y pasar la aplicacion alla, entonces creas los archivos de instalacion y todo con las api instaladas en base a windows 2000, tengo entendido que deberian ser compatibles, pero quien sabe, con microsoft todo es posible.

Espero que funcione (deberia funcionar) si no, no dudes en comunicarte conmigo, podriamos buscar otra solucion.

Chao.

    Pregunta:  8709 - RETARDOS DE MENOS DE 1 MS SIN UTILIZAR EL TIMER
Autor:  Tito Moreno Ojeda
Hola a todos, me gustaría saber si hay alguna forma en Vb de hacer intervalos de tiempo sin utilizar el objeto timer, sobre todo intervalos de tiempo menores de 1 ms. Esperando agradecidamente sus respuestas.
  Respuesta:  José Ariel Limandri
Para hacer lo que vos queres tenes que usar la funcion Timer de VB, que te devuelve el nro de segundos transcurridos desde la medianoche. Aunque el valor que te devuelve tiene 2 decimales (por lo cual podriamos hacer una trampa para llegar hasta la centésima de segundo) no es recomendable ya que ni siquera tomando el valor entero tiene una precisión infalible. De todas formas te mando el codigo para ver si te sirve.

Private Sub Wait(MiliSegundos As Long)
Dim Inicio As Double

Inicio = Timer
fin = Inicio + MiliSegundos
Do While Timer < fin
Loop
End Sub

Ojo con esta funcion que tiene un problema si la lanzas cerca de las 00:00, ya que al usar los segundos desde la medianoche del dia de hoy puede entrar en un bucle de 1 dia mas o menos. Pero calculo que te va a ser facil arreglaro

Espero que te sirva. Cualquier duda Maileame. chau

    Pregunta:  8713 - COMO RELACIONAR 2 BASES DE DATOS EN VB5
Autor:  willington bejarano sanchez
soy un programador principiante,y quiero saber como relacionar dos bases de datos obtener su codigo incluido el formulario, y tambien como generar un a consulta y asu vez un informe
  Respuesta:  Paco .
Depende de si estas utilizando el control "DATA" o estas utilizando codigo.

En el primer caso para relacionar las bases de datos (suponiendo que los campos relacionados son del mismo tipo, ya que si no tendrias que convertirlos)

En las propiedades del primer data:

databasename: <ruta 1ra. base de datos>
recordsource: <tabla a relacionar>

En la segundo data lo mismo para la segunda base de datos.

**** EL CODIGO *****

DATA1.RECORDSOURCE="<LA CONSULTA SQL QUE QUIERAS HACER>"
DATA2.RECORDSOURCE="<LA CONSULTA SQL QUE QUIERAS HACER>"

EJ:
DATA1.RECORDSORUCE ="SELECT CODIGOPRODUCTO FROM CLIENTES WHERE CODIGO=" & 'A001'
DATA1.REFRESH
IF DATA1.RECORDSET.RECORDCOUNT>0 THEN
DATA2.RECORDSOURCE="SELECT * FROM PRODUCTOS WHERE CODIGOPRODUCTO=" & DATA1.RECORDSET!CODIGOPRODUCTO
ENDIF


No se si esto te servira pero si tienes dudas o no es eso lo que querias puedes mandarme un e-mail e intentare ayudarte

    Pregunta:  8723 - CONSULTA CON TABLAS DE DISTINTAS BASES DE DATOS
Autor:  alice queen
Hola Colegas:

necesito por favor me indiquen como puedo desde visual basic realizar una consulta a tablas que se encuentran en distintas base de datos.
Desde ya muchas gracias
  Respuesta:  Miquel Garcia
Hola Alice,

He diseñado un programa en visual basic en el cual puedes realizar lo que preguntas.

La Web donde está colocado es: http//es.geocities.com/ndreasoft

Esta aplicación es gratuita.

También hago mención en lawebdelprogramador en la Sección de Nuestros Programas ... Windows 2000 ... Bases de datos.

Espero que sea de tu agrado.
  Respuesta:  JULIO CESAR FONTANILLA IGIRIO
Qurida Alice Queen

tu pregunta no es muy explicita, acerca en que tipos de bases de datos deseas realizar las consultas pero te voy a dar dos (2) ejemplos; el primero es para realizar consultas en msaccess y segundo es para realizar consultas en SQL server (tambien el modelo puede servirte para oracle y otros proveedores).

1)esto es para msaccess, antes debe activar en referencia miscrosoft DAO ver xxx object library
dim oldDb as database,newWs as workspace
dim nuevaconsulta as querydef
set newWs=dbengine.workspaces(0)
set oldDb=newWS.opendatabase("c:\directorio\nombreBD.mdb")
set nuevaconsulta=oldDb.createquerydef("local","select campo,campo,.... from nombre_de_la_tabla condicion")

luego este recordset puedes asignarselo a un control data previamente creado:

set nombredeldatacontrol=nuevaconsulta
y luego puedes navergar.

2)
esto es para sql server, este ejemplo establece si existe o no un usuario dentro de la base de datos.

dim conectem As Connection
dim loguea As String
dim rscliente As Recordset
Set rscliente = New Recordset
Set conectem = New Connection

With conectem
.Provider = "SQLOLEDB" esto varia de acuerdo al proveedor
puede ser oracle,db2,etc
.ConnectionString = "User ID= UserName.Text_ & ;Password =Password ; data source=nombredelamaquina; initial catalog=nombrebasededatos"
.Open
End With
consulta = "select campo,campo,etc from tabla condicion"
Set rscliente = conectem.Execute(consulta)

'comprobar si la contraseña es correcta
If rscliente.EOF = False Then
'colocar código aquí para pasar al sub
'que llama si la contraseña es correcta
'lo más fácil es establecer una variable global
'LoginSucceeded = True
conectem.Close
SIIT.Show
Me.Hide
Else
MsgBox "La contraseña no es válida. Vuelva a intentarlo", , "Inicio de sesión"
txtPassword.SetFocus
SendKeys "{Home}+{End}"
End If
espero que te sirva, en el provider tienes que dirigirte a un libro de VB y averiguar el provider para BD diferentes a SQLSERVER, el del ejemplo es para este tipo de BD.

    Pregunta:  8729 - REGISTRO DE DLL'S
Autor:  Carlos Rivera
Como puedo registrar un DLL por medio de codigo de VB, si alguien me puede ayurar lo agradecere mucho.
  Respuesta:  José Ariel Limandri
Podes ejecutar un shell llamando al regsvr32.exe como te muestro en este ejemplo

private sub RegistrarDLL(File as string)
call shell ("regsvr32.exe " & file, vbHide)
end sub

el unico inconveniente es que te va a quedar una ventana abierta con el resultado de la ejecucion de regserver.
Para cerrar esta ventana podes usar el handler que te devuelve la ejecucion del shell.
Suerte

    Pregunta:  8736 - COMO JUSTIFICAR TEXTO EN VB (NO ALINEAR)
Autor:  Isaac Castañeda
Mi problema es que estoy haciendo un editor de texto en VB con un RTF pero no hayo funciones o API para poder justificar el texto. NO alinearlo a la izquierda ni centrarlo. Espero me puedan ayudar
  Respuesta:  José Ariel Limandri
Si estas utilizando el control RichTextBox te comendo que no soporta el Justificado, por lo menos hasta la version que conozco (SP4).
Si te estas haciendo vos un editor RTF realmente te felicito.
La manera en que podes justificar un texto es usando las siguientes funciones:

split
textwidth
currentX
currentY

No es tan complicado lo que queres hacer, pero un poco largo para contartelo aca. Si queres te puedo hacer un ejemplo y te lo mando por mail. Pero si estas usando el RichTextBox no lo vas a poder hacer(por lo menos visualizar)

    Pregunta:  8742 - ORACLE ¿RETORNA REGISTROS?
Autor:  Alvaro Amaya
He tenido problemas para lograr que un stored procedure en Oracle me retorne registros.
Un artificio comunmente utilizado es ejecutando el comando SET SERVEROUTPUT ON; e internamente colocando el paquete DBMS_OUTPUT.PUT_LINE, pero esto solo funciona si estas utilizando el producto SQL *Plus o el Oracle WorkSheet.
Ademas, este paquete retornaria, según la teoria, un solo row y luego habria que delimitar el registro para obtener cada campo requerido.

Intente realizar un ejemplo que aparece en http://www.actionjackson.com/articles/20000127/#CallingStoredProc pero no me resulto.

La finalidad es tratar de crear los SP y luego invocarlos desde Visual Basic.

He programado en Sybase y SQL Server y no he tenido ningun problema en hacer un SP de Consultas.

Si alguien conoce la manera de hacer esto por favor contactarme. Podemos compartir las ideas en caso de que tengan el mismo problema que yo.
  Respuesta:  Marco Santis
Hola Alvaro:
Yo hice un procedimiento en Oracle -este estaba con un cursor- , y para invocarlo desde VB trabajo con ADO, primero configuro un Commad, después un Parameters y luego traspaso esto a un Recordset y me funciona perfectamente.

Si quieres un código de ejemplo contáctame a mi Mail.

    Pregunta:  8748 - PERCIBIMIENTO DE EVENTOS DESDE FUERA DEL PROGRAMA
Autor:  Dani Ruiz
Ayuda por favor,cómo se puede percibir acciones desde fuera de mi aplicación. Por ejemplo, presionar la tecla <a> y que mi aplicacion lo detecte, y pase después lo que sea, pero que perciba ese evento. Todo esto sin recibir el enfoque mi aplicaión, claro. Muchas gracias de antemano.
  Respuesta:  SuNcO Castañeda
Mi chavo eso lo pregunte yo tambien y la respuesta es la
1087, pero mejor te la pongo aki :

ESTO SE LOGRA CON UN API , TE DARE SOLO LA BASE, LO DEMAS DEPENDE DE TI.
Pon un Timer En tu Form:
Un Text box:

Option Explicit

Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Dim buffer As Integer

Private Sub Timer1_Timer()

Dim intAscii

For intAscii = 1 To 255
buffer = 0
buffer = GetAsyncKeyState(intAscii)

If buffer <> 0 Then
Text1.Text = Text1.Text & Chr(intAscii)
End If

Next

End Sub

Como vez, las teclas se mandan a un textbox ke tu debes poner en tu programa, ya solo tienes ke detectar en OnTextChange si la letra es <a> y ya

Algo mas, cheka varias veces el Interval ke le pongas en el timer, porke a veces puedes recibir <aaa> aunke solo hayas presionado la <a> una vez

    Pregunta:  8755 - COLOR DE FONFO CON EL PRINTER
Autor:  Mariano Laguzzi
Gente: Estoy trancado con una pabada, como puedo hacer para imprimir con el objeto Printer un mensaje con COLOR DE FONDO.
He probado de todo y no me funciona.

Gracias..
  Respuesta:  José Ariel Limandri
Lo que queres hacer es muy facil. Para dar un color de fondo al imprimir tenes que dibujar un cuadrado pintado con el color que queres y escribir sobre este el texto que desees. Ej:

printer.fonttransparent=true ' Esto es porque sino el texto te lo imprime siempre en fondo blanco.
printer.line(100,100)-(500,500), vbred, BF
printer.currentX=100
printer.currentY=100
printer.print "Hola"

printer.enddoc

Suerte. PD: tene ojo con la impresora, ya que si es una laser B/W no todas soportan sombras. Ademas el fontTransparent no siempre funca.

|<  <<  101 102 103 104 105 106 107 108 109 110 111  >>  >|