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

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

?? pgfwq.pas

?? 三層數據配置程序 很簡單
?? PAS
字號:
unit PGFWQ;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls,inifiles, DB, ADODB,Registry, IdWinsock,ComObj,
  Buttons;

type
  PnetResourceArr = ^TNetResource;
  TFrmpgfwq = class(TForm)
    Panel1: TPanel;
    GroupBox1: TGroupBox;
    Label1: TLabel;
    Label2: TLabel;
    fromshow: TCheckBox;
    edserver: TEdit;
    Button1: TButton;
    GroupBox2: TGroupBox;
    Label3: TLabel;
    Label4: TLabel;
    Socketck: TCheckBox;
    Edit1: TEdit;
    Edit2: TEdit;
    Button2: TButton;
    Panel2: TPanel;
    Listzu: TListBox;
    Listcomp: TListBox;
    Label5: TLabel;
    Label6: TLabel;
    Button3: TButton;
    ComboBox2: TComboBox;
    ADOQuery1: TADOQuery;
    BitBtn1: TBitBtn;
    procedure FormShow(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    function GetNetWorkgroup : string;    //得到網絡上的工作組 1
    Function GetNameByIP(MIP:string; var Name:string):boolean;
    function GetServercomList(List:TStrings):boolean;
    procedure Button3Click(Sender: TObject); //得到網絡上的工作組2
    function GetUserList(fServer:string;List:TStrings):boolean;
    procedure ListzuClick(Sender: TObject);
    procedure ListcompDblClick(Sender: TObject);//得到計算機名
    function checksqlserver:boolean;
    function  pRemote(var Cn: Tadoquery; pServerName: String):boolean;
    procedure Panel2DblClick(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject); //連接遠程數據庫
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Frmpgfwq: TFrmpgfwq;
  myfile:Tinifile;
implementation

{$R *.dfm}

procedure TFrmpgfwq.FormShow(Sender: TObject);
var
  filename:string;
begin
  Filename:=ExtractFilePath(Paramstr(0))+'system\login.ini';
  myfile:=Tinifile.Create(filename);
  with myfile do
     begin
       edserver.Text:=ReadString('DMS','ServerName','');
       combobox2.SelText:=ReadString('DMS','DataBaseName','');
       fromshow.Checked:=readBOOL('DMS','ShowMainForm',false);
     END;
   with myfile do
    begin
        EDIT1.Text:= ReadString('DM','Address','');
        EDIT2.Text:=ReadString('DM','Port','');
        SocketCK.Checked:=readBOOL('DM','Socket',FALSE);
    END;
    panel2.Visible:=false;
 end;

procedure TFrmpgfwq.Button1Click(Sender: TObject);
begin
 if combobox2.Text='' then
   begin
  showmessage('請選擇數據庫!!!!');
   combobox2.SetFocus;
   end
 else
  begin
   WITH myfile do
    begin
       WriteString('DMS','ServerName',edserver.Text);
       WriteString('DMS','DataBaseName',combobox2.Text);
       WriteBool('DMS','ShowMainForm',fromshow.Checked);
    end;
  end;
end;

procedure TFrmpgfwq.Button2Click(Sender: TObject);
begin
 with myfile do
    begin
      WriteString('DM','Address', EDIT1.Text);
      WriteString('DM','Port',EDIT2.Text);
      WriteBOOL('DM','Socket',SOCKETCK.Checked);
    END;
end;

function TFrmpgfwq.GetNetWorkgroup: string;
var
  Reg : TRegistry;
begin
  Reg := TRegistry.create;
  Result := '(n/a)';
  with Reg do
  try
     RootKey := HKEY_LOCAL_MACHINE;
     if OpenKey('System\CurrentControlSet\Services\VxD\VNETSUP',
        false) then
        Result := ReadString('Workgroup');
  finally
     CloseKey;
     free;
  end;
end;
function TFrmpgfwq.GetNameByIP(MIP: string; var Name: string): boolean;
var
  PHt:PHostEnt;
  WSData: TWSAData;
  i:Word;
  j:integer;
  k:u_long;
begin
  result:=false;
  i:=MAKEWORD(1,1);
  if WSAStartup(i,WSData)<>0 then exit;
  k:=inet_addr(PChar(MIP));
  PHt:=gethostbyaddr(@k,4,PF_INET);
  if PHt=nil then begin
     j:=WSAGetLastError;
     Name:='Error:'+inttostr(j-WSABASEERR);
  end else begin
     Name:=PHt.h_name;
     result:=true;
  end;
  WSACleanup;

end;

function TFrmpgfwq.GetServercomList(List: Tstrings):boolean;
Type
  {$H+}
  PMyRec = ^MyRec;
  MyRec = Record
            dwScope      : Integer;
            dwType        : Integer;
            dwDisplayType : Integer;
            dwUsage      : Integer;
            LocalName    : String;
            RemoteName    : String;
            Comment      : String;
            Provider      : String;
          End;
  {H-}
Var
  NetResource : TNetResource;          //定義網絡資源類型數組
  TempRec    : PMyRec;
  Buf        : Pointer;
  Count,
  BufSize,
  Res        : DWORD;
  lphEnum    : THandle;
  p          : PNetResourceArr;
  i,
  j          : SmallInt;
  NetworkTypeList : TList;       //用于存儲枚舉類型的網絡類型
begin
  Result := False;

  NetworkTypeList := TList.Create;
  List.BeginUpdate;
  List.Clear;
  GetMem(Buf, 8192);
  Try
    Res := WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_DISK, RESOURCEUSAGE_CONTAINER, Nil,lphEnum);
    If Res <> 0 Then Raise Exception(Res);
    Count := $FFFFFFFF;
    BufSize := 8192;
    Res := WNetEnumResource(lphEnum, Count, Pointer(Buf), BufSize);
    If Res = ERROR_NO_MORE_ITEMS Then Exit;
    If (Res <> 0) Then Raise Exception(Res);
    P := PNetResourceArr(Buf);
    For I := 0 To Count - 1 Do
    Begin
      New(TempRec);
      TempRec^.dwScope := P^.dwScope;
      TempRec^.dwType := P^.dwType ;
      TempRec^.dwDisplayType := P^.dwDisplayType ;
      TempRec^.dwUsage := P^.dwUsage ;
      TempRec^.LocalName := StrPas(P^.lpLocalName);
      TempRec^.RemoteName := StrPas(P^.lpRemoteName);
      TempRec^.Comment := StrPas(P^.lpComment);
      TempRec^.Provider := StrPas(P^.lpProvider);
      NetworkTypeList.Add(TempRec);
      Inc(P);
    End;
    Res := WNetCloseEnum(lphEnum);
    If Res <> 0 Then Raise Exception(Res);
    For J := 0 To NetworkTypeList.Count-1 Do
    Begin
      TempRec := NetworkTypeList.Items[J];
      NetResource := TNetResource(TempRec^);
      Res := WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_DISK, RESOURCEUSAGE_CONTAINER, @NetResource,lphEnum);
      If Res <> 0 Then Raise Exception(Res);
      While true Do
      Begin
        Count := $FFFFFFFF;
        BufSize := 8192;
        Res := WNetEnumResource(lphEnum, Count, Pointer(Buf), BufSize);
        If Res = ERROR_NO_MORE_ITEMS Then Break;
        If (Res <> 0) Then Raise Exception(Res);
        P := PNetResourceArr(Buf);
        For I := 0 To Count - 1 Do
        Begin
          List.Add(P^.lpRemoteName);
          //listcomp.Items.Add(P^.lpRemoteName);
          Inc(P);
        End;
      End;
    End;
    Res := WNetCloseEnum(lphEnum);
    If Res <> 0 Then Raise Exception(Res);
      Result := True;
    Finally
      FreeMem(Buf);
      NetworkTypeList.Destroy;
  End;
  List.EndUpdate;
