Форум » GUI » Как сделать Dll из MiniGui для хХарбора ? » Ответить

Как сделать Dll из MiniGui для хХарбора ?

Andrey: Вопрос наверно к нашим знатокам ! У меня есть готовая программа на МиниГуи. Как эту программу превратить в DLL-ку и просто вызвать из хХарбора ? Зачем нужно ? В Висте и Win7 есть "дурацкий" UAC ! Он не всегда выходит на экран, а где-то на панели выскакивает ! И юзера жалуются, не работает моя программа и все.... Ну что с юзеров возьмешь .... Вот и приходиться изобретать всякие фиговины....

Ответов - 9

petr707: А почему UAC - выскакивает ? Зачем повышенные привилегии программе ? В системный реестр каждую минуту что-то записывается ?

PSP: petr707 пишет: А почему UAC - выскакивает ? Думаю потому, что она запускается с сетевого диска, а не с локального.

gfilatov2002: Andrey пишет: Как эту программу превратить в DLL-ку и просто вызвать из хХарбора ? Попробуй этот пример для Харбора - может, поможет Примечание. Файл будет удален через 10 дней после последнего скачивания.


Andrey: petr707 пишет: А почему UAC - выскакивает ? PSP пишет: Думаю потому, что она запускается с сетевого диска, а не с локального. А при загрузке и вызове DLL с сетевого диска UAC будет запрашивать разрешение ? А то получиться,что сделаешь а это тоже не выход.

PSP: Andrey пишет: А при загрузке и вызове DLL с сетевого диска UAC будет запрашивать разрешение ? Скорее всего, что не будет. Ведь dll-ку загружает программа, которой уже разрешено выполнение. Но нужно пробовать. А то получиться,что сделаешь а это тоже не выход. Можно просто в настройках IE добавить ip-адрес компьютера, с которого запускается программа, в список доверенных узлов. Но это нужно сделать на каждом компьютере, где запускается программа.

Andrey: gfilatov2002 пишет: Попробуй этот пример для Харбора - может, поможет Григорий, напиши пожалуйста скрипт сборки этого примера для *.hbp. А то ничего не получается с готовым моим проектным файлом *.hbp .... hbmaindllp.lib - это как я понял внешняя библиотека, а как ее сделать для моего проекта ?

Andrey: Вопрос к Григорию так и остается.... Жду ! Теперь другой вопрос по Win7 насчет "дурацкого" UAC .... Программа на хХарборе вызывает программу на МиниГуи и закрывается QUIT. Вызов через ShellExecute(GetDeskTopWindow(), 'open',cRunEXE, cRunParam, "" , SW_SHOWMAXIMIZED ) пробовал и SW_SHOWNORMAL и SW_SHOWDEFAULT все равно UAC мигает на панели задач, т.е. его нужно еще мышкой ткнуть чтоб он на экране открылся.... Если запускаю программу на МиниГуи через bat-файл, то все нормально UAC сразу на экране.... Вопрос - как запустить программу чтоб UAC был сразу на экране, а не прятался в панели ?

Петр: Читать здесь и http://msdn.microsoft.com/en-us/library/dd371711(v=vs.85).aspx Вооружившись теорией, править RESOURCES\WindowsXP.Manifest

Andrey: Andrey пишет: Вызов через ShellExecute(GetDeskTopWindow(), 'open',cRunEXE, cRunParam, "" , SW_SHOWMAXIMIZED ) Разобрался. Нужно так: ShellExecute(, 'open',cRunEXE, cRunParam, "" , SW_SHOWNORMAL )



полная версия страницы