Q&A

  • 파일 버젼정보를 구하고 싶은데... 안되네요
델파이 실행파일의 버젼정보를 얻을려고 여기 저기서 참고하여

다음과 같은 함수를 작성하였는데 이상하게 안됩니다.

정보를 얻을 수가 없습니다.

어디서 잘못한 것인가요?

도와 주세요...



procedure TfrmMain.About1Click(Sender: TObject);

const

n_Info = 10;

InfoStr : array [1..n_Info] of String =

('CompanyName', 'FileDescription', 'FileVersion', 'InternalName',

'LegalCopyright', 'LegalTradeMarks', 'OriginalFilename',

'ProductName', 'ProductVersion', 'Comments');

var

Info : String;

BuffSize : THandle;

Len : UINT;

i: LongWord;

Buff : PChar;

Value : PChar;

begin

Info := Application.ExeName;

BuffSize := GetFileVersionInfoSize(PChar(Info),BuffSize);

if BuffSize > 0 then begin

Buff := AllocMem(BuffSize);

GetFileVersionInfo(PChar(Info),0,BuffSize,Buff);

Info := Info + ':';

for i := 1 to n_Info do

if VerQueryValue(Buff,PChar('StringFileInfo40904E4'+

InfoStr[i]), Pointer(Value), Len) then

Info := Info + #13 + InfoStr[i] + '=' + Value;

FreeMem(Buff,BuffSize);

ShowMessage (Info);

end else

ShowMessage ('No FileVersionInfo found');

end;

