如何在Delphi中创建访问被拒绝文件夹?

时间:2012-05-25 18:24:26

标签: windows delphi

如何通过Delphi创建拒绝访问权限的文件夹或文件?

我希望自己能够从delphi访问该文件夹/文件。

2 个答案:

答案 0 :(得分:3)

只需在您的用户个人资料下创建一个文件即可。默认安全设置禁止其他用户访问。当然,管理员可以访问,但您无法向管理员隐藏。

答案 1 :(得分:3)

您可以尝试我的简化示例

interface
...
   function EncryptFileA(lpFilename: PAnsiChar): BOOL; stdcall;
   {$EXTERNALSYM EncryptFileA}
...
implementation
...
   // Delphi wrongly register function EncryptFileA under kernel32.dll. 
   // Just re-register it using AdvApi32.dll 
   function EncryptFileA; external AdvApi32 name 'EncryptFileA'; 
...
procedure TForm1.btn1Click(Sender: TObject);
begin
  CreateDirectory('c:\test', nil);
  EncryptFileA('c:\test');
end;

此代码将创建“C \ test”文件夹并对其进行加密。您放入的任何文件只能由所有者(您)访问。您可以在不同的用户下切换和登录,并进行测试。当然,您需要详细说明上面的代码,以检查目录是否存在,获取错误(如果有)并正确处理。

或者,您可以使用免费加密工具www.truecrypt.org和Delphi Truecrypt组件,例如http://www.sdean12.org/SDeanComponents.htm#OTFETrueCrypt或google用于其他Delphi Truecrypt组件。但是,我从不尝试过这个。