end;

procedure TFrmpgfwq.Button3Click(Sender: TObject);
begin
 try
   panel2.Visible:=true;
   GetServercomList(listzu.Items);
   listzu.Selected[0]:=true;
   ListzuClick(self);
 except
   showmessage('系統錯誤!!') ;
 end;
end;

function TFrmpgfwq.GetUserList(fServer: string; List: TStrings):boolean;
Var
  NetResource : TNetResource;
  Buf        : Pointer;
  Count,
  BufSize,
  Res        : DWord;
  Ind        : Integer;
  lphEnum    : THandle;
  Temp        : PNetResourceArr;
Begin
  List.Clear;
  GetMem(Buf, 8192);
  Try
    FillChar(NetResource, SizeOf(NetResource), 0);
    NetResource.lpRemoteName := @fServer[1];
    NetResource.dwDisplayType := RESOURCEDISPLAYTYPE_SERVER;
    NetResource.dwUsage := RESOURCEUSAGE_CONTAINER;
    NetResource.dwScope := RESOURCETYPE_DISK;
    Res := WNetOpenEnum(RESOURCE_GLOBALNET, RESOURCETYPE_DISK, RESOURCEUSAGE_CONTAINER, @NetResource,lphEnum);
    If Res <> 0 Then
     begin
          Result := false;
          Exit;
     end;      
    While True Do
    Begin
      Count := $FFFFFFFF;
      BufSize := 8192;
      Res := WNetEnumResource(lphEnum, Count, Pointer(Buf), BufSize);
      If Res = ERROR_NO_MORE_ITEMS Then
        begin
          Result := false;
          Exit;
        end;  
      If (Res <> 0) then
        begin
          Result := false;
          Exit;
        end;  
      Temp := PNetResourceArr(Buf);
      For Ind := 0 to Count - 1 do
      Begin
        List.Add(Temp^.lpRemoteName + 2); { Add all the network usernames to List StringList }
        Inc(Temp);
      End;
    End;
    Res := WNetCloseEnum(lphEnum);
    If Res <> 0 Then Raise Exception(Res);
   Result := True;
  Finally
    FreeMem(Buf);

