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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.12.2009, 13:23   #11
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

Спасибо. Сработало.

Если интересно насчет скриптов - выкладываю один. Его работа в том, чтобы в директории C:\ создать файлс именем 'File.txt' и записать в его внутренности его имя.
Вложения
Тип файла: rar Scripts.rar (752 байт, 9 просмотров)
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 13.12.2009, 15:35   #12
Neeter
Форумчанин
 
Аватар для Neeter
 
Регистрация: 22.02.2009
Сообщений: 875
По умолчанию

Цитата:
А все-таки, почему в SysUtils не было указано формата библиотеки? Его можно опускать?
kernel32 в модуле Windows - всего лишь константа, равная 'kernel32.dll'
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Neeter вне форума Ответить с цитированием
Старый 19.10.2013, 22:07   #13
077
Новичок
Джуниор
 
Регистрация: 05.10.2013
Сообщений: 2
По умолчанию

Чтобы не таскать по функциям и процедурам полный путь, задал рабочий каталог:

Код:
  TEMPDIR:='TMP';
  TEMPDIR:=GetEnvironmentVariable(TEMPDIR)+'\'+TEMPDIR+'\';
  CreateDirectory(Pchar(TEMPDIR), nil);
  SetCurrentDirectory(Pchar(TEMPDIR));
Прога пишет в него нужные файлы и работает с ними, удаляет, переименовывает и т.п..
Однако, с какого-то перепуга туда самокопируется и исполняемый файл (например, Project1.exe). Причём, удалить его невозможно, пока работает прога, кроме этого, под Дельфёй(7) не работают брейкпоинты (как будто до них не доходит выполнение)..

Раскройте мне глаза, как это объяснить?
077 вне форума Ответить с цитированием
Старый 19.10.2013, 22:58   #14
077
Новичок
Джуниор
 
Регистрация: 05.10.2013
Сообщений: 2
По умолчанию

Вероятная причина:
Delphi, как и Pascal, работает с образом откомпилированной и запущенной в памяти программы. На диске создаёт .exe, до кучи (в соответствии с настройками - создавать на диске или нет).
А так как в коде программы стоит установка рабочего каталога, то оболочка Delphi это воспринимает глобально, и на свой счёт тоже. Скорее всего, это такая фича/баг работы команды SetCurrentDirectory из-под среды Delphi.

Одно не понятно: почему брейкпоинты на срабатывают..

Последний раз редактировалось 077; 20.10.2013 в 11:31.
077 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ничего себе... 3D шутер... mihali4 Gamedev - cоздание игр: Unity, OpenGL, DirectX 91 21.05.2011 13:29
Сам себе хостинг Kukkk Свободное общение 8 05.10.2009 10:03
Службы останавливаются сами по себе Ronni10 Операционные системы общие вопросы 3 01.10.2009 17:20
Несколько слов о себе../A few words are about itself.. Mr.Qwerty Свободное общение 3 16.07.2009 20:31