Hay un total de 3030 Preguntas. | << >> |
Pregunta: | 41942 - CÓMO HACER UN BACKUP DE MI DB SQL 7 DESDE VB 6.0 |
Autor: | Luis Muro |
Deseo poder hacer un Backup de mi base de datos de SQL 7.0 desde Visual Basic, enviarlo a otro servidor y, desde allí restaurarlo (el otro servidor tiene también el SQL 7.0 con la base de datos ya creada, incluída las mismas tablas).
Ambos servidores están bajo la misma plataforma y tienen instalado el mismo sistema en VB 6.0, con la diferencia que el primero sólo puede enviar información y el segundo recibirla. Espero puedan ayudarme con esto. Muchas gracias. |
Respuesta: | Luis Muro |
Ya lo conseguí. Gracias de todas maneras.
Aquí la sección del código para hacerlo: Dim strBackup as String ' Create a Backup object and set action and source database properties. Dim oBackup As New SQLDMO.Backup oBackup.Action = SQLDMOBackup_Files oBackup.Database = "Northwind" ' Example illustrates backup of multiple file groups. oBackup.DatabaseFileGroups = "[PRIMARY],[NorthwindTextImg]" ' Example illustrates a striped backup using two target devices. Note: ' Device creation is not illustrated in this example. oBackup.Devices = "[NorthDev1],[NorthDev2]" ' Optional. Backup set name and description properties provide ' descriptive text when backup header is displayed for the device(s). oBackup.BackupSetName = "Northwind_FileGroups_" & Date & "_" & Time oBackup.BackupSetDescription = _ "Backup of PRIMARY and NorthwindTextImg filegroups." ' Call GenerateSQL method to generate the Transact-SQL command batch. ' The command batch returned can provide a value for the Command ' property of a JobStep object. ' Note: A connected SQLServer object is not necessary for routine ' execution. strBackup = oBackup.GenerateSQL Para esto se debe agregar a nuestro proyecto, la Referencia a: Microsoft SQLDMO Object Library (SQLDMO.RLL) Espero que a alguien le sirva. Adios. |
Pregunta: | 42027 - MAIL EN VISUAL BASIC |
Autor: | Roger Torres CArrion |
Hola, quiere enviar un mail desde visual basic, pero no quiere mandarlo por outlook y otras aplicacion , quiero que sea independiente, con MAPI, o algo asi, y no quiero que utilize SMHTP o algo asi, dentro de ese mail, quiero enviar un archivo adjunto por favor ayudenme ok ?, gracias de antemano, saludos a todos. |
Respuesta: | SuNcO |
En esta misma web en la seccion de Codigos esta un Codigo (algo viejo pero funcional) de lo que tu buscas
http://www.lawebdelprogramador.com/codigo/enlace.php?idp=60&id=93&texto=Visual+Basic Ojo, es imposible enviar mails sin servidor SMTP, utiliza el de tu ISP o alguno que permita relay |
Pregunta: | 42071 - BASES CON CONTRASEÑA |
Autor: | Mariano Cócora |
Quisiera saber como abrir una base de Access 97 con contraseña mediante codigo desde Visual Basic 6.0 sin usar objeto data, mediante variables recordset y demas. Desde ya muchas gracias! |
Respuesta: | Oswaldo Monagas |
Abrir con ADO estableciendo usuarios
'Agregar en las referencias 'Microsoft ActiveX Data Objects 2.0 Library 'o alguna version mas reciente 'declarar esto en un módulo .bas Private DBConnection As New ADODB.Connection 'Abre una base de datos access 'Regresa : 'True = Exito al conectar 'False = Error al conectar ' Public Function AbrirBaseDatosAccess(ByVal BaseAccess As String, _ Optional ByVal Access2000 As Boolean = False, _ Optional ByVal Usuario As String = "", _ Optional ByVal Password As String = "") As Boolean On Error GoTo ErrorAbrirBaseDatosAccess Dim ret As Boolean Dim Conexion As String ret = True If Not Access2000 Then 'access 97 Conexion = "Provider=Microsoft.Jet.OLEDB.3.51;" _ & "Persist Security Info=False;Data Source=" & BaseAccess Else 'access 2000 Conexion = "Provider=Microsoft.Jet.OLEDB.4.0;" _ & "Persist Security Info=False;Data Source=" & BaseAccess End If DBConnection.ConnectionTimeout = 0 'no hay limite de espera de tiempo If Usuario <> "" Then DBConnection.Open Conexion, Usuario, Password Else DBConnection.Open Conexion End If GoTo SalirAbrirBaseDatosAccess ErrorAbrirBaseDatosAccess: ret = False MsgBox "AbrirBaseDatosAccess : " & Err & " " & Error$, vbCritical Resume SalirAbrirBaseDatosAccess SalirAbrirBaseDatosAccess: AbrirBaseDatosAccess = ret Err = 0 End Function Otra forma: Abrir una base de datos con seguridad desde ADO Permite abrir desde Visual Basic una base de datos cuando hay establecida seguridad a nivel de usuario La seguridad utilizada convencionalmente por Microsoft Access es una seguridad a nivel de usuario, controlada desde los ficheros .MDB y .MDA o .MDW (según versión de Microsoft Access). NOTA: Aunque se disponga de Microsoft Access en idioma castellano y el usuario se llame Administrador, es necesario pasar "Admin" como UserID, y no "Administrador". Microsoft Access 7.0 y Microsoft Access 97 también incorporan otro tipo de seguridad, asociada a la base de datos (se protege la base de datos con una contraseña que forma parte del fichero .MDB, y que solamente es solicitada al abrir ésta). El código aquí incluido permite abrir desde Visual Basic una base de datos cuando hay establecida seguridad a nivel de usuario. Previamente, desde el entorno de Microsoft Access se ha asignado al usuario Administrador (que es por defecto el propietario de todas las bases de datos) una contraseña ("ejemplo"). Esto se hace en Access 97 en la opción de menú Herramientas, Seguridad, Cuentas de usuario y de grupo y, una vez ahí, accediendo a la pestaña Cambiar contraseña de conexión. A partir de entonces, al abrir Access será necesario proporcionar el usuario y la contraseña. También a partir de entonces, para abrir un MDB desde VB será necesario pasarle el usuario y la contraseña. Dim Cn As New ADODB.Connection Dim strCn As String strCn = "Provider=Microsoft.Jet.OLEDB.3.51;" & _ "Data Source=nwind.MDB;" & _ "Jet OLEDB:System database=c:\winnt\system32\System.MDW" Cn.Open ConnectionString:=strCn, _ UserID:="Admin", Password:="moises" |
Pregunta: | 42129 - MARQUESINA PARA VISUAL VASIC 6.0 |
Autor: | Santiago Zuñiga Shaik |
Existe un componente OCX, que me permita mostrar un texto movil en un formulario |
Respuesta: | Marito |
Tenes que hacer lo siguiente:
Usando un PictureBox como contenedor, agrega dentro de el un label suponiendo que el picture se llama picture1 y el label label1: agrega en el formulario un timer con el la propiedad interval en un valor adecuado a la velocidad que le queres imprimir al label. La propiedad autosize el label en true en la seccion general del formulario declara una variable dim posx as long en el evento load del form posx=picture1.width label1.left=posx en el evento timer del timer posx=posx-100 'con el 100 tambien modificas la velocidad del label if posx<-label1.width then posx=picture1.width en if label1.left=posx Espero te sirva. Salu2. Mario |
Respuesta: | Rafael Salas |
que tal primero tienes que dirigir el cursor al la barra de herramienta que se encuentra en el menu insertar del programa visual basic 6.0, insertas los toolsbarts y escribes la marquesinas o le insertas la imagen que desees que se despliegue por el programa.
PARA ACLARAR CUALQUIER DUDA ME PUDES ENVIAR UN CORREO Y YO TE RESPONDERE A LA BREVEDAD POSIBLE. |
Pregunta: | 42134 - WINSOCK PARA MAS DE UNA CONE |
Autor: | Daniel Irias |
Tengo un servidor donde recibo el tiempode uso de una pc.
El servidor funciona bien con un cliente conectado PERO el problema es cuando quiero conectar al servidor mas de un cliente. Obtengo un error que supongo que porque el sevidor ya tiene el puerto de recepción abierto o algo por el estilo- QUE PUEDO HACER PARA QUE EL SERVIDOR RECIBA MAS DE UNA CONECCION |
Respuesta: | Marito |
Lo que tenes que hacer, si estas trabajando con un control winsock es lo siguiente:
Con el control crear una matriz de controles ejemplo: la propiedad index del winsock, ponerla en 0 y cargar el resto de los controles en tiempo de ejecucion, asignándoles distintos puertos para la coneccion, sino lo que va a suceder que solo va a funcionar la última pc que se conecte, el resto va a permanecer "colgados". Por supuesto para la coneccion tenes que tener en cuenta los distintos Ip. Espero te sirva. Salu2. Mario. |
Pregunta: | 42139 - SCROLL BAR EN LISTBOX |
Autor: | Jose Castellanos |
Hola y gracias de antemano por la ayuda, mi problema es el siguiente:
Tengo un listBox que carga registros de una base de datos, pero algunos registros son demasiado largos y no se visualizan todos los caracteres en el listbox, y no encuentro una propiedad de Scroll bar para mostrar toda la longitud del Item, hay alguna forma de mostrar todo el contenido del Item ??? La revise en las pregustas contestadas y por contestar y no encontre nada paracido. Nuevamente Gracias. |
Respuesta: | Héctor Shamir Pérez |
Hola Jose, No existe un scroll horizontal para los ListBox a exepción de cuando trabajas con columnas.
Recomiendo que trabajes con un FlexGrid y actives la propiedad AllowUserResizing. O en ultimo de los casos trabaja con un simple TextBox y la propiedad Multiline Espero te sirva. |
Pregunta: | 42140 - COMPROBAR USUARIO DE WINDOWS NT EN UNA APLICACION DE VB 6.0 |
Autor: | Leonel Sánchez |
Hola Amigos!
Les planteo mi situación: yo actualmente estoy desarrollando un sistema para ser usado por varios usuarios pertenecientes a una red bajo windows NT. Entonces necesito que la aplicación comprube que el usuario que va entrar al sistema realmente exista en tanto como usuario de la red como en mi sistema. Y asi darle los permisos que él tiene al acceder al sistema. Ejemplo: mi login en la red es lsanchez, dentro del sistema yo tengo la maxima prioridad, entonces yo abro mi sesion en la red desde cualquier maquina y al entrar al sistema el debe pedirme el login y el password q yo use para abrir sesion en la red. y si el sistema comprueba satisfactoriamente q estoy registrado en el sistema y ademas soy usuario de la red, luego me de paso al sistema. Bueno no se si me explique bien, pero es que este problema me tiene mortificado y quiero salir de él. Porque es urgente para mi trabajo. Sin mas, les agradezco su pronta ayuda. Gracias |
Respuesta: | Noe Saenz |
Tendrias que explicarte mejor para saber que es lo que quieres hacer, yo estoy desarrollando un sistema para la red de mi escuela que hace algo similar a lo que creo que necesitas, se trata de un sistema para agregar a los usuarios como cuentas de inicio de secion windows, y que les establece un password, pero necesitarias una base de datos (puede estar hecha en access, yo te ayudo despues a convertirla en el formato que necesitas) Ponte en contacto conmigo para desarrollar una solucion a tu problema |
Pregunta: | 42222 - API PARA OBTENER EL APELLIDO DEL USUARIO DE WINDOWS |
Autor: | David Sanchez Lopez |
Hola, me gustaria saber como se obtienen los apellidos del usuario de windows con visual basic.
Con la api getUserName() solo obtengo el nombre Gracias |
Respuesta: | SuNcO |
Intenta con esto, a mi me funciona bien (son 3 lineas)
Private Sub Form_Load() Set Registro = CreateObject("WScript.Shell") MsgBox Registro.RegRead("HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\RegisteredOwner") Set Registro = Nothing End Sub En Proyecto / Referencias checa si hay uno llamado OLE Automation activado. Esto es en Windows XP. En Windows anteriores no recuerdo cual es la clave donde se guardan esos datos |
Pregunta: | 42226 - ABRIR REPORT DESDE VB Y B.D.ORACLE |
Autor: | maria sanchez |
tengo este código que sirve para pasar a un informe que tiene un subinforme no vinculado con el informe principal, las selection formula de los dos desde el programa.
si el fichero .rpt hace referencia a b.d. en access y sin ninguna contaseña de acceso, funciona correctamente. Pero lo que quiero es que me muestre los dato del informe y que sean de una base de datos en oracle y que me pida por código de v.b. el usuario,contraseña, nombre de la b.d.. Lo que no se es la sentencia de codigo para que haga la conexión a la base de datos oracle. Option Explicit Dim rep As CRPEAuto.Report Private Sub CmdPrueba_Click() Dim Crystalapp As New CRPEAuto.Application Dim xx As CRPEAuto.Window Dim ww As View Dim rep2 As Object With Crystalapp Set rep = .OpenReport("C:\SUBREPORT\INFORME.rpt") Set rep2 = rep.OpenSubreport("SUBINFORME") End With With rep 'FORMULA PARA EL INFORME GENERAL .RecordSelectionFormula = " {ARTICULOS.NOMBRE} like '" & TxtNombre & "'" End With With rep2 'FORMULA PARA EL SUBINFORME .RecordSelectionFormula = " {PEDIDOS.CODIGO} like '" & TxtCodigo & "'" End With rep.Preview "TITULO DEL INFORME" End Sub agradecería que alguien me lo pudiera resolver.muchas gracias |
Respuesta: | Rafael H. Yzarra M. |
Existen dos vertientes dentro de la respuesta que te envío:
PRIMERO: Si dispones del Software Crystal Report 8.0 (o superior), la codificación no sería necesaria, debido a que sólo tendrías que enlazar la Base de Datos ubicada en Oracle con el editor de reportes, a través del item del menú NUEVA BASE DE DATOS. Posteriormente, en el editor de código de VB, en el evento del objeto con el cual solicitas al programa el envío de datos desde la B. de D, debes de colocar: . . . CR.'Item que permite insertar una sentencia SQL al reporte'= 'Sentencia SQL' CR.ReportSource='Cadena que ubica al archivo .rpt que contiene el_ reporte' CR.PrintReport . . . SEGUNDO: De no disponer del editor de reportes, entonces, recurre al uso de un objeto de conexión ADODB, a fin de enlazar la aplicación de VB con la Base de Datos en Oracle. Lo anterior, se puede realizar así: Paso 1: Declara los objetos previamente, inmediatamente después de Option Explicit: Dim Rs as ADODB.Recordset Dim Cn as ADODB.Connection Dim CmdStr as String Paso 2: Haz válida la presencia de dichos objetos en Form_Load(): ---------------------------------- Set Rs = New ADODB.Recordset Set Cn = New ADODB.Connection Cn.Open " 'Cadena de conexión con la base de datos' " Rs.ActiveConnection = Cn ------------------------------------ ¿Cómo obtener dicha cadena de conexión? simplemente: * Abre un ADODC del cuadro de objetos * Introdúcete en la lista de las propiedades, en el item PERSONALIZADO * Al accederlo, selecciona el Option Button 'Cadena de conexión' * Sigue las instrucciones que te indican los cuadros de diálogos que aparecerán. Seguidamente de obtener la cadena de conexión, llévala directamente al editor de código, y la colocas en donde se sugirió. A partir de ese momento, te encuentras conectada con la Base de Datos. Posteriormente, utilizando la codificación adecuada, enlaza la B. de D. con el objeto CR. creado; posiblemente pueda ser: Set CR.DataSource = ' Ubicación del reporte' ººººººººººººººººººººººººººººººººººººººººººººººººººº Espero que lo indicado ayude a solventar tu problema |
Pregunta: | 42236 - COMO MANEJAR UN LISTBOX EN UNA BUSQUEDA |
Autor: | Carlos Muñoz |
estoy haciendo una busqueda en una DB con un data y quiero que todos los elementos encontrados aparescan en un listbox.
gracias |
Respuesta: | Rafael H. Yzarra M. |
Hagamos la siguiente supocición: deseas acceder a la tabla CLAVES DE NÓMINA (Clave_Nom), la cual tiene registrada los valores:
03, 07, 73, 74, 75 Te sugiero que procedas de la siguiente forma (funciona eficientemente, cuando la base de datos no registra una importante cantidad de datos): 1ero: Extrae un objeto ADODC del cuadro de herramientas. 2ndo: Al ubicarse sobre el formulario, en el listado PROPIEDADES, selecciona el Item ' Personalizado'. 3ero: Allí, conéctate a la base de datos ya sea, por cadena de conexión, o elige el objeto ODBC en donde depositaste la base de datos(*) 4rto: Acto seguido, en el item 'Registro' (o algo similar) del cuadro de diálogo mostrado al seleccionar 'Personalizado', elige la tabla de donde tomarás los datos (En nuestro caso, será Clave_Nom). Así mismo, supondremos que: En el ADODC -------> Name ADC En el ListBox ---------> Name LstBx A continuación, en el editor de código, se coloca en el procedimiento adecuado según nuestra aplicación (Supondremos que elijo Form_Load), se colocará el siguiente código: ------------------------------------ With ADC .MoveFirst For i = 0 to .Recordset.RecordCount - 1 LstBx.List( i + 1) = .Fields!Clave_Nom Next i End With Si es por objeto de conexión ADODB, el proceso es más engorroso y requiere de realizar pasos que requieren de saber cómo se estructura la aplicación; de poder lograrlo a través de ellos, el método es altamente efectivo y rápido al obtener los datos. A pesar de lo dicho, el método anterior es muy útil. Espero que te sea de utilidad. |
|< << 241 242 243 244 245 246 247 248 249 250 251 >> >| |