end;
end;

procedure TFrmpgfwq.ListzuClick(Sender: TObject);
begin
  try
    GetUserList(Listzu.Items[Listzu.ItemIndex],Listcomp.Items);
  except
    showmessage('網絡故障,請稍后再試!!!!!');
  end;
end;

procedure TFrmpgfwq.ListcompDblClick(Sender: TObject);
type
   ds=(master,Northwind,pubs,model,msdb,tempdb);
 var
  i:integer;

begin
   try
      for i:= 0 to listcomp.Items.Count-1 do
        begin
          if  (listcomp.Selected[i]=true )  then
              edserver.Text:=listcomp.items.Strings[i];
        end;
        if checksqlserver then  panel2.Visible:=false;
         with adoquery1 do
          begin
            try
             close;
             SQL.LoadFromFile(ExtractFilePath(Paramstr(0))+'system\SQL.txt');
             pRemote(adoquery1,edserver.Text);
             open;
             application.ProcessMessages;
             except
               showmessage('登陸失敗,請于管理員聯系!!!') ;
               CLOSE;
              END; 
            first;
            COMBOBOX2.Clear;
            while not eof do
             begin
                if (fieldbyname('name').AsString ='master')or (fieldbyname('name').AsString ='Northwind')or
                (fieldbyname('name').AsString ='pubs') or(fieldbyname('name').AsString ='tempdb') or (fieldbyname('name').AsString ='msdb')or (fieldbyname('name').AsString='model') then
                   next
                else
                 combobox2.Items.Add(fieldbyname('name').AsString);
                 next;
             end;
         end;       

   except
     showmessage('系統錯誤,稍后再試!!!!');
   end;
   combobox2.SetFocus;
end;

function TFrmpgfwq.checksqlserver:boolean;
var
   SQLServer: Variant;
   ServerList: Variant;
  i,nServers: integer;
begin
 try
   SQLServer := CreateOleObject('SQLDMO.Application');
   ServerList := SQLServer.ListAvailableSQLServers;
   nServers := ServerList.Count;
  except
   Result :=false;
   Messagebox(handle, '數據庫實例檢測失敗,請安裝數據庫管理系統!', '', 1);
   exit;
 end;

  for i := 1 to nservers do
    begin
     // combobox1.Items.Add(ServerList.Item(i));
   end;
 SQLServer := NULL;
 serverList := NULL;
 Result :=true;
 end;
 
function TFrmpgfwq.pRemote(var Cn: Tadoquery; pServerName:String): boolean;
begin
  cn.Close;
 if Trim(pServerName) <> '' then
    begin
     Cn.ConnectionString := 'Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=master;Data Source=' +pServerName;
     end;
    result:=true;
end;

procedure TFrmpgfwq.Panel2DblClick(Sender: TObject);
begin
   panel2.Visible:=false;
end;

procedure TFrmpgfwq.BitBtn1Click(Sender: TObject);
begin
  close;
end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品美女在线播放| 最新国产精品久久精品| 一级精品视频在线观看宜春院| 久久精品99久久久| 欧美videos中文字幕| 免费久久99精品国产| 麻豆成人免费电影| 精品国产制服丝袜高跟| 亚洲成人黄色小说| 国产jizzjizz一区二区| 中文在线资源观看网站视频免费不卡 | 亚洲欧美一区二区三区久本道91| 奇米一区二区三区| 精品福利一区二区三区| 国产麻豆精品视频| 亚洲欧洲日韩在线| 欧美一区二区女人| 韩国精品在线观看| 婷婷成人激情在线网| 欧洲生活片亚洲生活在线观看| 一区二区三区国产精华| 日韩美女一区二区三区四区| 精品影视av免费| 中文字幕中文字幕在线一区| 欧美人xxxx| av亚洲精华国产精华精华| 国产三级一区二区| 在线观看一区日韩| 韩国成人精品a∨在线观看| 亚洲日本在线a| 欧美精品18+| 日韩欧美精品在线| 99久久伊人精品| 国产日韩欧美精品电影三级在线| av高清久久久| 国产91丝袜在线观看| 久久99久久久欧美国产| 亚洲午夜久久久久久久久电影院| 精品国精品国产| 欧美一区二区三区的| 日本电影亚洲天堂一区| 成人av一区二区三区| 国产高清精品久久久久| 午夜精品免费在线| 亚洲一区在线看| 亚洲一区二区三区四区在线观看| 国产精品理论片| 久久久一区二区| 国产亚洲一区二区三区在线观看 | 欧美日韩精品一区二区在线播放| 国产黑丝在线一区二区三区| 国产福利一区二区| 欧美亚洲精品一区| 久久综合成人精品亚洲另类欧美| 亚洲欧洲精品天堂一级| 亚洲超碰精品一区二区| 国产电影一区二区三区| 欧美日韩激情在线| 亚洲视频香蕉人妖| 国产在线视视频有精品| 欧美午夜精品电影| 国产精品天天摸av网| 精品一区二区免费| 欧美日本一区二区| 国产精品久久久久久久久久免费看 | 高清成人免费视频| 欧美xxxx老人做受| 午夜精品久久久久久久久| 成人h精品动漫一区二区三区| 欧美一级免费观看| 琪琪久久久久日韩精品| 欧美伊人久久久久久久久影院| 国产精品乱码一区二三区小蝌蚪| 极品瑜伽女神91| 精品国产乱子伦一区| 免费在线观看精品| 26uuu精品一区二区在线观看| 视频在线观看一区二区三区| 欧美三级中文字幕| 日韩高清不卡一区| av在线不卡电影| 国产三级精品三级在线专区| 2024国产精品| 国产一区三区三区| 国产人妖乱国产精品人妖| 久久成人18免费观看| 欧美一区二区啪啪| 天天色 色综合| 欧美一区二区三区公司| 日韩av二区在线播放| 欧美日韩国产三级| 另类小说视频一区二区| 日韩欧美国产综合在线一区二区三区 | 成人免费视频网站在线观看| 久久久精品国产免费观看同学| 久久精品国产亚洲5555| 久久午夜色播影院免费高清| 久久国产精品露脸对白| 日本一区二区免费在线| 91香蕉视频在线| 青青草国产成人99久久| 国产精品久久精品日日| 在线一区二区三区做爰视频网站| 亚洲国产成人av好男人在线观看| 欧美久久免费观看| 韩国精品主播一区二区在线观看| 亚洲三级久久久| 精品成人佐山爱一区二区| 波多野结衣中文字幕一区| 性久久久久久久久久久久| 2欧美一区二区三区在线观看视频| jizz一区二区| 国产麻豆日韩欧美久久| 亚洲福中文字幕伊人影院| 久久婷婷久久一区二区三区| 99综合影院在线| 国产盗摄一区二区三区| 麻豆成人91精品二区三区| 成人激情av网| 国产一区二区三区观看| 日本精品裸体写真集在线观看| 欧美视频日韩视频| 在线免费观看日韩欧美| 国产精品一区二区视频| 精品在线免费观看| 中文字幕巨乱亚洲| 欧美一区二区三区婷婷月色| 欧美视频一区在线观看| 91精品国产综合久久久久久漫画 | 亚洲男人电影天堂| 青青青伊人色综合久久| 91麻豆6部合集magnet| 久久这里只有精品6| 亚洲一区日韩精品中文字幕| 久久精品国产99| 91精品国产综合久久精品| 亚洲精品乱码久久久久久日本蜜臀| 久久精品国产澳门| 日韩免费观看高清完整版| 亚洲一区二区在线观看视频| 北岛玲一区二区三区四区| 久久久精品国产99久久精品芒果 | 日韩视频免费观看高清完整版在线观看 | 国产成人亚洲综合色影视| 欧美一区二区久久久| 亚洲国产一区二区在线播放| 91电影在线观看| 亚洲精品国产精华液| 在线视频国内自拍亚洲视频| 1024成人网| 日本高清免费不卡视频| 一区在线观看视频| 99国产精品久久久久久久久久久| 欧美变态tickling挠脚心| 韩国毛片一区二区三区| 欧美成人一区二区三区在线观看| 五月天激情综合| 精品噜噜噜噜久久久久久久久试看 | 亚洲精品成人少妇| 色婷婷综合久久久| 天天综合色天天综合| 日韩精品一区在线| 国产伦精品一区二区三区免费迷 | 成人av动漫在线| 亚洲丝袜另类动漫二区| 北岛玲一区二区三区四区| 亚洲精选视频免费看| 在线亚洲高清视频| 久久精品国产免费看久久精品| 精品99一区二区| 一本一本久久a久久精品综合麻豆| 国产精品盗摄一区二区三区| 色狠狠色噜噜噜综合网| 午夜精品视频在线观看| 久久久亚洲午夜电影| av毛片久久久久**hd| 视频在线在亚洲| 久久久99久久| 色综合天天天天做夜夜夜夜做| 亚洲一区中文日韩| 亚洲天堂中文字幕| 国产精品午夜在线观看| 91精品国产综合久久婷婷香蕉 | 成人午夜av在线| 日韩电影一区二区三区四区| 国产精品麻豆欧美日韩ww| 337p粉嫩大胆色噜噜噜噜亚洲| 欧美日韩综合一区| 97久久精品人人爽人人爽蜜臀| 午夜精品福利一区二区三区av| 欧美极品xxx| 日韩一级二级三级| 日韩女优毛片在线| 这里只有精品电影| 欧美一区二区在线观看| 欧美日韩大陆一区二区| 在线视频亚洲一区| 99久久精品久久久久久清纯| 国内精品免费在线观看| 精品一区二区三区香蕉蜜桃 |