:: Visual Foxpro, Foxpro for DOS
Re: Windows 10 with Scaling factor and ReportBehavior 90
lemenev

Сообщений: 113
Дата регистрации: 23.06.2022
Может я что-то не догоняю, но при попытке указать параметр я получаю сообщение: «Слишком много параметров». У меня эта функция работает только следующим образом:
SET REPORTBEHAVIOR 90
DECLARE INTEGER SetProcessDPIAware IN WIN32API
SetProcessDPIAware()
REPORT FORM MyReport PREVIEW
Т.е. совсем без параметров.

И ещё. Где находится WIN32API? У себя на компьютере я файла с таким именем не нашёл.
Ratings: 0 negative/0 positive
Re: Windows 10 with Scaling factor and ReportBehavior 90
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
> 26 параметров где-то оказалось? Есть такие процедуры?

WIN32API - не причем, ругается фокс (да? фотку/текст ошибку скопируй хоть в форум)

> эта функция

какая?Она , "без параметров", что получает в качестве параметров (сколько их, давай полный текст процецуры, или ее начало, первые строки)

ааа, блин... в winapi...



Исправлено 4 раз(а). Последнее : of63, 25.07.22 21:04
Ratings: 0 negative/0 positive
Re: Windows 10 with Scaling factor and ReportBehavior 90
ssa

Сообщений: 13007
Откуда: Москва
Дата регистрации: 23.03.2005
lemenev
Где находится WIN32API? У себя на компьютере я файла с таким именем не нашёл.
Нигде. С чего решили, что должен быть како-то файл?
Документация по WIN32API находится на docs.microsoft.com
Конкретно по указанной функции: setprocessdpiaware


------------------
Лень - это неосознанная мудрость.




Исправлено 1 раз(а). Последнее : ssa, 25.07.22 21:09
Ratings: 0 negative/0 positive
Re: Windows 10 with Scaling factor and ReportBehavior 90
lemenev

Сообщений: 113
Дата регистрации: 23.06.2022
of63
фотку/текст ошибку скопируй хоть в форум)
Ratings: 0 negative/0 positive
Re: Windows 10 with Scaling factor and ReportBehavior 90
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
В описалове что к этой АПИ-ф-ии?

ДаЮ все закконно. ...

..Винда какой версии?

.. хм


SetProcessDPIAware - она зачем тебе?



Исправлено 3 раз(а). Последнее : of63, 25.07.22 23:28
Ratings: 0 negative/0 positive
Re: Windows 10 with Scaling factor and ReportBehavior 90
akvvohinc

Сообщений: 4218
Откуда: Москва
Дата регистрации: 11.11.2008
lemenev
Может я что-то не догоняю, но при попытке указать параметр я получаю сообщение: «Слишком много параметров»
Это потому, что сначала вы написали о функции SetProcessDpiAwareness - на это я и отвечал.
А использовать вы начали другую функцию - SetProcessDpiAware, которая параметров не имеет.
Ratings: 0 negative/0 positive
Re: Windows 10 with Scaling factor and ReportBehavior 90
lemenev

Сообщений: 113
Дата регистрации: 23.06.2022
akvvohinc
akvvohinc
А откуда нужно вызывать функцию SetProcessDpiAwareness?
Я получаю следующее сообщение:
[attachment 36364 2022-07-26_13-36-14.png]
Ratings: 0 negative/0 positive
Re: Windows 10 with Scaling factor and ReportBehavior 90
akvvohinc

Сообщений: 4218
Откуда: Москва
Дата регистрации: 11.11.2008
lemenev
А откуда нужно вызывать функцию SetProcessDPIAwareness?
Я первый раз узнал об этой функции из вашего сообщения, загуглил и получил её описание, в том числе список параметров.
А поэтому я не могу ответить, почему этой функции нет в Win32Api.
Написано, что она появилась в Win 8.1, но у меня и на 10-ке выдается то же, что и у вас.

Возможно, поскольку для названия функций важен регистр символов, она пишется чуть иначе, не знаю.
Ratings: 0 negative/0 positive
Re: Windows 10 with Scaling factor and ReportBehavior 90
lulgu

