| Usuario |
Como hacer correr mi aplicacion en... |
Desconocido
|
| Enviado - 10/3/2003 |
| |
Gracias de antemano por lo que me puedas guiar...
Estoy terminando de dasarrollar un sistema y trabajará en red, mi problema es como hacer la "LIGA" para que la aplicacion tome la direccion o ruta donde esta mi base de datos, esta B.D. esta hecha en access.
Yo estoy haciendo lo siguiente: Instalo la aplicacion en las dos maquinas y la base de datos en una sola, y es ahy donde nace mi duda de lo que te explique.
Si es un archivo ini, enviame la sintaxis a digitar y como lo hago, si es un modulo?
Gracias, espero tener una respuesta....
Es urgente
Martin.
|
| |
|
fmarredo
493 Mensaje(s)
|
| Enviado - 11/3/2003 |
| |
Tenés un par de posibilidades:
1. Guardar la ruta a la DB en el registro de Windows utilizando las instrucciones SaveSetting y GetSetting. Es más "profesional" pero en caso de que quieras modificarla manualmente tenés que un archivo .reg para escribir la nueva información o acceder al registro directamente, aunque esto no podés hacerlo en forma remota salvo utilizando un programa tipo PC Anywhere, Terminal Serer o algo así.
2. Usar un archivo .ini. Esto es más sencillo, ya que al ser un archivo de texto común podés modificarlo fácilmente (lo cual en ciertos casos es un problema).
Un archivo ini tiene secciones (entre corchetes) y entradas en cada una de las secciones, por ej:
[Seccion1]
Entrada1=valor1
Entrada2=valor2
[Seccion2]
Entrada1=valor1
Entrada2=valor2
Para acceder a un archivo ini se usan un par de API. Te paso además funciones listar para leer y escribir un archivo ini. Ponés todo en un módulo general y ya está.
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
Public Function EscribirIni(ByVal strFile As String, ByVal strSeccion As String, ByVal strClave As String, ByVal strTexto As String) As Boolean
On Error Resume Next
EscribirIni = CBool(WritePrivateProfileString(strSeccion, strClave, strTexto, strFile))
End Function
Public Function LeerIni(strFile As String, strSeccion As String, strClave As String, Optional strDefault As String = vbNullString) As String
Dim strBuffer As String * 255
Dim intTamLeido As Integer
intTamLeido = GetPrivateProfileString(strSeccion, strClave, vbNullString, strBuffer, Len(strBuffer), strFile)
If intTamLeido = 0 Then
LeerIni = strDefault 'si no encontró nada devuelve el valor por default
Else
LeerIni = Left$(strBuffer, intTamLeido)
End If
End Function
|
| |
|
|
|