Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 11-10-2006
nicvera nicvera is offline
Registrado
 
Registrado: oct 2006
Posts: 3
Poder: 0
nicvera Va por buen camino
problemas con VB y hlp

Hola,

Tengo un un proyecto en VB al cual le hice una ayuda en .hlp, y este archivo de ayuda tiene unos enlaces a hojas electrónicas (excel), es decir, se abren esos archivos haciendo click sobre los links correspondientes en el hlp. Pero tengo un problema, la primer vez que accedo al hlp desde VB puedo abrir los enlaces, pero cuando vuelvo a abrir el hlp desde VB y trato de abrir los enlaces ya no puedo y me dice un mensaje:

"No se puede encontrar o ejecutar el archivo o programa (Nombre de la ruta del enlace)"

Según ví, al eliminar el .GID sí puedo volver a acceder a los links. Traté de eliminar el .GID desde VB pero no pude porque el .GID es oculto.

Por favor, si alguien sabe qué puedo hacer, espero su colaboración y respuesta.
Responder Con Cita
  #2  
Antiguo 11-10-2006
Robert01 Robert01 is offline
Miembro
 
Registrado: feb 2006
Ubicación: Córdoba, Argentina
Posts: 895
Poder: 19
Robert01 Va por buen camino
Una pregunta ¿Te da la posiblilidad de poner el camino o de buscar donde están los documentos?
Responder Con Cita
  #3  
Antiguo 11-10-2006
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Pues mira en VB como quitar el atributo de oculto, aquí una web con ejemplos.
GetAttr: mirar los atributos:
http://vb-helper.com/howto_get_file_...h_getattr.html

SetAttr: establecer los atributos:
http://vb-helper.com/howto_delete_di...hierarchy.html

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #4  
Antiguo 12-10-2006
nicvera nicvera is offline
Registrado
 
Registrado: oct 2006
Posts: 3
Poder: 0
nicvera Va por buen camino
hola, primero que todo gracias a quienes respondieron. Sé que no era una pregunta común.

Vamos por partes:

Primero, la pregunta de que si me sale la opción de ingresar la ruta... no me sale esa opción, el mensaje de error es un típico mensaje de errores de windows:

(Título) Ayuda de windows

(Cuerpo del mensaje) No se puede encontrar o ejecutar programa (Ruta)

En Ruta es donde está la inquietud del amigo que preguntó que si me dejaba ingresarla. En Ruta simplemente sale la ruta que tiene el link que abre el archivo de excel, esa ruta sólo se puede ver originalemente en el .rtf desde donde se crea el .hlp . Específicamente en mi caso, esa ruta dice lo siguiente:

Aplicaciones\archivo.xls

Me explico: yo tengo el .hlp en un directorio el cual contiene a su vez tambien un directorio llamado Aplicaciones, dentro de ese directorio Aplicaciones está el archivo de excel archivo.xls, es decir, el archivo de ayuda .hlp tiene un link con una ruta "relativa" al archivo de excel que intento abrir.

Eso funciona perfectamente cuando ejecuto el .hlp haciendo doble clic sobre él ( o enter)... arranca el hlp y desde él puedo abrir el archivo de excel a través del link, cierro el hlp, luego lo vuelvo a abrir, y puedo volver a acceder al archivo de excel desde el hlp... hasta ahí todo funciona correctamente.

El problema aparece es cuando llamo el hlp desde mi proyecto de VB, si no existía el archivo .GID antes de llamar al hlp todo funciona correctamente, es decir, puedo abrir el .xls. Pero si existía el .GID antes de abrir el hlp desde VB entonces ya no me deja abrir el .xls, saliéndome el mensaje de error antes descrito; es como si no encontrara el directorio Aplicaciones, el cual está ahí!!!!!.

Según pude observar, hay dos cosas que pueden estar causando el conflicto:
1. La ruta "relativa" al archivo de excel
2. EL archvio .GID

Voy a intentar poner el archivo de excel en el mismo directorio del hlp para simplemente poner el link en el rtf con el nombre del archivo de excel (archivo.xls). Esa podría ser una solución ( aunque sigo sin ver el problema).