Сообщений: 1838
Дата регистрации: 30.11.2016
Из Help-а:
Команда DECLARE - DLL
Регистрирует функцию во внешней библиотеке совместного использования. Библиотеки представляют собой 32-битные файлы библиотек (.DLL).
DECLARE [cFunctionType] FunctionName IN LibraryName [AS AliasName]
[cParamType1 [@] ParamName1, cParamType2 [@] ParamName2, ...]
...
IN LibraryName
указывает имя внешней библиотеки совместного использования, содержащей функцию, указанную в FunctionName.
Если вы указали WIN32API для LibraryName, Visual FoxPro ищет 32-битные Windows .dll функцию в Kernel32.dll, Gdi32.dll, User32.dll, Mpr.dll и Advapi32.dll.
...
Согласно описаниям функция SetProcessDPIAware находится в User32.dll, SetProcessDpiAwareness в Shcore.dll.
Ratings: 0 negative/0 positive
Re: Windows 10 with Scaling factor and ReportBehavior 90
lemenev

Сообщений: 113
Дата регистрации: 23.06.2022
lulgu
Согласно описаниям функция SetProcessDPIAware находится в User32.dll, SetProcessDpiAwareness в Shcore.dll.
Я нашёл у себя на компьютере два экземпляра библиотеки shcore.dll в
C:\Windows\System32\SHCore.dll и
C:\Windows\SysWOW64\SHCore.dll
И ещё много в других местах.

[attachment 36365 2022-07-26_19-56-01.png]

Когда я перенёс первую DLL (из System32) в каталог с программой и запустил программу, я получил следующее сообщение:
Невозможно загрузить 32-разрядную библиотеку DLL c:\users\user\documents\visual fохрrо projects\shcore.dll.

Для второй DLL (из SysWOW64) сообщение другое:
Не найдена точка входа SetProcessDPIAwareness в DLL.

Какие ещё есть идеи?
Ratings: 0 negative/0 positive
Re: Windows 10 with Scaling factor and ReportBehavior 90
ssa

Сообщений: 13007
Откуда: Москва
Дата регистрации: 23.03.2005
Declare integer SetProcessDpiAwareness in shcore.dll
?SetProcessDpiAwareness()
И не ругается. Без всяких копирований библиотек.

------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive
Re: Windows 10 with Scaling factor and ReportBehavior 90
lulgu

Сообщений: 1838
Дата регистрации: 30.11.2016
lemenev

Какие ещё есть идеи?

Еще могу порекомендовать книгу, гл.19:
test.foxclub.ru



Исправлено 1 раз(а). Последнее : Joys, 27.07.22 14:37
Ratings: 0 negative/0 positive
Re: Windows 10 with Scaling factor and ReportBehavior 90
lemenev

Сообщений: 113
Дата регистрации: 23.06.2022
ssa
Declare integer SetProcessDpiAwareness in shcore.dll
?SetProcessDpiAwareness()
И не ругается. Без всяких копирований библиотек.
Вы запускаете процедуру без параметров. Она не ругается, но ничего и не делает.

of63
..Винда какой версии?
У меня Windows так про себя пишет:
[attachment 36367 2022-07-27_10-40-24.png]

lulgu
Еще могу порекомендовать книгу, гл.19:
forum.foxclub.ru

К сожалению, ссылка не работает. Возможно, вы имели в виду книгу Клепинина и Агафоновой „Visual FoxPro 9.0“. Книга хорошая. Она у меня есть. Я ещё раз перечитал 19 главу «Windows API». Там дана общая теория по API функциям в Windows и описаны несколько функций. К сожалению, всех функций в системе - море разливанное, и не зная их предназначения и используемых ими параметров применить их не удаётся.

Обращение к асам Fox и Windows:
Есть три функции:
SetProcessDPIAware
docs.microsoft.com

SetProcessDpiAwareness
docs.microsoft.com

SetProcessDpiAwarenessContext
docs.microsoft.com

Может кто в них разобраться и «взнуздать», т.е. выложить пример их применения для достижения начальной цели?

У меня была следующая идея:
1 Понизить разрешение экрана для задачи до 100%;
2 Посмотреть отчёт в предпросмотре;
3 Вернуть разрешение экрана для задачи к первоначальному.

