Delphi 如何创建拒绝访问的文件夹或文件?
我希望只有我自己能够从 delphi 访问该文件夹/文件。
只需在您的用户配置文件下创建一个文件。默认安全设置不允许其他用户访问。管理员自然有访问权限,但您无法对管理员隐藏。
你可以试试我的简化例子
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 组件。但是,我从来没有尝试过这个。