Написанные программы под Linux "парализованы" :(

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Re: Написанные программы под Linux "парализованы" :(

Сообщение mastertron » 20.02.2011 21:39:00

И к чему тут все выше сказанные упреко-советы, никак к развязке вопроса не касающиеся? Разве кто из вас, "нападающих", знал, что в указанных средах дефолтовый каталог постоянно внаглую подменяется на "/home/user/Документы" каждый раз, независимо от выбора в OpenDialog или SaveDialog ? Поднимите руки. Или у вас страховка - знал, но не написал?
Выход простой - хранить полный путь у себя и (или) постоянно дописывать при обращениях к ресурсам, чего под виндой делать небыло нужды.

В программировании под Х Линукс и среде лазаруса - да, первый раз, но причем тут "чайник"? Когда я "чайником" был, многие нынешние выскочки еще не родились, и, как видно по советам, на сегодня недотянули.
В конечном итоге - просто бестактно, и не только по отношению к пенсионеру.
mastertron
незнакомец
 
Сообщения: 8
Зарегистрирован: 30.05.2010 16:38:18

Re: Написанные программы под Linux "парализованы" :(

Сообщение coyot.rush » 20.02.2011 22:34:00

Разве кто из вас, "нападающих", знал, что в указанных средах дефолтовый каталог постоянно внаглую подменяется на "/home/user/Документы" каждый раз, независимо от выбора в OpenDialog или SaveDialog ? Поднимите руки. Или у вас страховка - знал, но не написал?

Именно в Документы?
Код: Выделить всё
OpenDialog1.InitialDir:='/home/admin/Документы/MTest';

По умолчанию должна быть домашняя папка пользователя :!:

Выход простой - хранить полный путь у себя и (или) постоянно дописывать при обращениях к ресурсам, чего под виндой делать не было нужды.

В MseGui антологичный компонент устанавливает начальный путь для просмотра равным путь к запуску программы :idea:
Аватара пользователя
coyot.rush
постоялец
 
Сообщения: 309
Зарегистрирован: 14.08.2009 08:59:48

Re: Написанные программы под Linux "парализованы" :(

Сообщение mastertron » 21.02.2011 00:18:57

Ну да, именно в документы. Может в переменной среды можно и другой путь прописать. Можно по предложенному варианту Ism, типа:
Код: Выделить всё
#!/usr/bin/...
[Desktop Entry]
Type=Application
....
Path= путь от корня
Exec= к прогр.
...

Программа должна быть перемещаемой, включая запуск с флешки, а файлы для отработки могут находится по другому пути.
Ну, причина непонятки ясна, варианты решений есть. Спасибо.
mastertron
незнакомец
 
Сообщения: 8
Зарегистрирован: 30.05.2010 16:38:18

Re: Написанные программы под Linux "парализованы" :(

Сообщение coyot.rush » 21.02.2011 00:48:34

Код: Выделить всё
OpenDialog1.InitialDir:=ExtractFilePath(ParamStr(0))
:?:
Может в переменной среды можно и другой путь прописать, ну а как это скажется на других, параллельно выполняемых ПО?

Если у кодеров "руки не кривые" , то всё будет работать :wink:
чтоб иконку на стол выкидывал.
Эт не unix-way :shock:
Софтина должна лежать в /usr/bin или /opt/bin
[oftopic]
А ярлычки это от лукавого M$
[/oftopic]
Аватара пользователя
coyot.rush
постоялец
 
Сообщения: 309
Зарегистрирован: 14.08.2009 08:59:48

Re: Написанные программы под Linux "парализованы" :(

Сообщение Verx0Laz » 21.02.2011 01:14:34

mastertron писал(а): но причем тут "чайник"? Когда я "чайником" был, многие нынешние выскочки еще не родились, и, как видно по советам, на сегодня недотянули.
В конечном итоге - просто бестактно, и не только по отношению к пенсионеру.


В первую очередь, хочу извиниться перед вами за всех здесь присутствующих. Любой профессионал, добившийся определенных результатов, в той или иной форме подвержен Комплексу Гуру. Это китайцы еще до нашей эры заметили, и писали в трактатах "Из гуру плохой учитель, ибо он уже забыл, когда сам проходил то, что ученику только предстоит". Когда это впервые сформулировали, не только мы, но и ваши пра-пра-прадеды еще не родились. Стоит-ли обижаться из-за этого?
Насчет бестактности - это не так. Это скорее непонимание разных поколений. Совершенно по-разному воспринимаются одни и те-же понятия. Ведь каждый человек в сети чисто бессознательно воспринимает собеседника как своего ровесника (плюс-минус пять лет). Вот к примеру, вы обиделись на слово "чайник", а зря :) Чайник - это человек, не имеющий на данный момент определенной информации. Дай чайнику информацию - и он перестанет им быть. А так как всего знать невозможно, даже самый крутой гуру в чём-то обязательно чайник.
Другое дело - ламер. Ламер - это человек, которого знания не спасают, сколько их ни давай. Вас ведь ламером никто не называл? Нет :) Значит, зря обижаетесь :)
И еще не забудьте стереотипы. Сюда заходят люди, как правило, с одними и теми-же вопросами. И глупые студенты заходят намного чаще, чем умные пенсионеры. Поэтому, вас просто неверно определили, и погорячились :)
Еще раз приношу извинения и впредь, надеюсь, мы с вами обойдемся без непонимания и удержимся в рамках конструктива.
Аватара пользователя
Verx0Laz
постоялец
 
Сообщения: 125
Зарегистрирован: 11.09.2007 11:24:07

Re: Написанные программы под Linux "парализованы" :(

Сообщение Vadim » 21.02.2011 05:54:13

mastertron писал(а):что в указанных средах дефолтовый каталог постоянно внаглую подменяется на "/home/user/Документы" каждый раз, независимо от выбора в OpenDialog или SaveDialog ?

Тоже хочу извиниться за "нападающих", но хочу заметить... ;)
Указаная Вами "наглая подмена" абсолютно не имеет никакого отношения ни к OpenDialog, ни к SaveDialog. Эти компоненты каталог запуска программы по умолчанию не меняют.
Мало того, я думал, что в новых версиях Lazarus как-то хитро стали определять каталог запуска программы и специально проверил это. Оказалось нет, всё в порядке, каталог запуска определяется правильно - именно там, где лежит исполняемый файл. Логично предположить, что именно в Вашем коде где-то происходит считывание системной пременной "Документы".
Давайте Вы у себя ещё раз и очень тщательно, исследуете код, хорошо? ;)
Так же хочу посоветовать: не обрубайте из OpenDialog\SaveDialog полный путь к файлу, т.к. полный путь гарантирует, что Вы открываете\Записываете именно то\туда что\куда хотели.
Vadim
долгожитель
 
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Re: Написанные программы под Linux "парализованы" :(

Сообщение dunin » 21.02.2011 10:34:00

Vadim писал(а):...
Так же хочу посоветовать: не обрубайте из OpenDialog\SaveDialog полный путь к файлу, т.к. полный путь гарантирует, что Вы открываете\Записываете именно то\туда что\куда хотели.

Кстати да. Когда-то давно (в Виндусе) наступил на эти грабли и с тех пор в программах только полные пути файлов не зависимо от ОС.
Аватара пользователя
dunin
энтузиаст
 
Сообщения: 634
Зарегистрирован: 02.05.2007 13:18:11
Откуда: Тољя††и

Re: Написанные программы под Linux "парализованы" :(

Сообщение mastertron » 22.02.2011 01:36:47

Спасибо за поддержку и разъяснения.
Ну, видимо и я ввел в заблуждение, попав в незнакомую ситуацию.
Очень уж я полагался на GetCurrentDir. Под виндой там директория программы, а, в частности, под OpenSUSE10.3/KDE - "/home/user/Документы". Вот и казус получился.
Всем спасибо.
mastertron
незнакомец
 
Сообщения: 8
Зарегистрирован: 30.05.2010 16:38:18

Пред.

Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9

Рейтинг@Mail.ru
cron