С 1 пунктом справляется функция SetProcessDPIAware. А вот как быть с 3 пунктом?


А может быть я зря упираюсь именно в эти функции. Напомню исходную цель.
В Windows 10 при увеличении масштаба экрана и использовании SET REPORTBEHAVIOR 90 при предварительном просмотре отчётов информация обрезается по ширине и высоте. Часть информации теряется.
Как с этим бороться?



Исправлено 1 раз(а). Последнее : lemenev, 27.07.22 15:23
Ratings: 0 negative/0 positive
Re: Windows 10 with Scaling factor and ReportBehavior 90
lulgu

Сообщений: 1838
Дата регистрации: 30.11.2016
Интересно, кому это вы такие домашние задания выдаете ...
К сожалению, ИК сейчас не видно, и любителей писать портянки для профтехучилищ вроде немного.
Если вы собрались работать с функциями Winapi, то вы должны хотя бы правильно их написать, чтобы смысл ваших кодов стоило бы рассмотреть.
Ratings: 0 negative/0 positive
Re: Windows 10 with Scaling factor and ReportBehavior 90
ssa

Сообщений: 13007
Откуда: Москва
Дата регистрации: 23.03.2005
lemenev
ssa
Declare integer SetProcessDpiAwareness in shcore.dll
?SetProcessDpiAwareness()
И не ругается. Без всяких копирований библиотек.
Вы запускаете процедуру без параметров.
Разумеется. Почитайте документацию, у сей функции нет параметров.
Цитата:
Она не ругается, но ничего и не делает.
И не ругается, и делает, и результат возвращает. Возможно, что не совсем то, что вы непонятно на каком основании ожидаете...

------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive
Re: Windows 10 with Scaling factor and ReportBehavior 90
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
lulgu
Интересно, кому это вы такие домашние задания выдаете ...
К сожалению, ИК сейчас не видно, и любителей писать портянки для профтехучилищ вроде немного.
Если вы собрались работать с функциями Winapi, то вы должны хотя бы правильно их написать, чтобы смысл ваших кодов стоило бы рассмотреть.

Там не настолько сложно, чтобы обсуждать в реалии... с тобой вообще нет смысла ...
() лулгу жива/жив будем разговаривать...
Ratings: 0 negative/0 positive
Re: Windows 10 with Scaling factor and ReportBehavior 90
Bront

Сообщений: 15
Откуда: Барнаул
Дата регистрации: 08.06.2007
"В виндовс 10 при увеличении маштаба показываемой информации и использования set ReportBehavior 90 предварительные просмотры отчётов обрезаются по ширине и высоте. Часть информации теряется."
Можно пользоваться FoxyPreviewer взять тут www.foxypreviewer.com в версии 3.0 проблема решена



Исправлено 1 раз(а). Последнее : Bront, 10.04.24 15:50
Ratings: 0 negative/0 positive
Re: Windows 10 with Scaling factor and ReportBehavior 90
ssa

Сообщений: 13007
Откуда: Москва
Дата регистрации: 23.03.2005
Bront
Можно пользоваться FoxyPreviewer взять тут www.foxypreviewer.com в версии 3.0 проблема решена
Прелестно! Но только
Цитата:
Only for testing purposes


------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive
Re: Windows 10 with Scaling factor and ReportBehavior 90
Каратаев

Сообщений: 3977
Откуда: Алматы
Дата регистрации: 04.12.2001
Та же проблема... Некоторые пользователи устанавливают у себя масштаб больше 100% и репорт обрезается, как по ширине, так и по высоте...
Никак не решил эту засаду...


------------------
Никогда не бывает настолько плохо, чтобы не могло быть еще хуже.
Ratings: 0 negative/0 positive
Re: Windows 10 with Scaling factor and ReportBehavior 90
of63

Сообщений: 25244
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
С увеличением масштаба ("увеличенные шрифты" есть настройка в винде современной) фокс делает плохо - часть окон, как раз "оторванные от приложения" окна уезжают за пределы экрана (вверх влево). Не боролся...
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 28 FaustGreen  (Гостей: 27)

© 2000-2024 Fox Club 
Яндекс.Метрика