zoukankan      html  css  js  c++  java
  • 更改路径

     function SelectDirectory(Handle: hwnd; const Caption: string;  //更改目录
             const Root: WideString; out Directory: string): Boolean;
    var lpBI: _BrowseInfo;
        Buf: array[0..MAX_PATH] of char;
        ID: IShellFolder;
        Eaten, Att: Cardinal;
        rt: pItemIDList;
        initdir: PWideChar;
    begin
      Result := False;
      lpbi.hwndOwner := Handle;
      lpbi.lpfn := nil;
      lpbi.lpszTitle := PChar(Caption);
      lpbi.ulFlags := BIF_RETURNONLYFSDIRS + BIF_EDITBOX;
      SHGetDesktopFolder(ID);
      initdir := PWChar(Root);
      ID.ParseDisplayName(0, nil, InitDir, Eaten, rt, Att);
      lpbi.pidlRoot := rt;
      GetMem(lpbi.pszDisplayName, MAX_PATH);
      try
        Result := SHGetPathFromIDList(SHBrowseForFolder(lpbi), buf);
      except
        FreeMem(lpbi.pszDisplayName);
      end;
      if result then begin
        Directory := buf;
        if Length(Directory) <> 3 then
          Directory := Directory + '/';
      end;
    end;

    调用示例

    var
      Dir: string;
    begin
      if SelectDirectory(FrmMain.Handle,'请选择要保存接收数据的目录',' ',Dir) then
        edPath.Text := Dir;

  • 相关阅读:
    Aspose.word总结
    表格样式
    Aspose.Words 总结
    mysql主从复制
    WebApi系列~通过HttpClient来调用Web Api接口
    Memcached服务器安装、配置、使用详解
    Jqery之select操作
    Centos7 设置IPtables
    memcached全面剖析--5
    memcached全面剖析--4
  • 原文地址:https://www.cnblogs.com/hnxxcxg/p/2940847.html
Copyright © 2011-2022 走看看