Страница 3 из 4

Про цифровую подпись программы

Добавлено: 22 Октябрь 2019, 12:24
Admin
RaFaeL писал(а): 22 Октябрь 2019, 12:18Если С63, то взять шаблон VistaManifest от 10-11 Клариона
Во. А вот это уже интересно. Может в одной из прог я уже это применяю. В той что не ругается... просто забыл. Гляну.

Про цифровую подпись программы

Добавлено: 22 Октябрь 2019, 12:38
Игорь Столяров
RaFaeL писал(а): 22 Октябрь 2019, 12:18Указать Execution level "asInvoker"
Да, но тогда Windows начинает душить приложение и ограничивает его доступ к реестру и системным папкам. :(

Про цифровую подпись программы

Добавлено: 22 Октябрь 2019, 12:43
morkovin
Не проще ли манифест настроить?
Admin писал(а): 22 Октябрь 2019, 8:01Одна орет, вторая - нет!
Что же манифесты самопроизвольные какие-то?

Про цифровую подпись программы

Добавлено: 22 Октябрь 2019, 12:45
RaFaeL
Игорь Столяров писал(а): 22 Октябрь 2019, 12:38Да, но тогда Windows начинает душить приложение и ограничивает его доступ к реестру и системным папкам.
Но тогда кому и когда надо, может запустить его "от имени администратора" и будет со всеми правами. А зачем приложению доступ в системные папки да в системные разделы реестра? Чего оно там забыло?

Про цифровую подпись программы

Добавлено: 22 Октябрь 2019, 13:57
Игорь Столяров
RaFaeL писал(а): 22 Октябрь 2019, 12:45Чего оно там забыло?
Там много интересного ! :) Например контейнеры сертификатов для электронной подписи или рабочая папка приложений пользователя (что бы разделить TMP папки при работе под терминальным сервером и для сохранения настроек форматов списков) и т.д. Сейчас уже всего не помню, но бодались в своё время с этим крепко. Остановились на том, что манифест должен требовать повышения уровня "highestAvilable", вот тогда всё OK ! :)

Про цифровую подпись программы

Добавлено: 22 Октябрь 2019, 15:31
gopstop2007
все банально просто :)
создаем ярлык для приложения и свойствах ярлыка указывает (2-х местах) запуск от администратора и все

Про цифровую подпись программы

Добавлено: 22 Октябрь 2019, 15:55
Игорь Столяров
gopstop2007 писал(а): 22 Октябрь 2019, 15:31запуск от администратора и все
Если позволите, то я уточню. ;) В этом случае "и всё" - это наличие этого самого права администратора у пользователя Windows. :)
Кстати вспомнил ещё - "asInvoker" не даёт создавать ярлыки из приложения на рабочем столе Windows через WinAPI.

Про цифровую подпись программы

Добавлено: 22 Октябрь 2019, 16:08
Губин Игорь
Игорь Столяров писал(а): 22 Октябрь 2019, 15:55создавать ярлыки из приложения на рабочем столе Windows через WinAPI.
А пример этого можно? А то всё лень...

Про цифровую подпись программы

Добавлено: 22 Октябрь 2019, 16:37
Игорь Столяров
Губин Игорь писал(а): 22 Октябрь 2019, 16:08А пример этого можно? А то всё лень...
Тоже мне бином Ньютона … ;)
Вот здесь 12 лет назад Дед Пахом всё расписал: viewtopic.php?f=1&t=1866
Всё работает, ничего не изменилось … но у приложения должны быть права доступа к ресурсам Windows.

Про цифровую подпись программы

Добавлено: 22 Октябрь 2019, 18:17
gopstop2007
Игорь Столяров писал(а): 22 Октябрь 2019, 15:55 В этом случае "и всё" - это наличие этого самого права администратора у пользователя Windows. :)
как говорит мой папа, -"мало того, что дал говна и Вам еще к нему лопату" :D
1. программа с инсталлятором там прописывается все для создания ярлыка с правами, с которыми он был запущен
2. программа скопирована, без инсталлятора, - создается ярлык вручную,тут уж Вам (или пользователю) выбирать как запускать...
3. ??? - возможен Ваш вариант, который я не учел :)

