|
|
|
Текущая директория для сервиса
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Надо переделать консольную программу в сервис. Программа просто читает данные с порта и запускает скрипт при приеме данных. Все настройки хранятся в файле конфигурации который лежит рядом с программой. Так вот проблема возникла при определении пути к этому файлу при запуске программы как сервиса. GetCurrentDir выдает системную папку, так же как и GetFullPath(argv[0],...). Использовать реестр для прописывания пути к файлу настроек считаю не правельным. Пока придумал только прописывать путь при регистрации в параметрах командной строки, но это на мой взгляд мягко горворая выглядит не красиво. Удачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2007, 15:15 |
|
||
|
Текущая директория для сервиса
|
|||
|---|---|---|---|
|
#18+
moteus Использовать реестр для прописывания пути к файлу настроек считаю не правельным Постулаты какой религии нарушаются? GetModuleFileName попробуйте ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2007, 16:09 |
|
||
|
Текущая директория для сервиса
|
|||
|---|---|---|---|
|
#18+
Спасибо. GetModuleFileName - работает. А на счет религии. Я не вижу ни одной причины использовать реестр, а не файлы конфигурации. Удачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2007, 16:25 |
|
||
|
Текущая директория для сервиса
|
|||
|---|---|---|---|
|
#18+
moteusСпасибо. GetModuleFileName - работает. А на счет религии. Я не вижу ни одной причины использовать реестр, а не файлы конфигурации. Удачи. Напрмер, безопасность. Частенько пользователям запрещено писать в папку Program Files, а приложения частенько в нее устанавливаются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2007, 16:31 |
|
||
|
Текущая директория для сервиса
|
|||
|---|---|---|---|
|
#18+
Так можно запускать от имени другой учетной записи. Хотя если программа как у меня со скриптами, то это может быть не очень хорошо, ну да ладно. На эту тему можно развести настоящую HolyWar. Поэтому предлогаю закончить эту тему. "Давайте жить дружно"(c) Удачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2007, 16:48 |
|
||
|
Текущая директория для сервиса
|
|||
|---|---|---|---|
|
#18+
Забавно. Чел. собрался писать софт под Win и шарахается от Registry. P.S. Не ради холивара... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2007, 20:15 |
|
||
|
Текущая директория для сервиса
|
|||
|---|---|---|---|
|
#18+
maytonЗабавно. Чел. собрался писать софт под Win и шарахается от Registry. P.S. Не ради холивара... Ну так щас модно не пользоваться реестром, типа оставим потомкам чистый Windows, не будет загрязнять окружающие ключи :) А если серьезно, то может из-за того что все программы пишут в него что попало, то он и представляет из себя иногда подобие помойки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2007, 20:48 |
|
||
|
Текущая директория для сервиса
|
|||
|---|---|---|---|
|
#18+
Не думаю, что путь к файлу конфигурации в подветке Parameters сервиса,сильно испачкает реестр ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2007, 21:52 |
|
||
|
Текущая директория для сервиса
|
|||
|---|---|---|---|
|
#18+
ИзопропилНе думаю, что путь к файлу конфигурации в подветке Parameters сервиса,сильно испачкает реестрА зачем файл конфигурации если уже сделана собственная ветка в регистри? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2007, 22:04 |
|
||
|
Текущая директория для сервиса
|
|||
|---|---|---|---|
|
#18+
В любой ОС-и, платформе (парадигме) есть "правила игры". Если их мало-мальски соблюдать - можно делать софт, который заслуживает уважения. Думаю, что и для сисадминов процесс настройки или миграции пользователя (или приложения) упрощается, когда есть 100% уверенноть, что настройки лежат именно в HKLM или HKU, и не надо рыскать по каталогам, отыскивая связи приложения и ini файла, временами погружаясь в дзен-буддизм. Кстати. Сам присутствовал в одном из форумов на словесном мордобое Линуксоида и BSD-шника. Парни сцепились по поводу идеологической правильности каталога etc. Мдя... Автору желаю успехов. Но еще раз рекомендую поговорить с сисадминами по поводу способов настроек приложения. Надеюсь, что юношеский максимализм немножко утихнет. ---------------- С уважением ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2007, 22:35 |
|
||
|
Текущая директория для сервиса
|
|||
|---|---|---|---|
|
#18+
White OwlА зачем файл конфигурации если уже сделана собственная ветка в регистри? Если есть унаследованный файл конфигурации, достаточно в регистри путь к нему прописать. ИМХО. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2007, 00:40 |
|
||
|
Текущая директория для сервиса
|
|||
|---|---|---|---|
|
#18+
Lelikk[quot mayton]Забавно. Чел. собрался писать софт под Win и шарахается от Registry. А если серьезно, то может из-за того что все программы пишут в него что попало, то он и представляет из себя иногда подобие помойки. это очень плохой стиль использовать файлы конфигурации для сервисов - регистры нужно пользовать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2007, 08:27 |
|
||
|
Текущая директория для сервиса
|
|||
|---|---|---|---|
|
#18+
Lepsik это очень плохой стиль использовать файлы конфигурации для сервисов - регистры нужно пользовать 1) У автора унаследованное приложение 2) я хотел бы посмотреть, как вы будете в регистри заталкивать файл конфигурации сервиса, написанного на managed с++ 3) Кроссплатформенный софт использует файлы конфигурации, а не регистри.В регистри разве что путь к файлу настоек задаётся. notes.ini как пример устроит? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2007, 10:34 |
|
||
|
Текущая директория для сервиса
|
|||
|---|---|---|---|
|
#18+
У меня проэкт занимается приемом данных с последовательного порта. Для разных железяк(например модемов, GSM терминалов(сделаных на заказ) ) надо посылать команды инициализации. (AT команды или последовательность байт). Поэтому конфигурирование сводится не только к чтению параметров, но и к выполнению некого скрипта, который пишеться для разных целий разный. Для некоторых задач эта программа может запускаться и как консоль, а для некоторых и как сервис. Поэтому если использовать реестр то для того чтобы поменять железяку которая стоит на другом порту(тот же компьютер), то придется менять данные в реестре (номер порта, скорость, ... ) и скрипт инициализации в файле. Да и на мой взгляд скопировать папку программы с ее содержимым намного проще чем гадать какие ветви в реестре надо искать. Про инсталяторы не надо говорить. Есть реальные программы в которых некоторые настройки можно сделать только руками в реестре. Удачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.06.2007, 14:33 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=289&tid=2028649]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
20ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 204ms |
| total: | 306ms |

| 0 / 0 |
