Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 25, средняя оценка - 4.64
hacker_007
189 / 28 / 8
Регистрация: 15.09.2011
Сообщений: 369
#1

Как программно получить имя программы. - Delphi

14.01.2012, 13:05. Просмотров 4387. Ответов 4
Метки нет (Все метки)

Имеется код для добавления в авто запуск программы... В параметрах указано её имя. Получается, если имя программы изменится, то, этот код будет бесполезен. т.к он будет работать со старым именем.
Delphi
1
2
3
4
5
RootKey := HKEY_LOCAL_MACHINE;
OpenKey('\Software\Microsoft\Windows\CurrentVersion\Run', true);
WriteString('SystemConf', GetSpecialFolderPath(CSIDL_WINDOWS) + '\programma.exe');
CloseKey;
Free;
Как его заставить автоматический определять имя, которое будет занесено в реестр?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.01.2012, 13:05
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Как программно получить имя программы. (Delphi):

Как программно определить имя компонента из его же процедуры?
Допустим есть вот такая процедура: procedure...

Как получить имя компьютера
Как получить имя компьютера? Если указывать %UserName% выбивает ошибка вот код...

Как получить Имя Домена
Чето я туплю под вечер.... Искал в реесте, не нашел ничего путного, лазил по...

Как внутри события получить имя объекта
Доброго времени суток, всем. Все наверное в курсе - когда интерфейс к...

Как программно нажать кнопку другой программы
таких тем нашел много но хотя не мог разобраться, если ни лень будет сделайте...

Подскажите как правильно получить имя самого себя без .exe!
FileName := ExtractShortPathName( ParamStr(0)-'.exe' ); Я понял что так не...

4
Mawrat
12821 / 5729 / 1700
Регистрация: 19.09.2009
Сообщений: 8,807
14.01.2012, 16:52 #2
Имя исполняемого файла можно определить так:
1.
Delphi
1
2
3
4
5
6
7
8
9
10
var
  FileName, Path : String;
begin
  //Короткое имя исполняемого файла программы (без пути к нему).
  FileName := ExtractFileName( ParamStr(0) );
  //Путь к папке, в которой лежит исполняемый файл программы.
  //В конце пути установлен слеш: "\".
  Path := ExtractFilePath( ParamStr(0) );
...
end;
2. Если приложение типа GUI, то кроме выше представленного способа можно действовать так:
Delphi
1
2
3
4
5
6
7
8
9
10
var
  FileName, Path : String;
begin
  //Короткое имя исполняемого файла программы (без пути к нему).
  FileName := ExtractFileName( Application.ExeName );
  //Путь к папке, в которой лежит исполняемый файл программы.
  //В конце пути установлен слеш: "\".
  Path := ExtractFilePath( Application.ExeName );
...
end;
0
Arcor
4816 / 1817 / 380
Регистрация: 20.11.2009
Сообщений: 5,792
Записей в блоге: 1
14.01.2012, 16:58 #3
Я как понял, автор спрашивает о том, если например, программа была записана в реестр под одним названием, и потом ей взял кто-то и изменил название, теперь она не сможет стартануть при последующем запуске, она не будет найдена
0
Mawrat
12821 / 5729 / 1700
Регистрация: 19.09.2009
Сообщений: 8,807
14.01.2012, 17:19 #4
Arcor, видимо, автор всё же хочет в программе определять имя исполняемого файла, чтобы напрямую это имя в код не записывать. Если что, пускай автор темы уточнит, что ему требуется.
1
hacker_007
189 / 28 / 8
Регистрация: 15.09.2011
Сообщений: 369
14.01.2012, 18:17  [ТС] #5
Цитата Сообщение от Mawrat Посмотреть сообщение
Arcor, видимо, автор всё же хочет в программе определять имя исполняемого файла, чтобы напрямую это имя в код не записывать. Если что, пускай автор темы уточнит, что ему требуется.
Вы правильно поняли))) Спасибо за помощь.)
0
14.01.2012, 18:17
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.01.2012, 18:17
Привет! Вот еще темы с решениями:

Как из программы узнать имя файла, на который ссылается ярлык?
Встала вот задача удалить с рабочего стола определённый ярлык. Разобрался, как...

Как в готовом проекте изменить имя выходного файла программы?
Здравствуйте! Как в готовом проекте с названием положим Basa изменить имя...

Как закрыть окно MessageBox программно в скрытой форме без закрытия программы
Я скачал исходники многопользовательского чата и решил их переделать под другие...

Как определить (получить) имя или адрес машины в локалке, на которой установлен MS SQL
А если можно, то список таких машин


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru