crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Как получить путь в "Program files" etc
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
Теги
Выровнять по центру
Ссылка на тему
Ссылка на сообщение
Скрытый текст
Сокращение
Код с подсветкой
Offtopic
 
Удалить форматирование
Спец. элементы
Шрифт
Размер
 
Цвет шрифта
 
Отменить ввод
Вернуть ввод
Полужирный
Курсив
Подчеркнутый
 
 
Смайлики
Вставить изображение
Вставить адрес электронной почты
Цитата
Код
Раскрывающийся текст
 
Увеличить отступ
По левому краю
По центру
По правому краю
Вставить список
Вставить список

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
Iron Bug Дата 1.3.2010, 12:48
  не знаю, под линями я бы в /opt/application_name поставила. а куда ещё? можно для важности ещё имя компании туда сунуть, чтобы пересечений имён избежать. в стандартные bin-овские каталоги ставить всё подряд нехорошо, имхо. а вот админских прав может не оказаться у юзера, поэтому дать выбор, куда ставить - по умолчанию пытаться в /opt, а если нет - то в юзерский хомяк (~).
Kagami Дата 28.2.2010, 18:35
 
Цитата(SABROG @ 28.2.2010, 17:50) *
Ага, значит если он пишет installer 64 битный и пытается установить им 32 битную программу, то она попадет прямиком в папочку с 64битными?

Это уже на совести автора инсталятора. Если известно что прога 32 битная, то можно использовать соответствующую переменную.

P.S. Топикстартер нигде не говорил что пишет инсталятор.
SABROG Дата 28.2.2010, 17:50
  Ага, значит если он пишет installer 64 битный и пытается установить им 32 битную программу, то она попадет прямиком в папочку с 64битными?
Kagami Дата 28.2.2010, 16:46
 
Цитата
%ProgramFiles%

This variable points to Program Files directory, which stores all the installed program of Windows and others. The default on English-language systems is C:\Program Files. In 64-bit editions of Windows (XP, 2003, Vista), there are also %ProgramFiles(x86)% which defaults to C:\Program Files (x86) and %ProgramW6432% which defaults to C:\Program Files. The %ProgramFiles% itself depends on whether the process requesting the environment variable is itself 32-bit or 64-bit (this is caused by Windows-on-Windows 64-bit redirection).


WOW64
SABROG Дата 28.2.2010, 16:13
 
Цитата(Kagami @ 27.2.2010, 19:09) *
Как сложно :)
    qDebug() << "ProgramFiles:\n" << getenv("ProgramFiles");


Так нельзя делать, хотя бы по этой причине:

Цитата
Еще одной проблемой является способ работы Windows 7 с 32-битными приложениями. Windows 7 [в 64-разрядной редакции] сохраняет 32-разрядные приложения по другому пути - в папку Program Files (x86), а 64-разрядные сохраняются в привычную Program Files. Это приводит к возникновению определенных проблем при поиске некоторых приложений, пишет Убри.

"Приложения, в которые жестко зашита папка 'Program Files', не могут корректно работать, будучи установленными в папку Program Files (x86)" - объяснил он.
Kagami Дата 27.2.2010, 19:09
  Как сложно :)
    qDebug() << "ProgramFiles:\n" << getenv("ProgramFiles");
Litkevich Yuriy Дата 27.2.2010, 19:05
 
Цитата(DIMEDROLL @ 27.2.2010, 15:22) *
но вопрос остается открытым
Да тут только дефайнами всё оборачивать, т.е. под каждую платформу нужно своё писать.

Цитата(kwisp @ 27.2.2010, 14:55) *
смотря какой дистрибутив
в gentoo к примеру всё ясно.
собственно я об этом. Говоря "Линукс" понимай, как "Несчитанное множество *nix-подобных ОСек".

Для виндовоза, можешь воспользоватся переменной окружения
ProgramFiles
Например, следующий код:
    QString str = "ProgramFiles";
    QStringList list = QProcess::systemEnvironment();
    qDebug() << "ProgramFiles:\n" << list.filter(str);
Напечатает в консоль:
ProgramFiles =:
 ("CommonProgramFiles=E:\Program Files\Common Files", "ProgramFiles=E:\Program Files")
panter_dsd Дата 27.2.2010, 12:35
  Use WinAPI.
DIMEDROLL Дата 27.2.2010, 12:22
  уже не удивляюсь, когда на форумах на вопрос:
"как сделать "это"?"
отвечают:
"а зачем? делай вот так и так и не парься!"
а если хватит ума еще и ответ дать "зачем тебе это нужно", то флейма на 20 страниц не избежать, где каждый посчитает нужным указать тебе на то, что ты все делаешь не правильно :)

я нашел обходной путь, но вопрос остается открытым
kwisp Дата 27.2.2010, 11:55
 
Цитата(Litkevich Yuriy @ 27.2.2010, 4:31) *
Да вот как раз на линухе минимум ясности.

смотря какой дистрибутив
в gentoo к примеру всё ясно.
Просмотр темы полностью (откроется в новом окне)
RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 5.7.2025, 7:57