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

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

?? ajregistrybrowser.pas

?? 是不是天天看見MS的注冊表看膩了
?? PAS
字號:

unit ajRegistryBrowser;


interface

uses
  Forms, Windows, Controls, ExtCtrls, ComCtrls, StdCtrls, Classes, Buttons,
  SysUtils, ImgList, Registry, Menus, ajRecentKeys,  ajAlterMenu;     

type
  TajBrowserException = class(Exception);

type
  TajRegPathManager = class(TObject)
  private
    fRootHKEY     : HKEY;
    fRootHKEYText : string;
    fFullPath     : string;
    fSubPath      : string;
  protected
    procedure SetfFullPath  (Value : string);
  public
    property  RootHKEY      : HKEY      read fRootHKEY;
    property  RootHKEYText  : string    read fRootHKEYText;
    property  FullPath      : string    read fFullPath  write SetfFullPath;
    property  SubPath       : string    read fSubPath;
  end;

type
  TfrmRegBrowser = class(TForm)
    Bevel1          : TBevel;
    Bevel2          : TBevel;
    btnAddGuid      : TSpeedButton;
    btnBookmark     : TSpeedButton;
    btnCancel       : TSpeedButton;
    btnRefresh      : TSpeedButton;
    btnUpdate       : TSpeedButton;
    edRegPath       : TEdit;
    imButtons       : TImageList;
    imTreeView      : TImageList;
    lvPopupMenu     : TPopupMenu;
    lvRegistry      : TListView;
    MainMenu        : TMainMenu;
    mnuAddGUID      : TMenuItem;
    mnuBinary       : TMenuItem;
    mnuBookmarks    : TMenuItem;
    mnuDeleteValue  : TMenuItem;
    mnuDWORD        : TMenuItem;
    mnuEditValue    : TMenuItem;
    mnuExit         : TMenuItem;
    mnuNewValue     : TMenuItem;
    mnuOptions      : TMenuItem;
    mnuPopAddKey    : TMenuItem;
    mnuPopBookmark  : TMenuItem;
    mnuRefresh      : TMenuItem;
    mnuRegistry     : TMenuItem;
    mnuString       : TMenuItem;
    mnuUpdate       : TMenuItem;
    mnuView         : TMenuItem;
    mnuXPMenu       : TMenuItem;
    N1              : TMenuItem;
    N2              : TMenuItem;
    N4              : TMenuItem;
    pnBack          : TPanel;
    pnRegPath       : TPanel;
    pnToolbar       : TPanel;
    Splitter        : TSplitter;
    StatusBar       : TStatusBar;
    tvPopupMenu     : TPopupMenu;
    tvRegistry      : TTreeView;
    N3: TMenuItem;
    procedure FormCreate            (Sender : TObject);
    procedure FormShow              (Sender : TObject);
    procedure FormClose             (Sender : TObject; var Action : TCloseAction);
    procedure FormDestroy           (Sender : TObject);
    procedure mnuAddGUIDClick       (Sender : TObject);
    procedure mnuAddKeyClick        (Sender : TObject);
    procedure mnuBookmarkClick      (Sender : TObject);
    procedure mnuDeleteKeyClick     (Sender : TObject);
    procedure mnuDeleteValueClick   (Sender : TObject);    
    procedure mnuExitClick          (Sender : TObject);
    procedure mnuRefreshClick       (Sender : TObject);
    procedure mnuUpdateClick        (Sender : TObject);
    procedure mnuXPMenuClick        (Sender : TObject);
    procedure tvRegistryChange      (Sender : TObject; Node : TTreeNode);
    procedure tvRegistryExpanding   (Sender : TObject; Node : TTreeNode; var AllowExpansion : boolean);
    procedure tvRegistryMouseDown   (Sender : TObject; Button : TMouseButton; Shift : TShiftState; X, Y : integer);
    procedure lvPopupMenuPopup      (Sender : TObject);
  private
    { Private declarations }
    fajAlterMenu      : TajAlterMenu;
    fajRecentKeys     : TajRecentKeys;
    fRegPathManager   : TajRegPathManager;
    fIsPropertyEditor : boolean;
  protected
    procedure SetfIsPropertyEditor  (Value : boolean);
    procedure AddListNames          (SubPath : string; List : TStringList);
    procedure AddTreeNodes          (Node : TTreeNode; List : TStrings);
    procedure GetRegKeyValueNames   (SubPath : string);
    procedure GetRegKeyNames        (SubPath : string; Node : TTreeNode);
    procedure RecentKeyClick        (KeyName : string);
    function  GetRegistryPath       : string;
    procedure SetRegistryPath       (Value : string);
    procedure SetBookmarkControls   (Tag : integer);
    procedure DeleteBranchRoot      (HKEYText : string);
    procedure AddKey                (FullPath : string);
    procedure DeleteKey             (FullPath : string);
    procedure DeleteValue           (KeyValue : string);    
  public
    { Public declarations }
    function  GoToBookmark          (FullPath : string) : boolean;
    property  IsPropertyEditor  : boolean   read fIsPropertyEditor  write SetfIsPropertyEditor;
    property  RegistryPath      : string    read GetRegistryPath    write SetRegistryPath;
  end;

