![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
Надо узнать имя юзера, накопал такую ф-цию:
Код:
function GetUserFromWindows: string;
var
UserName : string;
UserNameLen : Dword;
begin
UserNameLen := 255;
SetLength(userName, UserNameLen);
if GetUserName(PChar(UserName), UserNameLen) then
Result := Copy(UserName,1,UserNameLen - 1)
else
Result := 'Unknown';
end;Но мне надо как то это дело вставить в путь, например C:\Document and Setting\сюда имя юзера вставить надо\1.txt подскажите плиз, было бы на php или cmd я бы уже сделал, а так только знакомлюсь с делфи Последний раз редактировалось Hack M, 20.01.2011 в 18:40. |
|
#2
|
||||
|
||||
|
Код:
uses
ActiveX,
ShlObj,
...
function GetSpecialFolderLocation(Folder: Integer): String;
var
ppidl: PItemIDList;
begin
Result:='';
ppidl:=nil;
try
if SHGetSpecialFolderLocation(0, Folder, ppidl)=S_OK then
begin
SetLength(Result, MAX_PATH);
if SHGetPathFromIDList(ppidl, PChar(Result)) then Result:=StrPas(PAnsiChar(Result));
end;
finally
if ppidl<>nil then CoTaskMemFree(ppidl);
end;
end;
...
procedure TForm1.FormCreate(Sender: TObject);
begin
Edit1.Text:=IncludeTrailingPathDelimiter(GetSpecialFolderLocation($28));
end; |
|
#3
|
||||
|
||||
|
И где путь указывать ? как узнанное имя юзера в путь вставить ?
Я с переменными по Delphi плохо общаюсь =(( |
|
#4
|
||||
|
||||
|
Предложенное выше сразу дает путь к папке юзера (например, "C:\Users\ADMIN\"). А в переменной:
Код:
S:= IncludeTrailingPathDelimiter(GetSpecialFolderLocation($28)) + '1.txt'; |
|
#5
|
||||
|
||||
|
в Edit1.Text путь будет!
|
|
#6
|
||||
|
||||
|
Очередной хaкир, незнающий как вичислить 2+2=?
Уже который по счету? Хaктим?) Ню ню... |
|
#7
|
||||
|
||||
|
Цитата:
Спасибо вам большое. родина вас не забудет. Мне надо попасть в C:\Documents and Settings\username\Application Data\file.txt то есть мне в кнопке надо будет выставить над begin: Var: S:= IncludeTrailingPathDelimiter(GetSpecialFolderLocat ion($28)) + '\Application Data\file.txt'; верно ? |
|
#8
|
||||
|
||||
|
Не совсем. В варе переменные объявляются.
Код:
var s: String; begin S:=IncludeTrailingPathDelimiter(GetSpecialFolderLocat ion($28)) + '\Application Data\file.txt'; |
|
#9
|
||||
|
||||
|
Цитата:
![]() насчет хактима то просто попросил под ник нарисовать чё нить нормальное в зеленом стиле буквоцифр мне нарисовали))) |
|
#10
|
||||
|
||||
|
Цитата:
большое спасибо, всё Good ! |
|
#11
|
||||
|
||||
|
Ещё чуток плиз помогите:
CopyFile('S:=IncludeTrailingPathDelimiter(GetSpeci alFolderLocat ion($28)) + '\Application Data\file.txt'', 'C:\Windows\file.txt', true); как вот копировать его =( |
|
#12
|
||||
|
||||
|
Код:
IncludeTrailingPathDelimiter(GetSpecialFolderLocation($1a)); |
|
#13
|
||||
|
||||
|
Всё рано ошибка, немогу скопировать
CopyFile('S:=IncludeTrailingPathDelimiter(GetSpeci alFolderLocation($1a)) + '\file.txt'', 'C:\Windows\file.txt', true); [Error] Unit1.pas(48): Not enough actual parameters [Error] Unit1.pas(48): Illegal character in input file: '\' ($5C) [Error] Unit1.pas(48): Statement expected, but expression of type 'String' found |
|
#14
|
||||
|
||||
|
Возьми же книжку по делфи и почитай...
Код:
S:=IncludeTrailingPathDelimiter(GetSpeci alFolderLocation($1a)) + '\file.txt'; CopyFile(S, 'C:\Windows\file.txt', true); |
|
#15
|
||||
|
||||
|
[Error] Unit1.pas(50): Incompatible types: 'String' and 'PAnsiChar'
|