crossplatform.ru

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


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

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

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


Последние 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 Текстовая версия Сейчас: 28.3.2024, 12:54