var
  frmRegBrowser : TfrmRegBrowser;

implementation

{$R *.DFM}

{$IFDEF VER140}   // Delphi6
  {$WARN SYMBOL_PLATFORM OFF}
{$ENDIF}

uses
  Graphics, CommCtrl, Dialogs, ComObj, ActiveX, ajRegistry;

const

  {................................................................................................}

  cNumRegValType  = 11; // Number of type supported.
  cRegValTypeLookUp : array[0..pred(cNumRegValType)] of record
    Description : string;
    Value       : DWORD;
  end = ((Description : 'REG_NONE';                       Value : REG_NONE),
         (Description : 'REG_SZ';                         Value : REG_SZ),
         (Description : 'REG_EXPAND_SZ';                  Value : REG_EXPAND_SZ),
         (Description : 'REG_BINARY';                     Value : REG_BINARY),
         (Description : 'REG_DWORD';                      Value : REG_DWORD),
         (Description : 'REG_DWORD_BIG_ENDIAN';           Value : REG_DWORD_BIG_ENDIAN),
         (Description : 'REG_LINK';                       Value : REG_LINK),
         (Description : 'REG_MULTI_SZ';                   Value : REG_MULTI_SZ),
         (Description : 'REG_RESOURCE_LIST';              Value : REG_RESOURCE_LIST),
         (Description : 'REG_FULL_RESOURCE_DESCRIPTOR';   Value : REG_FULL_RESOURCE_DESCRIPTOR),
         (Description : 'REG_RESOURCE_REQUIREMENTS_LIST'; Value : REG_RESOURCE_REQUIREMENTS_LIST));

  cMyRegistry     = 0;
  cClosedPage     = 1;
  cOpenPage       = 2;
  cClosedBook     = 3;
  cOpenBook       = 4;
  cDateValue      = 5;
  cStringValue    = 6;
  cBinaryValue    = 7;
  cAddBookmark    = 10;
  cRemoveBookmark = 11;

type
  TajRegReadWrite = (tRegRead, tRegWrite);



function FileTimeToDateTime(FileTime : TFileTime) : TDateTime;
// Convert FileTime to TDateTime.
var
  SystemTime  : TSystemTime;
begin
  FileTimeToLocalFileTime(FileTime, FileTime);
  FileTimeToSystemTime(FileTime, SystemTime);
  Result  := SystemTimeToDateTime(SystemTime);
end; {FileTimeToDateTime}


procedure RegSubMenuSettings(Menu : TMenuItem; RegPath : string; ReadWrite : TajRegReadWrite);
var
  lp1   : integer;
  Name  : string;
begin
  with TRegistry.Create do begin
    try
      RootKey := cRegHKEY;
      if OpenKey(RegPath, ReadWrite = tRegWrite) then begin
        for lp1 := 0 to pred(Menu.Count) do begin
          if (Menu.Items[lp1].Count > 0) then
            RegSubMenuSettings(Menu.Items[lp1], RegPath, ReadWrite)
          else begin
            Name  := StripHotKey(Menu.Items[lp1].Caption);
            if (Name <> '-') then begin
              if (ReadWrite = tRegRead) then begin
                if ValueExists(Name) then begin
                  if (Menu.Items[lp1].Checked <> ReadBool(Name)) then
                    Menu.Items[lp1].Click;
                end; {if}
              end else
                WriteBool(Name, Menu.Items[lp1].Checked);
            end; {if}
          end; {if}
        end; {for}
        CloseKey;
      end; {if}
    finally;
      Free;
    end; {try}
  end; {with}
end; {RegSubMenuSettings}


function GetNodePath(Node : TTreeNode) : string;
// Iterate from the node to the root building up the path string.
begin
  Result  := Node.Text;
  while (Node.Level > 1) do begin
    Node    := Node.Parent;
    Result  := Node.Text + '\' + Result;
  end; {while}
end; {GetNodePath}


procedure SetNodeImages(Node : TTreeNode; HasChildren : boolean);
begin
  if HasChildren then begin
    Node.HasChildren    := true;
    Node.ImageIndex     := cClosedBook;
    Node.SelectedIndex  := cOpenBook;
  end else begin
    Node.ImageIndex     := cClosedPage;
    Node.SelectedIndex  := cOpenPage;
  end; {if}
end; {SetNodeImages}


procedure TajRegPathManager.SetfFullPath(Value : string);
var
  KeyText   : string;
  DelimPos  : integer;
begin
  if (fFullPath <> Value) then begin
    fFullPath := Value;
    DelimPos  := Pos('\', fFullPath);
    if (DelimPos > 0) then begin
      KeyText   := Copy(fFullPath, 1, pred(DelimPos));
      fSubPath  := Copy(fFullPath, succ(DelimPos), Length(fFullPath) - DelimPos);
    end else begin
      KeyText   := fFullPath;
      fSubPath  := '';
    end; {if}

    if (fRootHKEYText <> KeyText) then begin
      fRootHKEYText := KeyText;
      fRootHKEY     := HKEYTextToHKEY(fRootHKEYText);
    end; {if}

  end; {if}
end; {SetfFullPath}


procedure TfrmRegBrowser.FormCreate(Sender : TObject);
var
  lp1           : integer;
  Node1, Node2  : TTreeNode;
begin
//  Width   := 632;
//  Height  := 376;

  btnBookmark.Tag                 := cAddBookmark;                        // Initialize bookmark Tags.
  mnuPopBookmark.Tag              := cAddBookmark;

  IsPropertyEditor                := false;                               // Not a property editor - might be later.

  pnBack.DoubleBuffered           := true;                                // Stop some of the flicker.
  pnRegPath.DoubleBuffered        := true;
  edRegPath.DoubleBuffered        := true;

  fajAlterMenu                    := TajAlterMenu.Create(Self);
  fajRecentKeys                   := TajRecentKeys.Create(mnuBookmarks, fajAlterMenu, cRegRegistryBrowser);  // Add bookmark support.
  fajRecentKeys.OnRecentKeyClick  := RecentKeyClick;                      // Connect the event handler.

  fRegPathManager                 := TajRegPathManager.Create;            // Create the path manager.

  tvRegistry.Items.BeginUpdate;                                           // Add the default nodes ...
  Node1             := tvRegistry.Items.Add(nil, 'и

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲自拍偷拍av| 午夜久久久久久久久| 一区二区三区中文字幕电影 | 777欧美精品| 国产欧美一区二区在线| 亚洲一区二区三区四区中文字幕| 久久成人免费电影| 色婷婷综合视频在线观看| 欧美xxxx老人做受| 午夜精品福利视频网站| 99精品桃花视频在线观看| 日韩一区二区在线观看视频播放| 亚洲男同性恋视频| 国产成人免费在线观看不卡| 91精品在线观看入口| 一区二区三区.www| 99久久精品国产一区二区三区 | 偷拍亚洲欧洲综合| 色诱亚洲精品久久久久久| 欧美激情一区二区三区在线| 麻豆极品一区二区三区| 91精品国产综合久久精品性色| 亚洲综合一区二区三区| 91丨porny丨国产| 国产精品久久夜| 国产凹凸在线观看一区二区| 欧美成人福利视频| 蜜乳av一区二区三区| 欧美区在线观看| 亚洲一区二区三区视频在线 | 91麻豆国产福利在线观看| 国产女人水真多18毛片18精品视频| 麻豆91在线观看| 日韩欧美一级精品久久| 黄页视频在线91| 日韩欧美高清在线| 久久国产精品99久久人人澡| 日韩欧美一级精品久久| 国产综合色在线| 国产三级欧美三级| 成人污视频在线观看| 国产精品久久久久久一区二区三区| 国产在线不卡视频| 亚洲国产成人自拍| av动漫一区二区| 樱桃视频在线观看一区| 欧美三日本三级三级在线播放| 午夜免费欧美电影| 日韩一区二区三区电影| 激情综合网最新| 亚洲国产精品99久久久久久久久| 成人综合婷婷国产精品久久蜜臀| 亚洲视频狠狠干| 欧美日韩和欧美的一区二区| 美女视频黄a大片欧美| 国产午夜久久久久| 99精品国产99久久久久久白柏| 一区二区三区电影在线播| 欧美肥妇毛茸茸| 国产一区二区三区精品欧美日韩一区二区三区| 日韩欧美一区二区三区在线| 国产69精品一区二区亚洲孕妇| 国产精品激情偷乱一区二区∴| 欧美性猛交xxxx乱大交退制版| 蜜臀av性久久久久蜜臀aⅴ流畅 | 精品视频一区二区三区免费| 日韩精品一二三四| 日本一区二区三区在线观看| 在线观看日韩av先锋影音电影院| 欧美aⅴ一区二区三区视频| 中文字幕免费一区| 欧美麻豆精品久久久久久| 久久99国产精品免费| 亚洲视频在线观看三级| 日韩欧美区一区二| 色成人在线视频| 国产一区二区三区美女| 亚洲成人一区二区在线观看| 国产亚洲短视频| 51精品国自产在线| 99re成人精品视频| 精品一区二区三区视频| 亚洲亚洲人成综合网络| 国产亚洲成aⅴ人片在线观看| 欧美日韩一区二区三区不卡 | 欧美性大战久久久久久久 | 视频一区视频二区中文字幕| 国产日本亚洲高清| 日韩一区和二区| 在线观看日韩精品| 99免费精品视频| 国产自产高清不卡| 午夜激情久久久| 亚洲精品高清视频在线观看| 久久只精品国产| 日韩一级免费观看| 欧美日韩一区二区三区高清| 99国产麻豆精品| 成人免费高清在线| 韩国毛片一区二区三区| 奇米色一区二区| 性做久久久久久免费观看| 亚洲男同1069视频| 亚洲图片激情小说| 国产精品女主播av| 中文字幕第一页久久| 久久综合精品国产一区二区三区| 欧美一级午夜免费电影| 91麻豆精品国产91久久久使用方法| 91香蕉视频mp4| 91亚洲精华国产精华精华液| 成人av免费在线| av欧美精品.com| 97se亚洲国产综合自在线| jlzzjlzz国产精品久久| a在线播放不卡| 99r精品视频| 色一情一伦一子一伦一区| 色综合久久天天综合网| 在线视频综合导航| 在线国产电影不卡| 欧美美女视频在线观看| 欧美一区二区视频免费观看| 日韩片之四级片| 久久奇米777| 欧美国产日本韩| 亚洲免费三区一区二区| 一区2区3区在线看| 五月婷婷激情综合| 美女任你摸久久| 国产宾馆实践打屁股91| 91老师国产黑色丝袜在线| 91福利小视频| 日韩天堂在线观看| 国产午夜亚洲精品不卡| 亚洲欧美日韩在线播放| 亚洲成人1区2区| 狠狠色综合日日| av高清不卡在线| 欧美精选在线播放| 久久这里只有精品视频网| 国产精品五月天| 亚洲国产综合色| 国产在线视频精品一区| 91首页免费视频| 欧美一区二区三区系列电影| 久久久久久9999| 一区二区三区久久久| 日韩极品在线观看| 成人avav影音| 在线观看日韩国产| 亚洲精品一区二区在线观看| 中文字幕永久在线不卡| 午夜精品久久久| 成人短视频下载| 国产精品国产三级国产aⅴ原创| 亚洲电影在线免费观看| 国产精品家庭影院| 亚洲一区二区三区四区五区黄| 奇米色一区二区| 色88888久久久久久影院按摩 | 51精品视频一区二区三区| 国产欧美日产一区| 婷婷中文字幕一区三区| 成人少妇影院yyyy| 日韩视频在线你懂得| 亚洲欧美另类小说视频| 狠狠色2019综合网| 欧美日韩国产成人在线免费| 欧美激情一区在线观看| 免费观看成人av| 欧美日韩你懂得| 综合久久久久久| 国产suv精品一区二区6| 在线成人av网站| 亚洲在线视频网站| 成人性生交大合| 337p日本欧洲亚洲大胆色噜噜| 一区二区高清在线| 97久久超碰国产精品电影| 精品国产乱码久久久久久图片 | 久久久午夜精品| 日韩精品乱码免费| 91国偷自产一区二区开放时间| 中文字幕欧美国产| 国产精品 欧美精品| 精品伦理精品一区| 日本三级亚洲精品| 3d动漫精品啪啪| 亚洲mv大片欧洲mv大片精品| 日本精品一区二区三区高清| 1024国产精品| 99久久精品国产观看| 中文字幕日韩一区二区| 成人免费视频caoporn| 久久久激情视频| 国产91精品在线观看| 国产日韩欧美综合一区| 国产传媒欧美日韩成人| 国产日韩欧美在线一区|