elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Descripcion de Archivo
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: Descripcion de Archivo  (Leído 8,530 veces)
el_chente23

Desconectado Desconectado

Mensajes: 142



Ver Perfil
Descripcion de Archivo
« en: 23 Agosto 2005, 18:46 pm »

Hola a todos, tengo un problema, tengo tiempo tratando de obtener  la descripcion de un archivo, esa que viene cuando el das propiedades al archivo y en la pestaña de resumen viene una serie de propiedades del archivo que necesito leer, pero ya e buscado funciones o algo para acceder a el y no he podido, intente con la funcion GetFileTitle, pero este me da la decripcion que viene en la pestaña de General de las propiedades, pero ese no me sirve, si alguien me puede ayudar se lo agradeceria.

Un Saludo


En línea

sorcerer


Desconectado Desconectado

Mensajes: 365



Ver Perfil
Re: Descripcion de Archivo
« Respuesta #1 en: 23 Agosto 2005, 20:31 pm »

vas a: project->project1 propietes y hay configuras todo


« Última modificación: 23 Agosto 2005, 20:33 pm por sorcerer » En línea

Las creaciones humanas son imperfectas,
por la imperfeccion de su creador
Slasher-K


Desconectado Desconectado

Mensajes: 1.477


Ver Perfil
Re: Descripcion de Archivo
« Respuesta #2 en: 24 Agosto 2005, 03:32 am »

El objeto App tiene todas las propiedades del programa, la descripción, versión, Nombre de la compañía, etc.

La propiedad FileDescription te da la descripción del programa en tiempo de ejecución.

Saludos.
En línea



A la reina de las profundidades que cuida los pasos de una sombra en la noche :*
el_chente23

Desconectado Desconectado

Mensajes: 142



Ver Perfil
Re: Descripcion de Archivo
« Respuesta #3 en: 25 Agosto 2005, 19:25 pm »

Hola, creo que no me explique bien, quiero obtener esa informacion pero de un archivo x, no de mi proyecto, por ejemplo, tengo un archivo txt, si le das click derecho al archivo y le das propiedades, te aparece la venta de propiedades con 4 pestañas, la ultima pestaña, que es la de resumen, es la que tiene la informacion que necesito sacar por medio de un programa en vb, espero haberme explicado mejor.

Saludos
En línea

NYlOn


Desconectado Desconectado

Mensajes: 842


OOOOHHHHHH, TARAGÜIIII xDDDDDD


Ver Perfil WWW
Re: Descripcion de Archivo
« Respuesta #4 en: 26 Agosto 2005, 00:50 am »

mmm.... me parece haber visot un par de OCX sobre es0...
ahora no recuerdo donde xD, pero busca en (L) Google (L) q seguro encontras XDDDD
si me acuerdo edit0 y t avis0 ::D

CyA
En línea

Slasher-K


Desconectado Desconectado

Mensajes: 1.477


Ver Perfil
Re: Descripcion de Archivo
« Respuesta #5 en: 26 Agosto 2005, 01:13 am »

Ya me parecía que era eso :P. Hace un tiempo puse un post en donde se encontraba el código para eso. Te dejo el fragmento de código. Agrega como referencia la libería win.tlb, ya puse el link muchas veces :P.

Código:
Type FileVersionInfo
    CompanyName      As String
    FileDescription  As String
    FileVersion      As String
    InternalName     As String
    LegalCopyright   As String
    OriginalFileName As String
    ProductName      As String
    ProductVersion   As String
    Comments         As String
    FileOS           As String
End Type

Function GetVersionInfo(Filename As String) As FileVersionInfo
            Dim pFixedInfo As VS_FIXEDFILEINFO
            Dim pFileInfo As FileVersionInfo
            Dim sCharset$, btCharset(4) As Byte
            Dim lCharset&, hCharBlck&
            Dim lInfoSize&, hVersion&
            Dim sVerData$, sVerBlck$, lLen&
            Dim sVerInfo$(9), sData$, i%, r&
            Dim lBinType&
           
  lInfoSize = GetFileVersionInfoSize(Filename, 0&)
  sVerData$ = String$(lInfoSize, 0)
 
  r = GetFileVersionInfo(Filename, 0&, lInfoSize, sVerData)
 
  If r = 0 Then Exit Function
 
  r = VerQueryValue(sVerData, "\VarFileInfo\Translation", hCharBlck, lLen)
 
  If r = 0 Then Exit Function
 
  r = ReadProcessMemory(GetCurrentProcess(), hCharBlck, btCharset(1), lLen)
 
  lCharset = btCharset(3) + btCharset(4) * &H100 + _
             btCharset(1) * &H10000 + btCharset(2) * &H1000000
 
  sCharset$ = Hex$(lCharset)
  sCharset$ = String(8 - Len(sCharset$), "0") & sCharset$
 
  sVerInfo(1) = "CompanyName"
  sVerInfo(2) = "FileDescription"
  sVerInfo(3) = "FileVersion"
  sVerInfo(4) = "InternalName"
  sVerInfo(5) = "LegalCopyright"
  sVerInfo(6) = "OriginalFileName"
  sVerInfo(7) = "ProductName"
  sVerInfo(8) = "ProductVersion"
  sVerInfo(9) = "Comments"

  For i = 1 To 9
    sVerBlck$ = "\StringFileInfo\" & sCharset & "\" & sVerInfo(i)
   
    r = VerQueryValue(sVerData, sVerBlck, hVersion, lInfoSize)
   
    If r Then
      sData = String$(lInfoSize, 0)
     
      r = ReadProcessMemory(GetCurrentProcess(), hVersion, ByVal sData, lInfoSize)
     
      sData = Left$(sData, lInfoSize - 1)
     
      With GetVersionInfo
        Select Case i
          Case 1: .CompanyName = sData
          Case 2: .FileDescription = sData
          Case 3: .FileVersion = sData
          Case 4: .InternalName = sData
          Case 5: .LegalCopyright = sData
          Case 6: .OriginalFileName = sData
          Case 7: .ProductName = sData
          Case 8: .ProductVersion = sData
          Case 9: .Comments = sData
        End Select
       
        If GetBinaryType(Filename, lBinType) Then
          Select Case lBinType
            Case SCS_32BIT_BINARY: .FileOS = "Ejecutable Para Windows De 32 Bits"
            Case SCS_DOS_BINARY: .FileOS = "Ejecutable Para MS-DOS"
            Case SCS_OS216_BINARY: .FileOS = "Ejecutable Para OS/2 De 16 Bits"
            Case SCS_PIF_BINARY: .FileOS = "Acceso Directo A Programa De MS-DOS"
            Case SCS_POSIX_BINARY: .FileOS = "Archivo Ejecutable Para POSIX"
            Case SCS_WOW_BINARY: .FileOS = "Ejecutable Para Windows De 16 Bits"
            Case Else: .FileOS = "Sistema Desconocido"
          End Select
        End If

      End With
    End If
  Next