1  COMMENTS
  • Profile
    각시탈 2000.05.20 02:02
    저도 인터넷을 돌아 다니다..

    우연히..

    도움이 되셨으면 합니다.



    procedure TForm1.Button6Click(Sender: TObject);

    const

    InfoNum = 10;

    InfoStr : array [1..InfoNum] of String =

    ('CompanyName', 'FileDescription', 'FileVersion', 'InternalName',

    'LegalCopyright', 'LegalTradeMarks', 'OriginalFilename',

    'ProductName', 'ProductVersion', 'Comments');

    var

    S : String;

    n, Len, i : Integer;

    Buf : PChar;

    Value : PChar;

    FileNames : String;

    begin

    if not OpenDialog1.Execute then System.Exit;

    FileNames := OpenDialog1.FileName;



    S := FileNames;//Application.ExeName;

    n := GetFileVersionInfoSize(PChar(S),n);

    if n > 0 then begin

    Buf := AllocMem(n);

    Memo1.Lines.Add('FileVersionInfoSize='+IntToStr(n));

    GetFileVersionInfo(PChar(S),0,n,Buf);

    for i:=1 to InfoNum do

    if VerQueryValue(Buf,PChar('StringFileInfo
    • 하얀까마귀
      2000.05.18 12:41
      안녕하세요 하얀까마귀 입니다. 제가 인터베이스는 안써봐서 정확한 답변이 될지는 모르겠는데... 일...
    • 최석기
      2000.05.18 05:25
      한승구 wrote: > 실행되는 화면위에 있는 Panel 컴퍼넌트를 > 마우스로 드래그해서 옮기려면 어떻게 > ...
    • 한승구
      2000.05.18 19:36
      최석기 wrote: > 한승구 wrote: > > 실행되는 화면위에 있는 Panel 컴퍼넌트를 > > 마우스로 드래그해서...
    • 황유동
      2000.05.18 20:33
      한승구 wrote: > 최석기 wrote: > > 한승구 wrote: > > > 실행되는 화면위에 있는 Panel 컴퍼넌트를 > ...
    • 임형호
      2000.05.18 07:26
      사발우성 wrote: > 전 SQL검색기 폼에서 > > 콤보박스와 에디트박스를 사용해서 > > 콤보박스로 나...
    • 초보자
    • 2000.05.18 05:05
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 갱민이
      2000.05.18 11:36
      초보자 wrote: > form1 := Tform1.create(application) 과 > form1 := Tform1.create(self) 차이를 알면 ...
    • 한차으히
      2000.05.18 08:56
      초보자 wrote: > form1 := Tform1.create(application) 과 > form1 := Tform1.create(self) 차이를 알면 ...
    • 왕초보
    • 2000.05.18 05:05
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 홍세비
      2000.05.18 09:18
      왕초보 wrote: > > 메일 보내는 컴포넌트 입니다... > > 그런데... 한글을 쓰면... 깨지는 디요? > ...
    • 임형호
      2000.05.18 07:28
      델파이 초보 wrote: > Dbgrid에 나타난 내용을 dbgrid상에서 수정하여 저장할 수는 없나요? > 조언 부탁...
    • 사발우성
      2000.05.18 05:27
      델파이 초보 wrote: > Dbgrid에 나타난 내용을 dbgrid상에서 수정하여 저장할 수는 없나요? > 조언 부탁...
    • 조규춘
      2000.05.18 07:14
      사발우성 wrote: > 델파이 초보 wrote: > > Dbgrid에 나타난 내용을 dbgrid상에서 수정하여 저장할 수는 ...
    • 코림
    • 2000.05.18 03:48
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 빙구
      2000.05.18 04:01
      예전에 cti작업을 좀해봤었는데 어떤걸 사용하시는지.. 다이얼로직 보드를 사용하신다면 쉽게 구현이 되는...
    • 순철
    • 2000.05.18 03:35
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 신승철
    • 2000.05.18 03:16
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 조규춘
      2000.05.18 03:39
      신승철 wrote: > 다들 수고가 많으십니다. > 다름이 아니오라. StringGrid에는 FixedCols라는 Property가...
    • 신승철
      2000.05.18 19:59
      조규춘 wrote: > 신승철 wrote: > > 다들 수고가 많으십니다. > > 다름이 아니오라. StringGrid에는 Fix...
    • 조규춘
      2000.05.18 21:17
      신승철 wrote: > 조규춘 wrote: > > 신승철 wrote: > > > 다들 수고가 많으십니다. > > > 다름이 아니...
    • 하얀까마귀
      2000.05.18 11:07
      안녕하세요 하얀까마귀 입니다... 죄송한데.. 그냥 RecordCount하시면 안되나요??? 이걸 모르시지는 ...
    • 어린왕자
      2000.05.18 12:02
      앗..죄송..레코드수입니다.. 그니깐..보통 데이타가 나온 그리드에..앞에다..칼럼하나를 더붙여서..자동증...
    • 하얀까마귀
      2000.05.19 01:49
      안녕하세요 하얀까마귀 입니다... 검색한번 해보시면 되는데.... 13739, 12275에 얼마전 제가 올린 ...
    • 조규춘
      2000.05.18 03:33
      어린왕자 wrote: > 질문 그대로입니다.. > 검색 결과 필드의 갯수를 알고 싶어서 그러는데.. > 어떻게 ...
    • 최석기
      2000.05.18 03:24
      어린왕자 wrote: > 질문 그대로입니다.. > 검색 결과 필드의 갯수를 알고 싶어서 그러는데.. > 어떻게 ...
    • 황남철
    • 2000.05.18 02:48
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 신범호
      2000.05.18 03:11
      황남철 wrote: > procedure TFDATA0102.BtnFindClick(Sender: TObject); > var > i : integer; > i...
    • 김수봉
      2000.05.18 03:00
      황남철 wrote: > procedure TFDATA0102.BtnFindClick(Sender: TObject); > var > i : integer; > i...
    • 박충국
    • 2000.05.18 02:38
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 강인규
      2000.05.18 03:24
      혹시 dbedit가 디비와 연결되어 있지 않은게 아닙니까? dbedit는 디비의 자료를 뿌려주기 때문에 수정모드...
    • 각시탈
      2000.05.18 03:22
      아는 데로 적어봅니다. DBEdit의 속성자체는 EditBox처럼 독자적인 Edit기능이 없습니다. 그래서 DBEdit...
    • 조규춘
      2000.05.18 03:21
      박충국 wrote: > 안녕하십니까.!~~ > 전 델파이 초보이거든요...!~~~ > 그래서 좀 물어볼려구요...!~~ ...
    • 올랭이
    • 2000.05.18 02:26
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 나현호
      2000.05.18 04:06
      디비가 무엇인지, 필드타입이 무엇인지 몰라 쉽게 개념만 잡을 수 있게 적어 봅니다. with Query do v...
    • 각시탈
      2000.05.18 03:28
      올랭이 wrote: > query1로 일련번호를 증가 시킬려구 하는데 잘 안되네요.. > > table name : 인적사항...
    • 김병건
      2000.05.18 01:53
      넘슬픈이 wrote: > insufficient Memory에 관한 질문입니다... > > 제가 지금 하구 있는 내용은 직...
    • 구창민
      2000.05.18 04:37
      안산에서 초보... wrote: > 델파이로 유닉스 계열 운영체제에서 실행되는 프로그램 작성이 가능한지 알구 ...
    • 김고진
    • 2000.05.18 01:20
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 각시탈
      2000.05.20 02:02
      저도 인터넷을 돌아 다니다.. 우연히.. 도움이 되셨으면 합니다. procedure TForm1.Button6Click(Send...