Pero al parecer no veo el problema porque no conozco mucho acerca del .GID, sólo sé de él los grandes rasgos: índice de ayuda, se crea automáticamente cuando se ejecuta el hlp, se reemplaza si existe,,,, pero no entiendo por qué cuando lo ejecuto desde VB una vez, ya no me permite abrir el link de excel nuevamente. Bueno, como sea,,,!!!

La otra solución que veo sería eliminar el .GID cada vez antes de ejecutar el hlp, lo cual lo hice manualmente y sí funcionó, pero no he podido programar eso desde vb porque soy novato en vb y no tengo ni idea cómo elimar archivos ocultos (ahí es donde agradezco al amigo que me envió los enlaces para ello, aún no los he visto, voy a intentar la otra solución que es menos destructiva (ya que no tengo qué eliminar archivos) y si no me sirve me pondré a leer los enlaces).

Bueno, escribo todo esto prque seguramente a alguien más le habrá pasado el mismo problema, entonces le voy dejando posibles soluciones....

Si alguien más sabe acerca de todo este problema le agradezco que conteste.
Responder Con Cita
  #5  
Antiguo 12-10-2006
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.556
Poder: 25
egostar Va camino a la fama
Cita:
Empezado por nicvera
El problema aparece es cuando llamo el hlp desde mi proyecto de VB, si no existía el archivo .GID antes de llamar al hlp todo funciona correctamente, es decir, puedo abrir el .xls. Pero si existía el .GID antes de abrir el hlp desde VB entonces ya no me deja abrir el .xls, saliéndome el mensaje de error antes descrito; es como si no encontrara el directorio Aplicaciones, el cual está ahí!!!!!.
Por lo que veo el problema se relaciona con el archivo GID, así que deberías de borrar el archivo.

En Delphi esto es muy fácil, tendrías que leer la ayuda de VB para encontrar una función que te permita hacer eso.

Aqui te muestro en código delphi como se hace

Código Delphi [-]
 
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
   if fileexists('d:\desarrollo\starw\AYUDA.GID') then begin
      deletefile('d:\desarrollo\starw\AYUDA.GID');
   end;
   Application.HelpFile := 'd:\desarrollo\starw\AYUDA.HLP'; 
   Application.HelpJump('hlp_menu');
end;

Por ahi encontré una página donde te habla de eso mismo.

Saludos.
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #6  
Antiguo 12-10-2006
Robert01 Robert01 is offline
Miembro
 
Registrado: feb 2006
Ubicación: Córdoba, Argentina
Posts: 895
Poder: 19
Robert01 Va por buen camino
Tenés que ir a proyecto --> propiedades (nombre del programa) del proyecto y en este poner en "nombre del archivo de ayuda" el camino completo. Por ej.
c:\miprograma\ayuda.hlp. Si no lo encuentra allí trata de buscar el archivo en "mis documentos" o "my documents" y sino da la posibilidad de buscarlo.
Por lo menos a mi visual basic 6 me da la posibilidad.
Yo pienso que los archivos de excel deberían estar también en esos directorios.

saludos
Responder Con Cita
  #7  
Antiguo 12-10-2006
nicvera nicvera is offline
Registrado
 
Registrado: oct 2006
Posts: 3
Poder: 0
nicvera Va por buen camino
hola!

Al amigo que contestó diciendo que pusiera la ruta del hlp en las propiedades le agradezco su información... la verdad no me entendió el problema... es que yo lanzo la aplicación de un hlp desde vb pero no es necesariamente la ayuda general del proyecto... es otra .

Bueno, de todas formas, ya solucioné el problema!!!!! .

Y lo comento a continuación para una futura ayuda a quien tenga ese mismo problema y busque en internet!!!!!

El problema está con las direcciones relativas a la ubicación del hlp en los links del hlp... si el problema tiene algo qué ver con vb lo hemos solucionado desde el hlp. La solución fue poner la ruta al archivo de excel sólo con el nombre del archivo de excel... esa ruta es la que vá en el rtf (ahora que lo pienso de todas formas es una ruta relativa!!!, la diferencia está en que ya no tiene problemas con buscar directorios).

La recomendación es la siguiente: no poner rutas relativas en los links del rtf.
Simplemente poner el hlp en el mismo directorio de los archivos de excel (en mi caso).

Si alguien tiene más dudas o nuevas soluciones bienvenidas sean!!!
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 02:45:26.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi