亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? main_u.pas

?? 全功能windows 資源編程器。 Delphi 編寫 Windows 界面.
?? PAS
?? 第 1 頁 / 共 2 頁
字號:
unit main_u;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, ComCtrls,shellapi, Spin, Grids, inifiles, ExtCtrls, Buttons,jpeg,
  mmsystem;

type
  TVersionNumber=array[1..4]of byte;
  TForm_RFEMain = class(TForm)
    Btn_LoadRC: TButton;
    Btn_Create: TButton;
    SB_Update: TSpeedButton;
    ListView1: TListView;
    CB_Type: TComboBox;
    Edit_Name: TEdit;
    Edit_Value: TEdit;
    Btn_LoadFile: TButton;
    Btn_Add: TButton;
    Btn_Del: TButton;
    ListBox1: TListBox;
    PageControl1: TPageControl;
      Tab_Options: TTabSheet;
        Lbl_Compiler: TLabel;
        Edit_Compiler: TEdit;
        Btn_ChooseCompiler: TButton;
        Lbl_Language: TLabel;
        CB_Language: TComboBox;
      Tab_VersionInfos: TTabSheet;
        GB_ProductVersion: TGroupBox;
          SpinEdit1: TSpinEdit;
          SpinEdit2: TSpinEdit;
          SpinEdit3: TSpinEdit;
          SpinEdit4: TSpinEdit;
        GB_FileVersion: TGroupBox;
          SpinEdit5: TSpinEdit;
          SpinEdit6: TSpinEdit;
          SpinEdit7: TSpinEdit;
          SpinEdit8: TSpinEdit;
        SG_VersionStringInfo: TStringGrid;
        Lbl_Translation: TLabel;
        CB_Translation: TComboBox;
        Btn_ImportVI: TButton;
        Btn_GenerateVI: TButton;
      Tab_Preview: TTabSheet;
        ScrollBox1: TScrollBox;
        Image1: TImage;
        Animate1: TAnimate;
        Button5: TButton;
        Memo1: TMemo;
        Panel1: TPanel;
          Btn_ReplaceVI: TButton;
    SaveDialog1: TSaveDialog;
    OpenDialog1: TOpenDialog;
    Btn_Modify: TButton;
    Edit_Params: TEdit;
    procedure Btn_CreateClick(Sender: TObject);
    procedure Btn_AddClick(Sender: TObject);
    procedure Btn_LoadFileClick(Sender: TObject);
    procedure Btn_LoadRCClick(Sender: TObject);
    procedure Btn_GenerateVIClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Btn_ReplaceVIClick(Sender: TObject);
    procedure SpinEdit1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure SpinEdit1Enter(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure Btn_ChooseCompilerClick(Sender: TObject);
    procedure Memo1Change(Sender: TObject);
    procedure Btn_DelClick(Sender: TObject);
    procedure ListBox1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure SB_UpdateClick(Sender: TObject);
    procedure ListView1Change(Sender: TObject; Item: TListItem;
      Change: TItemChange);
    procedure Button5Click(Sender: TObject);
    procedure CB_LanguageChange(Sender: TObject);
    procedure Btn_ImportVIClick(Sender: TObject);
    procedure Btn_ModifyClick(Sender: TObject);
  private
    { Private-Deklarationen }
    procedure ImportVersionInfo;
    function GetEntryByName(name:string):TListItem;
    function AddEntry(typ,name,value:string):TListItem;
    procedure SetLanguage(value:string);
    procedure WMDropFiles(var Msg: TWMDropFiles); message WM_DROPFILES;
  public
    { Public-Deklarationen }
    Procedure LoadRC(filename:String);
    procedure AddFile(filename:string);
    function preview(filename:string):boolean;
  end;

var
  Form_RFEMain: TForm_RFEMain;
  loading:Boolean;

implementation

{$R *.DFM}

uses RedirectConsole,getversioninfo,Version_u,Localize;

function ExtractBaseName(Filename:String):String;
var i:integer;
begin
  i:=length(Filename);
  while (i>0) and (Filename[i]<>'.') do dec(i);
  if i>0 then
    result:=copy(filename,1,i-1)
  else
    result:=Filename;
end;

function StripQuotes(s:String):String;
begin
  result:=s;
  if copy(result,1,1)='"' then delete(result,1,1);
  if copy(result,length(result),1)='"' then delete(result,length(result),1);
end;

function TForm_RFEMain.GetEntryByName(name:string):TListItem;
var i:integer;
begin
  result:=nil;
  for i:=0 to listview1.Items.Count-1 do
    if lowercase(Listview1.Items[i].subitems[0])=lowercase(name) then result:=Listview1.Items[i];
end;

function TForm_RFEMain.AddEntry(typ,name,value:string):TListItem;
var li:TListitem;
begin
  result:=nil;
  li:=GetEntryByName(name);
  if not assigned(li) then
  begin
    li:=Listview1.Items.Add;
    li.Caption:=uppercase(typ);
    li.SubItems.Add(uppercase(name));
    li.SubItems.Add(value);
    result:=li;
  end;
end;

Procedure TForm_RFEMain.LoadRC(filename:String);
var sl: TStringlist;
    i,p,blockstart,blockend: integer;
    s1,s2,s3: String;
begin
  sl:=TStringlist.create;
  sl.LoadFromFile(filename);
  i:=0;
  while i<sl.count do
  begin
    s3:=trim(sl.strings[i]);
    p:=pos(' ',s3);
    s1:=trim(copy(s3,1,p-1));
    delete(s3,1,p);
    p:=pos(' ',s3);
    s2:=trim(copy(s3,1,p-1));
    delete(s3,1,p);
    s3:=trim(s3);
    if s3<>'' then
    begin
      if lowercase(s3)='versioninfo' then
      begin
        blockstart:=0;
        blockend:=0;
        inc(i);
        while (blockstart=0) or (blockstart<>blockend) do
        begin
          memo1.lines.add(sl.strings[i]);
          s3:=lowercase(trim(sl.strings[i]));
          if (s3='begin') or (s3='{') then inc(blockstart);
          if (s3='end') or (s3='}') then inc(blockend);
          inc(i);
        end;
        ImportVersionInfo;
        if not assigned(AddEntry('VERSIONINFO',s1,Memo1.lines.text)) then
          showmessage(format(LocalizeString('Msg_IDExists'),[s1]));
      end else if lowercase(s3)='stringtable' then
      begin
        blockstart:=0;
        blockend:=0;
        inc(i);
        while (blockstart=0) or (blockstart<>blockend) do
        begin
          s3:=lowercase(trim(sl.strings[i]));
          if (s3='begin') or (s3='{') then inc(blockstart) else
          if (s3='end') or (s3='}') then inc(blockend) else
          begin
            p:=pos(' ',s3);
            s1:=trim(copy(s3,1,p-1));
            delete(s3,1,p);
            s3:=trim(s3);
            addEntry('STRINGTABLE',s1,StripQuotes(S3));
          end;
          inc(i);
        end;
      end else
      begin
        addEntry(s2,s1,StripQuotes(S3));
      end;
    end;
    inc(i);
  end;
  sl.free;
end;

procedure TForm_RFEMain.Btn_CreateClick(Sender: TObject);
var sl: TStringlist;
    i : integer;
begin
if fileExists(Edit_Compiler.text) then
begin
  if Listview1.items.count>0 then
  begin
    sl:=TStringlist.Create;
    i:=0;
    while i<listview1.Items.Count do
    begin
      if listview1.items[i].caption='VERSIONINFO' then
      begin
        sl.add(listview1.items[i].subitems[0]+' '+listview1.items[i].caption);
        sl.add(Listview1.items[i].subitems[1]);
      end else if listview1.items[i].caption='STRINGTABLE' then
      begin
        sl.add('STRINGTABLE');
        sl.add('BEGIN');
        while (i<listview1.items.count) and (listview1.items[i].caption='STRINGTABLE') do
        begin
          sl.add('  '+listview1.items[i].subitems[0]+' '+' "'+Listview1.items[i].subitems[1]+'"');
          inc(i);
        end;
        sl.add('END');
        dec(i);
      end else
        sl.add(listview1.items[i].subitems[0]+' '+listview1.items[i].caption+' "'+Listview1.items[i].subitems[1]+'"');
      inc(i);
      sl.add('');
    end;
    if savedialog1.Execute then
    begin
      sl.SaveToFile(savedialog1.filename);
      //shellexecute(0,'open',PCHAR(Edit_Compiler.Text),PCHAR('"'+savedialog1.filename+'"'),PCHAR(extractfilepath(savedialog1.filename)),sw_show);
      RC_Run(Edit_Compiler.Text+' '+Edit_Params.Text+' "'+savedialog1.filename+'"');
    end;
    sl.free;
  end else showmessage(LocalizeString('Msg_NothingToCompile'));
end else Showmessage(LocalizeString('Msg_CompilerNotFound'));
end;

procedure TForm_RFEMain.Btn_AddClick(Sender: TObject);
var LI:TListItem;
begin
  if (CB_Type.ItemIndex>-1) and (Edit_Name.Text<>'') and (Edit_Value.Text<>'') then
  begin
    li:=addEntry(CB_Type.Text,Edit_Name.Text,Edit_Value.Text);
    if assigned(li) then
      LI.Selected:=True
    else
      showmessage(format(LocalizeString('Msg_IDExists'),[Edit_Name.Text]));
    CB_Type.ItemIndex:=-1;
    Edit_Name.Text:='';
    Edit_Value.Text:='';
  end else showmessage(LocalizeString('Msg_MissingInput'));
end;

procedure TForm_RFEMain.AddFile(filename:string);
var ext,n:string;
    i:integer;
begin
  Edit_Value.Text:=FileName;
  ext:=UpperCase(ExtractFileExt(FileName));
  if ext='.BMP' then CB_Type.ItemIndex:=0
  else if ext='.ICO' then CB_Type.ItemIndex:=1
  else if (ext='.CUR') then CB_Type.ItemIndex:=2
  else if (ext='.ANI') then CB_Type.ItemIndex:=3
  else if ext='.WAV' then CB_Type.ItemIndex:=4
  else if ext='.AVI' then CB_Type.ItemIndex:=5
  else CB_Type.ItemIndex:=6;
  i:=1;
  n:=copy(cb_Type.Text,1,3);
  while getentrybyName(n+inttostr(i))<>nil do inc(i);
  edit_Name.Text:=n+inttostr(i);
end;

procedure TForm_RFEMain.Btn_LoadFileClick(Sender: TObject);
begin
  opendialog1.Filter:='Alle Dateien (*.*)|*.*|Bitmaps (*.bmp)|*.bmp|Icons (*.ico)|*.ico|Cursor (*.cur;*.ani)|*.cur;*.ani|JPEG (*.jpg;*.jpeg)|*.jpg;*.jpeg|AVI (*.avi)|*.avi|Wave (*.wav)|*.wav';
  if opendialog1.Execute then
  begin
    AddFile(opendialog1.filename);
    preview(opendialog1.filename);
  end;
end;

procedure TForm_RFEMain.Btn_LoadRCClick(Sender: TObject);
begin
  opendialog1.Filter:='RC-Dateien|*.rc';
  if opendialog1.execute then
  begin
    listview1.items.clear;
    loadrc(opendialog1.filename);
  end;
end;

procedure TForm_RFEMain.Btn_GenerateVIClick(Sender: TObject);
var p:integer;
begin
p:=pos(':',CB_Translation.text);
memo1.text:=
  'FILEVERSION '+inttostr(Spinedit1.value)+','+inttostr(Spinedit2.value)+','+inttostr(Spinedit3.value)+','+inttostr(Spinedit4.value)+#13#10+
  'PRODUCTVERSION '+inttostr(Spinedit5.value)+','+inttostr(Spinedit6.value)+','+inttostr(Spinedit7.value)+','+inttostr(Spinedit8.value)+#13#10+
  'BEGIN'+#13#10+
  '  BLOCK "StringFileInfo"'+#13#10+
  '  BEGIN'+#13#10+
  '    BLOCK "040704b0"'+#13#10+
  '    BEGIN'+#13#10+
  '      VALUE "FileVersion", "'+inttostr(Spinedit1.value)+'.'+inttostr(Spinedit2.value)+'.'+inttostr(Spinedit3.value)+'.'+inttostr(Spinedit4.value)+'\0"'+#13#10+
  '      VALUE "ProductVersion", "'+inttostr(Spinedit5.value)+'.'+inttostr(Spinedit6.value)+'.'+inttostr(Spinedit7.value)+'.'+inttostr(Spinedit8.value)+'\0"'+#13#10+
  '      VALUE "ProductName", "'+SG_VersionStringInfo.Cells[1,0]+'\0"'+#13#10+
  '      VALUE "CompanyName", "'+SG_VersionStringInfo.Cells[1,1]+'\0"'+#13#10+
  '      VALUE "FileDescription", "'+SG_VersionStringInfo.Cells[1,2]+'\0"'+#13#10+
  '      VALUE "InternalName", "'+SG_VersionStringInfo.Cells[1,3]+'\0"'+#13#10+
  '      VALUE "LegalCopyright", "'+SG_VersionStringInfo.Cells[1,4]+'\0"'+#13#10+
  '      VALUE "OriginalFilename", "'+SG_VersionStringInfo.Cells[1,5]+'\0"'+#13#10+
  '    END'+#13#10+
  '  END'+#13#10+
  '  BLOCK "VarFileInfo"'+#13#10+
  '  BEGIN'+#13#10+
  '    VALUE "Translation", '+copy(CB_Translation.text,p+1,length(CB_Translation.text)-p)+', 1200'+#13#10+
  '  END'+#13#10+
  'END';
  PageControl1.ActivePage:=Tab_Preview;
  memo1.visible:=true;
  panel1.Visible:=true;
end;

procedure MyLineOut(s: string); // Output procedure
begin
  form_RFEMain.listbox1.items.add(s);
end;

procedure TForm_RFEMain.FormCreate(Sender: TObject);
var ini:TIniFile;
    vi:TVersionInfo;
    sr:TSearchRec;
    lang:string;
begin
  loading:=true;
  SG_VersionStringInfo.Cells[0,0]:='Produkt-Name';
  SG_VersionStringInfo.Cells[0,1]:='Firmen-Name';
  SG_VersionStringInfo.Cells[0,2]:='Datei-Beschreibung';
  SG_VersionStringInfo.Cells[0,3]:='interner Name';
  SG_VersionStringInfo.Cells[0,4]:='Copyright';

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
性做久久久久久免费观看| 国产肉丝袜一区二区| 成人性生交大片免费看视频在线| 日韩精品一二三四| 亚洲影视在线播放| 亚洲一区二区三区国产| 一区二区三区中文字幕精品精品| 成人欧美一区二区三区| 自拍视频在线观看一区二区| 国产精品久久久久久亚洲毛片| 国产午夜亚洲精品午夜鲁丝片| 国产欧美日韩在线观看| 国产欧美日韩一区二区三区在线观看| 国产日韩v精品一区二区| 久久精品视频在线免费观看| 欧美韩日一区二区三区| 国产精品久久久爽爽爽麻豆色哟哟| 日本一区二区三区久久久久久久久不| 久久久777精品电影网影网| 欧美国产亚洲另类动漫| 综合久久久久久| 午夜免费欧美电影| 国模少妇一区二区三区| 成人午夜av影视| 色女孩综合影院| 欧美亚洲综合色| 制服丝袜激情欧洲亚洲| 久久久久九九视频| 亚洲手机成人高清视频| 亚洲超碰97人人做人人爱| 秋霞午夜鲁丝一区二区老狼| 国产精品综合一区二区三区| 色综合色综合色综合色综合色综合 | 日韩精品专区在线影院观看| 久久综合色婷婷| 中文字幕一区二区视频| 亚洲自拍偷拍综合| 韩国三级中文字幕hd久久精品| 国产不卡免费视频| 欧美日韩一区三区| 久久久天堂av| 亚洲成人一二三| 懂色av一区二区在线播放| 欧美视频一区二区三区| 久久久久久日产精品| 亚洲午夜精品久久久久久久久| 久久www免费人成看片高清| 99国产精品视频免费观看| 欧美一区二区三区在线看| 中文字幕亚洲一区二区av在线 | 麻豆精品久久精品色综合| 国产精品原创巨作av| 欧美日韩精品免费观看视频| 国产精品视频一二三区| 日本亚洲电影天堂| 91福利精品视频| 国产精品美女一区二区三区 | 久久你懂得1024| 亚洲chinese男男1069| 波多野结衣中文字幕一区二区三区| 欧美男女性生活在线直播观看| 中文字幕电影一区| 久久99精品国产麻豆不卡| 欧美三级视频在线| 日韩美女精品在线| 国产福利一区二区| 欧美不卡一区二区三区| 亚洲超碰精品一区二区| 色噜噜久久综合| 中文字幕人成不卡一区| 成人综合婷婷国产精品久久 | 99视频在线观看一区三区| 欧美经典三级视频一区二区三区| 九九九精品视频| 日韩欧美一二三| 精品在线视频一区| 日韩午夜在线观看| 亚洲国产欧美另类丝袜| 色婷婷综合久久久久中文一区二区| 国产精品久久久久一区| 99久久er热在这里只有精品15 | 1000部国产精品成人观看| 国产精品99久久久久久宅男| 高清在线观看日韩| 亚洲色图欧洲色图| 久久婷婷国产综合国色天香| 欧美亚洲精品一区| 日本美女一区二区| 91精品一区二区三区久久久久久 | 91久久精品一区二区三| 激情成人午夜视频| 久久99精品久久久久婷婷| 精品成人a区在线观看| 蜜臀va亚洲va欧美va天堂| 精品久久久久久无| 国产精品18久久久久久久网站| 国产欧美日韩精品在线| av在线综合网| 亚洲一区二区三区国产| 91精品国产综合久久久蜜臀粉嫩| 美女性感视频久久| 久久久久国产成人精品亚洲午夜| 不卡的av电影| 视频在线在亚洲| 久久精品亚洲麻豆av一区二区 | 午夜日韩在线电影| 日韩精品中文字幕一区二区三区| 国产精品一级在线| 亚洲视频小说图片| 欧美人与z0zoxxxx视频| 国产真实精品久久二三区| 亚洲天堂网中文字| 日韩一级视频免费观看在线| 成人影视亚洲图片在线| 亚洲小少妇裸体bbw| 久久综合久久久久88| 日本高清免费不卡视频| 精品在线播放午夜| 亚洲欧美一区二区久久| 日韩午夜激情视频| 91小视频免费观看| 激情六月婷婷久久| 亚洲一区二区三区四区五区中文| 久久一二三国产| 精品视频1区2区| www.一区二区| 国产一区二区三区不卡在线观看 | 欧美日韩国产小视频在线观看| 国产在线精品不卡| 日韩精品电影在线| 亚洲最大成人综合| 国产精品私房写真福利视频| 日韩精品中文字幕一区| 欧美日韩另类一区| 色综合久久88色综合天天6| 激情文学综合插| 日本不卡视频在线| 亚洲国产成人porn| 一区二区三区在线影院| 国产精品无人区| 国产欧美日韩激情| 久久亚洲精品小早川怜子| 欧美一区二区三区电影| 欧美乱熟臀69xxxxxx| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 99在线热播精品免费| 国产精品一线二线三线精华| 奇米在线7777在线精品| 三级精品在线观看| 天天色天天操综合| 亚洲国产精品影院| 一卡二卡欧美日韩| 亚洲午夜在线观看视频在线| 亚洲视频在线观看三级| 亚洲视频资源在线| 亚洲精品视频在线观看网站| 亚洲免费观看高清| 亚洲一区在线观看网站| 亚洲一区二区在线观看视频| 亚洲国产精品一区二区www| 伊人夜夜躁av伊人久久| 亚洲国产日产av| 日本中文一区二区三区| 人人精品人人爱| 国产米奇在线777精品观看| 国产mv日韩mv欧美| 91在线看国产| 欧美网站大全在线观看| 欧美日韩视频一区二区| 在线不卡的av| 久久精品视频网| 亚洲乱码中文字幕综合| 亚洲aaa精品| 国内精品在线播放| a在线播放不卡| 欧美三级乱人伦电影| 欧美变态tickling挠脚心| 久久久久一区二区三区四区| 国产精品国产成人国产三级| 亚洲高清免费视频| 韩国欧美国产1区| 99热99精品| 日韩视频一区在线观看| 国产日韩欧美一区二区三区综合| 亚洲欧美电影一区二区| 日本不卡一区二区| 成人毛片老司机大片| 欧美久久久久中文字幕| 国产三级欧美三级| 亚洲午夜在线视频| 国产精品18久久久久久久久 | 欧美一区二区高清| 国产女人18水真多18精品一级做| 亚洲精品日日夜夜| 国产一区美女在线| 欧美日韩国产在线观看| 欧美国产一区二区在线观看| 天天亚洲美女在线视频| 波多野结衣中文一区| 日韩一区二区在线看|