End Function

Saludos.
En línea



A la reina de las profundidades que cuida los pasos de una sombra en la noche :*
el_chente23

Desconectado Desconectado

Mensajes: 142



Ver Perfil
Re: Descripcion de Archivo
« Respuesta #6 en: 26 Agosto 2005, 02:29 am »

Hola, probe el codigo, pero no me funciona muy bien
Código:
lInfoSize = GetFileVersionInfoSize(Filename, 0&)
sVerData$ = String$(lInfoSize, 0)
 
r = GetFileVersionInfo(Filename, 0&, lInfoSize, sVerData)
If r = 0 Then Exit Function

en esta parte, cuando mando llamar GetFileVersionInfoSize, siempre me devuelve 0, y cuando me devuelve distinto de 0 en la funcion GetFileVersionInfo, se cierra el programa. ¿Funciona para todos los archivos o nadamas para alguno?

Saludos
En línea

Slasher-K


Desconectado Desconectado

Mensajes: 1.477


Ver Perfil
Re: Descripcion de Archivo
« Respuesta #7 en: 26 Agosto 2005, 02:49 am »

A mi me funciona bien  ???. A ver probá lo siguiente:

Código:
lInfoSize = GetFileVersionInfoSize(Filename, 0&)
sVerData$ = String$(lInfoSize, 0)

r = GetFileVersionInfo(ByVal Filename, 0&, lInfoSize, ByVal sVerData)

If r = 0 Then Exit Function

Así tiene que funcionar.

Saludos.
En línea



A la reina de las profundidades que cuida los pasos de una sombra en la noche :*
el_chente23

Desconectado Desconectado

Mensajes: 142



Ver Perfil
Re: Descripcion de Archivo
« Respuesta #8 en: 26 Agosto 2005, 20:05 pm »

Hola, Gracias por la ayuda, efectivamente funciono con ese cambio, pero me salio otro, al llegar a esta linea
Código:
r = VerQueryValue(sVerData, "\VarFileInfo\Translation", hCharBlck, lLen)
me manda este error "No se puede encontrar el punto de entrada de la dll VerQueryValue en Version.dll", la funcion si la tengo declarada, supuse que es porque no tiene referencia a la dll especificada, la intento agregar en las referencias pero me manda este mensaje "No se puede agregar referencia al archivo especificado", ¿que tengo que hacer?, ¿estara desactualizado ese dll?.

PD: Otro detalle es que unicamente me a funcionado para archivos .exe, y los que yo necesito leer son .msi

Saludos
En línea

Slasher-K


Desconectado Desconectado

Mensajes: 1.477


Ver Perfil
Re: Descripcion de Archivo
« Respuesta #9 en: 26 Agosto 2005, 22:22 pm »

Si la declaraste con la instrucción Declare fijate de haberle puesto como Alias "VerQueryValueA", porque ese es el nombre con la que se encuentra en la DLL.

Código:
Declare Function VerQueryValue Lib "version.dll" Alias "VerQueryValueA" (.....) As Long

VERSION.DLL nunca la vas a poder agregar al proyecto porque no es un DLL ActiveX.

Saludos.

EDIT:
Los msi no son ejecutables, son bases de datos y hay un intérprete que los ejecuta. Hay otras funciones en la API para usar los MSI pero ahora no tengo tiempo, más tarde te digo cuales son porque no las recuerdo.
« Última modificación: 26 Agosto 2005, 22:24 pm por Anhur » En línea



A la reina de las profundidades que cuida los pasos de una sombra en la noche :*
Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
NetCat 1.1(Descargar) + Descripción « 1 2 »
Hacking
electrodev 14 24,404 Último mensaje 1 Mayo 2013, 19:43 pm
por electrodev
[Ayuda]Editar descripcion
ASM
AdictoxD 3 3,414 Último mensaje 18 Febrero 2012, 19:42 pm
por Eternal Idol
imagenes con descripcion html
Desarrollo Web
landerzx 1 1,742 Último mensaje 13 Septiembre 2013, 21:30 pm
por Shell Root
Llenar pestaña de Descripcion
Windows
ftorrese1 1 1,701 Último mensaje 29 Enero 2014, 23:50 pm
por engel lex
MOVIDO: Como programar una descripcion en c#
Programación General
Eleкtro 0 1,568 Último mensaje 26 Octubre 2015, 20:11 pm
por Eleкtro
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines