Cambiar un nombre de la ruta del escritorio

Estoy creando un proyecto en vb 6.0 ya muy avanzado y funcionando muy bien, mi problema es que en el equipo que lo trabajo tiene un APP.path así: C:\Users\arang\Desktop.

Pero si lo copio para utilizarlo en otro equipo, este otro tiene esta app.path : C:\Users\fernando\Desktop.

mi pregunta es : como puedo cambiar laruta que tiene \fernando\ y ponerle \arang\.

1 respuesta

Respuesta
3

Se me ocurren varias opciones:

Una: En vez de usar referencias absolutas (C:\Users\arang\Desktop), puedes usar referencias relativas, con App. Path, que te dará la ruta a la carpeta donde tengas el ejecutable. También puedes probar con CurDir()

Dos: Comprobar si existe una de las rutas, si existe al usas y si no usas la otra. Algo así:

RutaBD="C:\Users\arang\Desktop"
If Dir(RutaBD,vbDirectory)="" then
RutaBD="C:\Users\fernando\Desktop"
End if

es decir, le asignas a una variable de texto una de las rutas, con el if compruebas si existe o no. Si no existe, le cambias el valor de la variable a la otra ruta.

Tras la comprobación, en RutaBD tendrás la ruta del directorio que exista (en uno u otro PC) y ya la puedes usar para lo que quieras.

¡Gracias! por tu repuesta voy a probarla. 

Hola Sveinbjorn El Rojo, perdona si abuso un poco. en mi proyecto el cual tiene varios formularios y en cada formulario varios eventos y en los eventos estaba utilizando complementos ADODC asociados a la ruta y tabla por su asistente ( ese era el problema de la ruta , lo solucione con tu ayyuda y la APPpath por código ).

la pregunta es. en cada evento con varias preguntas o sea opciones e colocado AdodcCONSULTAMOVIMIENTOS.CommandType = adCmdText
AdodcCONSULTAMOVIMIENTOS.ConnectionString = "Provider=Microsoft.ace.OLEDB.12.0;Data Source=" & App.Path & "\sat_getafe.accdb;Persist Security Info=False"
AdodcCONSULTAMOVIMIENTOS.RecordSource = "SELECT * From TablaMOVIMIENTOS WHERE TablaMOVIMIENTOS.AÑO='" & año & "' order by mes asc"
AdodcCONSULTAMOVIMIENTOS.Refresh

es correcto o no ya que se repite todo el código para cada opción.

Gracias

No es ni correcto ni incorrecto. Si te funciona, está bien hecho, aunque tengas que hacer un copia-pega del mismo código para cada evento.

VB 6 no lo tengo muy dominado, pero en VBA (que es bastante parecido), podrías hacer un procedimiento público o a nivel de formulario con la parte común del código e invocarlo desde cada evento. Pero si tal como lo tienes te funciona, déjalo estar para no complicarte demasiado.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas