Casa
Top.Mail.Ru Yandeks.Metrika
Foro: "WinAPI";
Archivo actual: 2002.01.08;
Descargar: [xml.tar.bz2];

abajo

Mostrar versión * .exe Encontrar ramas similares


Skiv   (2001-11-05 09:55) [0]

¿Puedo leer el archivo que creo sin usar terceros?
Componente (clases) de tipo RX, LMD.



Digitman   (2001-11-05 10:27) [1]

Usted puede Todos estos componentes en última instancia, abordan las llamadas WINAPI.
GetFileVersionInfo, GetFileVersionInfoSize, VerQueryValue. Como, por cierto, todos los demás componentes: todos acceden a la API desde el interior (más correctamente, los componentes encapsulan las funciones de la API).



Dimka Maslov   (2001-11-05 11:02) [2]


type // File version record type
PFileVersion = ^TFileVersion;
TFileVersion = record
HiVersion : Integer; // Major version number
LoVersion : Integer; // Minor version number
Release : Integer;
Build : Integer;
end;

function FileVersion(const FileName: TString = ""): TFileVersion;
var
S: TString;
hMem: HGLOBAL;
Buf: pointer;
BufSize, Len, dwHandle: DWORD;
VerInfo: PVSFixedFileInfo;
pszName: PAnsiChar;
begin
FillChar(Result, SizeOf(Result), 0);
S:=FileName;
CleanUp(S, True);
if IsEmptyStr(S) then S:=ParamStr(0);
pszName:=@S[1];
BufSize:=GetFileVersionInfoSize(pszName, dwHandle);
if BufSize<>0 then begin
hMem:=GlobalAlloc(GHND, BufSize);
if hMem = 0 then OutOfMemoryError;
Buf:=GlobalLock(hMem);
if Buf=nil then OutOfMemoryError;
GetFileVersionInfo(pszName, dwHandle, BufSize, Buf);
VerQueryValue(Buf, "\", pointer(VerInfo), Len);
with VerInfo^ do begin
Result.HiVersion:=HiWord(dwFileVersionMS);
Result.LoVersion:=LoWord(dwFileVersionMS);
Result.Release:=HiWord(dwFileVersionLS);
Result.Build:=LoWord(dwFileVersionLS);
end;
GlobalUnlock(hMem);
GlobalFree(hMem);
end else Result.HiVersion:=-1;
end;




Dimka Maslov   (2001-11-05 11:06) [3]

En el ejemplo necesitas quitar Limpieza (S, Verdadero)una llamada IsEmptyStr (S)reemplazar con S = ""Y TString en la cuerda



Páginas: 1 rama entera

Foro: "WinAPI";
Archivo actual: 2002.01.08;
Descargar: [xml.tar.bz2];

arriba





Memoria: 0.55 MB
Tiempo: 0.022 c
1-22256
cuestionario de caminata
2001-12-15 08:50
2002.01.08
Lectura de valores desde archivo ini


6-22308
Igor
2001-10-14 09:44
2002.01.08
Intercambio de datos entre cliente y servidor en Delphi


7-22447
Sin nombre
2001-08-26 03:43
2002.01.08
Actualizar iconos


1-22028
tovSuhov
2001-12-18 12:16
2002.01.08
Tal vez alguien sabe ...


3-21984
Señor Andres
2001-12-05 20:39
2002.01.08
Actualización de datos





africaans albanés Arabic armenio Azerbaiyán vasco Bielorruso Bulgarian Catalán Chino (simplificado) Chino (tradicional) Croata Checo Danés Dutch Inglés Estonia filipina Finnish French
gallego georgiano Alemán Griego criollo haitiano Hebreo hindi Húngaro islandés Indonesian irlandés Italiano Japonés Korean letón lituano macedonio Malay maltés Noruego
persa polaco Portuguese Rumano Ruso Serbio Slovak Esloveno Español swahili Sueco Thai turco ucranio Urdu vietnamita galés yídish bengalí bosnio
cebuano esperanto gujarati hausa hmong igbo javanés kannada khmer lao latín maorí marathi mongol nepali punjabi somalí Tamil telugu yoruba
zulú
Английский Francés Alemán Italiano portugués Русский Español