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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 07.04.2007, 06:27   #11
XIO
Новичок
Джуниор
 
Аватар для XIO
 
Регистрация: 07.04.2007
Сообщений: 1
По умолчанию

Ну, во первых, если имеется возможность что программу будут перемещать с директории
в директорию, то надо перестраховаться, и не задавать статические маршруты.
К примеру, я когда начинал писать одну программку с ADO, то вскоре выяснил,
есть такой баг у Delphi, если воспользоваться OpenDialog или SaveDialog, то
адрес от куда запущена программа теряется и в таком случае обращение к файлу типа:
Config\Defalt.cfg
не прокатит, нужно обращаться полным адресом:
C:\WorkTime\Config\Defalt.cfg
Поэтому я стал использоваться следующую функцию, которую откопал в одном из много-
численныех FAQ

Код:
 
Function PrgDir(): String;
var
  szFileName : array[0..49] of char;
  FilePut: String[255];
  szModuleName : array[0..19] of char;
  iSize : integer;
  J: integer; //Счетчик
begin
  StrPCopy(szModuleName, 'NameOfModule');
  iSize := GetModuleFileName(GetModuleHandle(szModuleName),szFileName,
  SizeOf(szFileName));
  if iSize > 0 then
    begin
      FilePut := StrPas(szFileName);
      J := Length(FilePut);
      While FilePut[J] <> '\' Do
        begin
          Delete(FilePut,J,1);
          Dec(J);
        end;
      PrgDir := FilePut;//ShowMessage('Имя модуля с полным путем: ' + FilePut);
    end
  else
    begin
      ShowMessage('System dir error!!!');
    end;
end;
При желании можно увеличить длинну szFileName, szModuleName.

Использовать примерно так:
AssignFile(F,PrgDir+'Config\Defalt. cfg ');
...
Keyboard not connected. Press any key to continue ... Press any other key to quit!
XIO вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Автоматический Ярлык xls файла valerij Microsoft Office Excel 33 19.01.2009 11:04
Ярлык книги на рабочий стол FoxRiver Microsoft Office Excel 4 28.07.2008 09:24
Помогите запустить ярлык из Сетевого окружения fanscorpions Помощь студентам 6 09.06.2008 13:25
Как открывать песню при ее перетаскивании на ярлык програмы SeRhy Общие вопросы Delphi 2 14.03.2008 18:50
Помогите создать ярлык. Kashp Общие вопросы Delphi 8 11.08.2007 20:55