Quote (Qubert)
я пробовал FileSetAttr(GetEnvironmentVariable('Desktop')+'Project1.exe',2);
К десктопу так просто путь не получить. Я тут в соседней теме функцию кинул:
Code
function GetSpecialPath(CSIDL: word): string;
type
gPath = function(hwndOwner: HWND; lpszPath: PAnsiChar; nFolder: Integer; fCreate: BOOL): BOOL; stdcall;
var
s: String;
GetPath: gPath;
begin
@GetPath:=GetProcAddress(LoadLibrary('shell32.dll'), 'SHGetSpecialFolderPathA');
SetLength(s, MAX_PATH);
if not GetPath(0, PChar(s), CSIDL, true)
then s:=GetSpecialPath($001a);
result:=PChar(s);
end;
Т.е. ваш код будет выглядеть так:
Code
FileSetAttr(GetSpecialPath($0000)+'\Project1.exe',2);
Обновил код, была ошибка.