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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? unit1.pas

?? EmbeddedWB_D5-D2009_Version_14.67.8 最新版本,開發(fā)WEB瀏覽器.
?? PAS
?? 第 1 頁 / 共 2 頁
字號:
//***********************************************************
//                      WebUpdater  demo                    *
//                                                          *
//               For Delphi 5 - 2009                        *
//                     Freeware demo                        *
// By:  Eran Bodankin (bsalsa)   bsalsa@bsalsa.com          *
//           Documentation and updated versions:            *
//               http://www.bsalsa.com                      *
//***********************************************************
{*******************************************************************************}
{LICENSE:
THIS SOFTWARE IS PROVIDED TO YOU "AS IS" WITHOUT WARRANTY OF ANY KIND,
EITHER EXPRESSED OR IMPLIED INCLUDING BUT NOT LIMITED TO THE APPLIED
WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR PURPOSE.
YOU ASSUME THE ENTIRE RISK AS TO THE ACCURACY AND THE USE OF THE SOFTWARE
AND ALL OTHER RISK ARISING OUT OF THE USE OR PERFORMANCE OF THIS SOFTWARE
AND DOCUMENTATION. [YOUR NAME] DOES NOT WARRANT THAT THE SOFTWARE IS ERROR-FREE
OR WILL OPERATE WITHOUT INTERRUPTION. THE SOFTWARE IS NOT DESIGNED, INTENDED
OR LICENSED FOR USE IN HAZARDOUS ENVIRONMENTS REQUIRING FAIL-SAFE CONTROLS,
INCLUDING WITHOUT LIMITATION, THE DESIGN, CONSTRUCTION, MAINTENANCE OR
OPERATION OF NUCLEAR FACILITIES, AIRCRAFT NAVIGATION OR COMMUNICATION SYSTEMS,
AIR TRAFFIC CONTROL, AND LIFE SUPPORT OR WEAPONS SYSTEMS. VSOFT SPECIFICALLY
DISCLAIMS ANY EXPRESS OR IMPLIED WARRANTY OF FITNESS FOR SUCH PURPOSE.

You may use, change or modify the component under 4 conditions:
1. In your website, add a link to "http://www.bsalsa.com"
2. In your application, add credits to "Embedded Web Browser"
3. Mail me  (bsalsa@bsalsa.com) any code change in the unit
   for the benefit of the other users.
4. Please consider donation in our web site!
{*******************************************************************************}

unit Unit1;

interface

uses
  Windows, SysUtils, Classes, Controls, forms, Dialogs, ShellAPI, Grids,
  LibXmlParser, LibXmlComps, StdCtrls, ComCtrls, ExtCtrls, RichEditBrowser,
  OleCtrls, EmbeddedWB, Buttons, SHDocVw_EWB, EwbCore;

type
  Tform1 = class(Tform)
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet2: TTabSheet;
    XmlScanner1: TXmlScanner;
    TreeView: TTreeView;
    TabSheet3: TTabSheet;
    RichEditWB1: TRichEditWB;
    Panel1: TPanel;
    memInfo: TMemo;
    Panel2: TPanel;
    GroupBox1: TGroupBox;
    Panel3: TPanel;
    Panel4: TPanel;
    stgrInst: TStringGrid;
    Panel5: TPanel;
    Panel6: TPanel;
    GroupBox2: TGroupBox;
    cbOverWrite: TCheckBox;
    Panel7: TPanel;
    Button1: TButton;
    Button2: TButton;
    TabSheet4: TTabSheet;
    EmbeddedWB1: TEmbeddedWB;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn1: TBitBtn;
    BitBtn4: TBitBtn;
    gbFile: TGroupBox;
    BitBtn5: TBitBtn;
    BitBtn6: TBitBtn;
    BitBtn7: TBitBtn;
    edtPath: TEdit;
    cbNumerator: TCheckBox;
    SpeedButton1: TSpeedButton;
    SpeedButton2: TSpeedButton;
    SpeedButton3: TSpeedButton;
    edtName: TEdit;
    edtVersion: TEdit;
    edtAuthor: TEdit;
    edtCompany: TEdit;
    Label1: TLabel;
    Label3: TLabel;
    Author: TLabel;
    Label4: TLabel;
    Label2: TLabel;
    Label5: TLabel;
    procedure SpeedButton2Click(Sender: TObject);
    procedure SpeedButton1Click(Sender: TObject);
    procedure SpeedButton3Click(Sender: TObject);
    procedure FormResize(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure XmlScanner1XmlProlog(Sender: TObject; XmlVersion,
      Encoding: string; Standalone: Boolean);
    procedure XmlScanner1StartTag(Sender: TObject; TagName: string;
      Attributes: TAttrList);
    procedure XmlScanner1PI(Sender: TObject; Target, Content: string;
      Attributes: TAttrList);
    procedure XmlScanner1EndTag(Sender: TObject; TagName: string);
    procedure XmlScanner1EmptyTag(Sender: TObject; TagName: string;
      Attributes: TAttrList);
    procedure XmlScanner1DtdRead(Sender: TObject; RootElementName: string);
    procedure XmlScanner1Content(Sender: TObject; Content: string);
    procedure XmlScanner1Comment(Sender: TObject; Comment: string);
    procedure XmlScanner1CData(Sender: TObject; Content: string);
    procedure btnLoadClick(Sender: TObject);
    procedure btnExploreClick(Sender: TObject);
    procedure stgrInstKeyPress(Sender: TObject; var Key: Char);
    procedure btnOpenIEClick(Sender: TObject);
    procedure btnOpenNotepadClick(Sender: TObject);
    procedure ledtVersionKeyPress(Sender: TObject; var Key: Char);
    procedure ledtCompanyKeyPress(Sender: TObject; var Key: Char);
    procedure ledtAuthorKeyPress(Sender: TObject; var Key: Char);
    procedure ledtNameKeyPress(Sender: TObject; var Key: Char);
    procedure btnLoadDemoClick(Sender: TObject);
    procedure btnClearClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure btnCreateXMLClick(Sender: TObject);
  private
    CurNode: TTreeNode;
    fXmlParser: TXmlParser;
    procedure HideControls();
    procedure UpdateControls(Name: string);
    procedure UpdateComponents();
    procedure ParseInit(XmlFile: string);
    procedure SetAttr(AttrName: string; var st: string);
    { Private declarations }
  public
    { Public declarations }
  end;

var
  form1: Tform1;

implementation

{$R *.dfm}

procedure Tform1.UpdateComponents();
begin
  TreeView.Items.BeginUpdate;
  TreeView.Items.Clear;
  CurNode := nil;
  XmlScanner1.Filename := edtPath.Text;
  XmlScanner1.Execute;
  TreeView.Items.EndUpdate;
  TreeView.FullExpand;
  RichEditWB1.LoadFromFile(edtPath.Text);
  RichEditWB1.DoHighlightXML;
 // EmbeddedWB1.Navigate(edtPath.Text);
end;

procedure Tform1.UpdateControls(Name: string);
var
  i: integer;
begin
  edtPath.Text := Name;
  gbFile.Visible := true;
  Caption := 'Updates XML creator : ' + Name;
  for i := 1 to PageControl1.PageCount - 1 do
    PageControl1.Pages[i].TabVisible := true;
end;

procedure Tform1.HideControls();
var
  i: integer;
begin
  gbFile.Visible := false;
  RichEditWB1.Clear;
  TreeView.Items.Clear;
  Caption := 'XML creator : by bsalsa';
  EmbeddedWB1.GoAboutBlank;
  for i := 1 to PageControl1.PageCount - 1 do
    PageControl1.Pages[i].TabVisible := false;
end;

procedure Tform1.FormShow(Sender: TObject);
var
  i: integer;
begin
  Caption := 'Updates XML creator : by bsalsa';
  stgrInst.Cols[0].Text := '#';
  for i := 1 to stgrInst.RowCount - 1 do
  begin
    stgrInst.Cells[0, i] := IntToStr(i);
  end;
  stgrInst.Cols[1].Text := 'File Name';
  stgrInst.Cols[2].Text := 'Destination folder (Include SubFolders if needed)';
  stgrInst.Cols[3].Text := 'Terminate (yes/no)';
  memInfo.Lines.Text := 'The Change Log: ';
  PageControl1.ActivePageIndex := 0;
  HideControls();
end;

procedure Tform1.btnClearClick(Sender: TObject);
var
  i, j: integer;
begin
  for i := 1 to stgrInst.RowCount - 1 do
    for j := 1 to stgrInst.ColCount - 1 do
      stgrInst.Cells[j, i] := '';
  memInfo.Lines.Clear;
  edtName.Text := '';
  edtVersion.Text := '';
  edtCompany.Text := '';
  edtAuthor.Text := '';
  TreeView.Items.Clear;
  HideControls();
end;

procedure Tform1.btnLoadDemoClick(Sender: TObject);
begin
  edtName.Text := 'project1';
  edtVersion.Text := '1.132';
  edtCompany.Text := 'bsalsa Productions';
  edtAuthor.Text := 'bsalsa';
  memInfo.Lines.Add('*Added new demo for the updater.');
  memInfo.Lines.Add('*Added an option to create XML files.');
  memInfo.Lines.Add('*Cleaned up the code.');
  memInfo.Lines.Add('*Faster update procedures.');
  memInfo.Lines.Add('*Option to add personal details.');
  memInfo.Lines.Add('*Option to match details (application and remote file).');
  memInfo.Lines.Add('and so on...');
  stgrInst.Cells[1, 1] := 'Test.txt';
  stgrInst.Cells[2, 1] := 'ApplicationFolder';
  stgrInst.Cells[3, 1] := 'no';
  stgrInst.Cells[1, 2] := 'Credits.txt';
  stgrInst.Cells[2, 2] := 'Updater_Test';
  stgrInst.Cells[3, 2] := 'no';
  stgrInst.Cells[1, 3] := 'ReadMe.txt';
  stgrInst.Cells[2, 3] := 'Updater_Test';
  stgrInst.Cells[3, 3] := 'yes';
  stgrInst.Cells[1, 4] := 'Project1.exe';
  stgrInst.Cells[2, 4] := 'ApplicationFolder';
  stgrInst.Cells[3, 4] := 'yes';
end;

procedure Tform1.ledtNameKeyPress(Sender: TObject; var Key: Char);
begin
  if (key = #13) or (key = #09) then EdtVersion.SetFocus;
end;

procedure Tform1.ledtVersionKeyPress(Sender: TObject; var Key: Char);
begin
  if (key = #13) or (key = #09) then EdtAuthor.SetFocus;
end;

procedure Tform1.ledtAuthorKeyPress(Sender: TObject; var Key: Char);
begin
  if (key = #13) or (key = #09) then EdtCompany.SetFocus;
end;

procedure Tform1.ledtCompanyKeyPress(Sender: TObject; var Key: Char);
begin
  if (key = #13) or (key = #09) then memInfo.SetFocus;
end;

procedure Tform1.btnOpenNotepadClick(Sender: TObject);
begin
  if edtPath.Text <> '' then
    ShellExecute(Handle, 'open', 'notepad.exe', Pchar(edtPath.Text), nil, SW_SHOWNORMAL)
  else
    MessageDlg('What file exactly you want to open?',
      mtError, [mbCancel], 0);
end;

procedure Tform1.btnOpenIEClick(Sender: TObject);
begin
  if edtPath.Text <> '' then
    ShellExecute(Handle, 'open', 'Explorer', Pchar(edtPath.Text), nil, SW_SHOWNORMAL)
  else
    MessageDlg('What file exactly do you want to open?', mtError, [mbCancel], 0);
end;

procedure Tform1.btnExploreClick(Sender: TObject);
begin
  if edtPath.Text <> '' then
    ShellExecute(Application.Handle, PChar('explore'),
      Pchar(ExtractFilePath(edtPath.Text)), nil, nil, SW_SHOWNORMAL)
  else
    MessageDlg('What file exactly do you want to open?',
      mtError, [mbCancel], 0);
end; ///ExtractFilePath

procedure Tform1.stgrInstKeyPress(Sender: TObject; var Key: Char);
begin
  if (key = #13) or (key = #09) then
    if stgrInst.Col < stgrInst.ColCount - 1 then
      with stgrInst do
      begin
        if col < 3 then
        begin
          Col := Col + 1;
          SetFocus;
        end
      end
    else
      with stgrInst do
      begin
        Row := Row + 1;
        Col := 1;
        SetFocus;
      end;
  if stgrInst.Row = stgrInst.RowCount - 1 then
    MessageDlg('You have reached the limit of 50 lines (You can change it ' +
      'to what ever, if you need more).', mtError, [mbCancel], 0);
end;

procedure Tform1.btnLoadClick(Sender: TObject);
var
  Container: string;
  od: TOpenDialog;
  i: integer;
  Node: TNvpNode;
  function GetXmlHead(): boolean;
  begin
    Result := false;
    while fXmlParser.Scan() do

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
伊人色综合久久天天人手人婷| 欧美一区二区黄| 日韩国产欧美视频| 亚洲一区二区三区小说| 制服丝袜国产精品| 国产乱妇无码大片在线观看| 亚洲影视在线观看| 久久精品无码一区二区三区| 欧美亚洲动漫精品| 国产成人免费视频| 麻豆成人在线观看| 亚洲成人福利片| ...中文天堂在线一区| 精品欧美乱码久久久久久1区2区| 欧美视频中文字幕| 99re热视频精品| 丁香一区二区三区| 久久狠狠亚洲综合| 视频一区二区三区中文字幕| 一区二区三区在线视频播放| 中文字幕中文字幕在线一区| 国产亚洲综合在线| 久久影院午夜论| 精品国产乱码久久久久久图片| 欧美乱妇20p| 欧美亚洲动漫另类| 在线亚洲+欧美+日本专区| 风流少妇一区二区| 国产成人精品亚洲午夜麻豆| 激情深爱一区二区| 另类小说综合欧美亚洲| 日韩电影免费一区| 日本三级亚洲精品| 日本成人在线电影网| 亚洲不卡av一区二区三区| 亚洲一区二区三区四区中文字幕| 亚洲欧美日韩中文字幕一区二区三区 | 国产欧美一区二区三区在线看蜜臀| 在线播放欧美女士性生活| 欧美日韩在线不卡| 欧美亚洲国产一区二区三区| 日本二三区不卡| 色综合av在线| 欧美色手机在线观看| 欧美天堂亚洲电影院在线播放| 欧美午夜电影在线播放| 欧美日韩综合不卡| 在线不卡欧美精品一区二区三区| 在线播放91灌醉迷j高跟美女 | 岛国精品在线观看| hitomi一区二区三区精品| 国产精品 日产精品 欧美精品| 国产老妇另类xxxxx| 成人免费福利片| 91麻豆精品一区二区三区| 在线一区二区三区| 91精品国产乱码| 日韩久久久精品| 国产精品午夜在线观看| 亚洲色图欧美激情| 日日摸夜夜添夜夜添精品视频| 免费视频最近日韩| 国产电影一区在线| 日本高清免费不卡视频| 777奇米四色成人影色区| 欧美精品一区二区三区在线播放| 久久久噜噜噜久久人人看| 日本一区二区三级电影在线观看| 亚洲青青青在线视频| 午夜精品影院在线观看| 久草中文综合在线| 9久草视频在线视频精品| 91官网在线免费观看| 欧美一区欧美二区| 国产情人综合久久777777| 亚洲精品水蜜桃| 久久精品国产亚洲5555| av爱爱亚洲一区| 欧美一区二区久久久| 国产精品九色蝌蚪自拍| 天堂一区二区在线| 国产91对白在线观看九色| 欧美探花视频资源| 国产视频一区二区在线| 亚洲综合色网站| 国产真实乱子伦精品视频| 在线观看精品一区| 国产亚洲综合在线| 五月天激情小说综合| 懂色av中文一区二区三区| 欧美蜜桃一区二区三区| 亚洲国产成人自拍| 亚洲国产精品一区二区久久| 精品在线免费视频| 在线一区二区三区做爰视频网站| 精品毛片乱码1区2区3区| 一区二区三区美女视频| 国产精品一区2区| 欧美裸体一区二区三区| 亚洲视频一区二区在线| 麻豆精品一区二区综合av| 91免费看片在线观看| 久久久99久久| 日日欢夜夜爽一区| 欧美自拍丝袜亚洲| 国产精品丝袜91| 九色综合狠狠综合久久| 欧美日韩三级在线| 亚洲男人天堂一区| 成人永久aaa| 久久品道一品道久久精品| 性感美女久久精品| 91老司机福利 在线| 国产精品日韩成人| 国产成人精品三级| 精品国产一二三区| 日韩电影网1区2区| 欧美日本乱大交xxxxx| 亚洲特级片在线| av亚洲精华国产精华| 国产欧美日韩另类一区| 蜜臀av一区二区在线免费观看| 色悠悠亚洲一区二区| 中文字幕一区二区视频| 国产成人av福利| 久久新电视剧免费观看| 久久av老司机精品网站导航| 欧美精品日韩综合在线| 亚洲超碰精品一区二区| 欧美日韩成人综合天天影院 | 久久精品视频在线看| 乱一区二区av| 欧美大片一区二区| 九九国产精品视频| 日韩女优毛片在线| 激情综合色综合久久| 久久免费精品国产久精品久久久久| 久久国产乱子精品免费女| 欧美一级一区二区| 久久国内精品视频| 精品国产自在久精品国产| 国产自产2019最新不卡| 国产视频一区二区在线观看| 成人综合婷婷国产精品久久 | 国产亚洲欧美中文| 成人91在线观看| 亚洲女爱视频在线| 欧美丰满少妇xxxbbb| 蜜臀av性久久久久av蜜臀妖精| 精品国产乱码久久久久久1区2区 | 99久久精品国产一区二区三区| 国产精品欧美经典| 色婷婷亚洲综合| 日韩精品乱码免费| 精品国产一区a| 99视频精品全部免费在线| 一区二区三区中文字幕| 51精品秘密在线观看| 国产一区二区三区在线观看免费| 日本一区二区三级电影在线观看 | 日本乱人伦一区| 日韩va亚洲va欧美va久久| 久久一留热品黄| 一本久道中文字幕精品亚洲嫩| 三级成人在线视频| 欧美激情综合在线| 欧美日韩国产综合一区二区| 麻豆freexxxx性91精品| 国产精品麻豆一区二区| 欧美精品久久久久久久多人混战 | 一区二区三区视频在线看| 欧美一级午夜免费电影| 国产酒店精品激情| 亚洲综合免费观看高清在线观看| 日韩精品一区二区在线观看| a亚洲天堂av| 日韩成人精品在线观看| 国产精品久久福利| 91精品国产麻豆| 91麻豆自制传媒国产之光| 美女视频网站久久| 亚洲乱码日产精品bd| 欧美精品久久99久久在免费线| 国产宾馆实践打屁股91| 欧美成人国产一区二区| 26uuu成人网一区二区三区| 一个色在线综合| 成人看片黄a免费看在线| 色播五月激情综合网| 精品精品国产高清a毛片牛牛| 日韩精品一卡二卡三卡四卡无卡| 97久久超碰国产精品电影| 久久综合狠狠综合久久综合88| 亚洲日本在线a| 91在线观看视频| 精品国产百合女同互慰| 成人三级伦理片| 亚洲欧美乱综合| 欧美不卡一区二区| 色成人在线视频|