Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.10.2014, 13:02   #21
zdus2757
vk.com/replog
Пользователь
 
Регистрация: 04.05.2012
Сообщений: 87
По умолчанию

так он не копирует файл, файл не появляется в папке

--
CopyFile(PWideChar(s3), PWideChar('C:\ss.txt'), true); так не копирует

CopyFile(PWideChar(s3), 'C:\ss.txt', true); и так не копирует

var s3:PWideChar;
s3:='...' + Пользователь + '...';
CopyFile(s3, 'C:\ss.txt', true); а так вообще ошибку пишет(не компилирует)

т.е. посути если писать полностью путь (без имени пользователя которое нашла программа) все нормально работает

Последний раз редактировалось zdus2757; 24.10.2014 в 13:11.
zdus2757 вне форума Ответить с цитированием
Старый 24.10.2014, 13:11   #22
maloun
Форумчанин
 
Аватар для maloun
 
Регистрация: 03.01.2011
Сообщений: 233
По умолчанию

Цитата:
Сообщение от zdus2757 Посмотреть сообщение
так он не копирует файл, файл не появляется в папке
значит не верную строку отправляешь, для нормальной работы нужно чтобы все строки были нормальными PWideChar'ами,

т.е. если переводить константные строки
Код:
  CopyFile( PWideChar('C:\test\старый_файл.txt'),  PWideChar('C:\test\новый_файл.txt'), true);
- будет работать (если конечно копируемый файл существует)

если переменную String переведешь в PWideChar
Код:
var
  s1,s2:String;
begin
  s1:='C:\test\старый_файл.txt';
  s2:='C:\test\новый_файл.txt';

  CopyFile(PWideChar(s1),PWideChar(s2),True);
end;
пыжок
maloun вне форума Ответить с цитированием
Старый 24.10.2014, 13:14   #23
zdus2757
vk.com/replog
Пользователь
 
Регистрация: 04.05.2012
Сообщений: 87
По умолчанию

CopyFile(PWideChar('C:\Users\' + GetCurrentUserName + '\AppData\.....'), PWideChar('C:\ss.txt'), true); вот так не работает

CopyFile(PWideChar('C:\Users\Пользо ватель\AppData\.....'), PWideChar('C:\ss.txt'), true); вот так работает, т.е. мне как-то надо сделать чтоб имя пользователя тоже было PwideChar, сейчас попробую..

ну вот... получилось, спасибо
отдельно надо GetCurrentUserName сделать PWideChar(GetCurrentUserName)
zdus2757 вне форума Ответить с цитированием
Старый 24.10.2014, 13:17   #24
maloun
Форумчанин
 
Аватар для maloun
 
Регистрация: 03.01.2011
Сообщений: 233
По умолчанию

Цитата:
Сообщение от zdus2757 Посмотреть сообщение
CopyFile(PWideChar('C:\Users\' + GetCurrentUserName + '\AppData\.....'), PWideChar('C:\ss.txt'), true); вот так не работает

Код:
var
  UserName:String;
begin
  UserName:='C:\Users\' + GetCurrentUserName + '\AppData\.....';
  CopyFile(PWideChar(UserName), PWideChar('C:\ss.txt'), true);
end;
пыжок
maloun вне форума Ответить с цитированием
Старый 24.10.2014, 13:23   #25
zdus2757
vk.com/replog
Пользователь
 
Регистрация: 04.05.2012
Сообщений: 87
По умолчанию

так пробовал, не получилось, надо именно GetCurrentUserName отдельно делать, ну и потом еще раз все вместе тож
zdus2757 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Права a.n.o.n.i.m Фриланс 1 27.03.2014 18:35
права доступа к папкам и файлам Lotles Безопасность, Шифрование 5 03.11.2011 14:09
Сдача на права Neymexa Свободное общение 3 30.08.2011 20:49
Права пользователя Zloy_Doomer Операционные системы общие вопросы 5 18.12.2008 17:11
Права админа Sk!f Безопасность, Шифрование 1 18.12.2008 12:38