Про цифровую подпись программы

Добавлено: 22 Октябрь 2019, 18:30
Губин Игорь
gopstop2007 писал(а): 22 Октябрь 2019, 18:17 программа с инсталлятором там прописывается все для создания ярлыка с правами, с которыми он был запущен
Вот тут-то и начинается самое весёлое. Сисадмины суть изначальные враги программистов. Чего они только не ухитряются пользователям запретить... Будто и без этого в виндах глюков мало. Хорошо хоть права на чтение из реестра никто ещё не додумался обрезать.
:idied:

Но мы малость удалились от темы ветки.

Про цифровую подпись программы

Добавлено: 22 Октябрь 2019, 19:34
Игорь Столяров
Губин Игорь писал(а): 22 Октябрь 2019, 18:30Хорошо хоть права на чтение из реестра никто ещё не додумался обрезать
Ещё как додумались ! Только создатели антивирусов. Попробуйте например в KIS лишить программу статуса доверенного
приложения и всё, хана чтению из реестра. А недавно (где-то в течении месяца) AVAST после обновления заблокировал
доступ НА ЧТЕНИЕ к контейнерам сертификатов вообще для всех программ … Короче - жись не стоит на месте, всё развивается. :)

Про цифровую подпись программы

Добавлено: 23 Октябрь 2019, 0:28
RaFaeL
Игорь Столяров писал(а): 22 Октябрь 2019, 13:57рабочая папка приложений пользователя (что бы разделить TMP папки при работе под терминальным сервером и для сохранения настроек форматов списков)
Для этого не требуются права администратора. А настройки форматов списков вообще лучше в базе хранить

Про цифровую подпись программы

Добавлено: 23 Октябрь 2019, 5:53
Игорь Столяров
RaFaeL писал(а): 23 Октябрь 2019, 0:28А настройки форматов списков вообще лучше в базе хранить
Как вариант - да, и сделать это не сложно. Но возникает смешанное чувство.

1. По науке - рабочие данные пользователя (а настройка форматов списков - это рабочие данные пользователя)
должны хранится локально в папке User\[Name]\AppUser\Local. По крайне мере приложения сделанные крупными
разработчиками софта - делают именно так.

2. Если приложение работает в обычной локальной сети - то доступ к локальному файлу в любом случае, в разы быстрее
чем к БД на сервере. И при открытии окон списков - это чувствуется (хотя мы используем кеширование через InMemory).

3. В современном мире, при наличии тех же SSD дисков, можно предложить пользователю выбрать диск на котором
будут хранится рабочие данные и это положительно сказывается на быстродействии приложения.

4. В случае какого-либо сбоя настроек форматов списков - проще и быстрее просто удалить один локальный файл с настройками
для восстановления форматов всех списков в состояние DEFAULT, чем чистить записи в БД.

5. Настройки форматов списков - логически связаны с настройками размеров окон приложения.
Поэтому если настройки окон хранятся на компьютере локально в реестре, то и форматы списков должны быть там же.
Например, один и тот же пользователь (администратор) может входить в приложение с разных компьютеров, к которым
подключены мониторы с разным разрешением. Да, можно и это разрулить через номера компьютеров или IP адреса …

Поэтому если нет принципа: мы храним настройки форматов списков в БД потому, что мы просто всё там храним (C) Портос,
то традиционное хранение настроек форматов списков в локальных файлах выглядит более привлекательным. ;)

Про цифровую подпись программы

Добавлено: 23 Октябрь 2019, 10:34
kreator
Локально оно быстрее, конечно. Но это актуально для дома и семьи. В корпоративной среде не всё так оптимистично. Как я писал, у нашего заказчика перемещаемый профиль. И хранение настроек в локальной папке оказалось плохим вариантом. Кстати (кому интересно), переделали хранение на локальную папку терминального сервера. Оказалось, сервер в любом случае создаёт для каждого пользователя личные папки у себя. Есть специальная запись в реестре для этого.