nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 04:20



Reply to topic  [ 73 posts ]  Go to page Previous  1, 2, 3, 4, 5  Next
Windows 7 
Author Message
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Icer wrote:
Писал в ответ на:
Lavr wrote:
Раньше, когда, M$ не была такой жадной, они прилагали ещё и интерпретатор QBasic 1.00
Ну так всё, написанное под QBasic, можно было компильнуть под QuickBasic в ЕХЕ-файл! :lol:

А теперь показываю, что происходит на Венде 7 с vbs... :wink:
Надо было мне сделать вот такую штуку:
Code:
C:\Windows\System32\wscript.exe slmgr.vbs /dli
И гордая, умная Венда 7 пренебрежительно сказала мне вот что: :lol:
Attachment:
wбs.gif
wбs.gif [ 14.65 KiB | Viewed 8660 times ]

А про DEBUG я даже не подозревал... а он - есть!
Attachment:
deb.gif
deb.gif [ 20.42 KiB | Viewed 8660 times ]

И вон он - первым пунктом готов to assemble! :ebiggrin:

_________________
iLavr


11 Jan 2021 06:51
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
А кто-нибудь знает более или менее уверенно, как Windows 7 трактует "запуск от имени администратора"?

Вопрос вот в чём: запускаю я "от имени администратора", скажем, Proteus.
При этом я сам - администратор и других пользователей просто нет, как факт.

В процессе работы Proteus уже вызывает ассемблер asm80.exe.
Вот мне интересно - с какими правами он вызывает ассемблер asm80.exe?
Если я запускаю ассемблер asm80.exe - для него указано "запуск от имени администратора",
а вот когда Proteus его вызывает, то как это трактуется?

Что-то изредка, но виснуть начала у меня эта связка под Windows 7, чего раньше никогда не было...

_________________
iLavr


30 Mar 2021 16:08
Profile
Maniac

Joined: 05 Nov 2008 19:47
Posts: 287
Location: 81.28.208.238
Reply with quote
Lavr wrote:
В процессе работы Proteus уже вызывает ассемблер asm80.exe.
Вот мне интересно - с какими правами он вызывает ассемблер asm80.exe?

Скорее всего с теми-же что и сам работает.
Когда мне что-то нужно сделать с админскими правами, я запускаю FAR с такими правами,
а из него все что мне нужно получаются с этими-же правам.


30 Mar 2021 18:25
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
aav8 wrote:
Lavr wrote:
В процессе работы Proteus уже вызывает ассемблер asm80.exe.
Вот мне интересно - с какими правами он вызывает ассемблер asm80.exe?
Скорее всего с теми-же что и сам работает.

А где-то можно это прочитать подробнее?

Я, к примеру, знаю, что есть функция WIN API - запустить из приложения другое приложение.
Я так думаю: ограничение "запуск от имени администратора" должно как-то влиять на эту функцию,
или, может быть, другая функция в этом наборе появилась?

_________________
iLavr


31 Mar 2021 05:20
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Сам я по поводу этой фичи прочитал вот что:
Quote:
«Запуск от имени администратора» — НЕ означает запуск от имени какой-то конкретной учётной записи. «Запуск от имени администратора» — это запуск программы с повышением прав, т.е. с разрешением на чтение и запись в системные области.
Как известно, самое первое правило по борьбе с вредоносными программами — не работать под учётной записью с административными правами. Только, испокон веков, мало кто этим правилом пользуется. Все привыкли «сидеть под админом» и наслаждаться полными правами. Однако потом, когда компьютер заражается вирусом, редко кто винит себя.
Именно поэтому, в компании Майкрософт нашли компромиссное решение:

1) Понизили администраторов в правах. Теперь администратор по умолчанию использует маркер пользователя. Ведь для запуска веб-браузера или, скажем, Скайпа не нужно же обладать административными привилегиями.

2) А для случаев, когда наивысшие права действительно нужны, придумали режим повышения прав — так называемый запуск от имени администратора.

Теперь администратор является пользователем, пока не запросит повышения для выполнения какой-то отдельной задачи.

Резюме: запуск от имени администратора нужен для временного повышения прав с целью выполнения определённой чётко осознаваемой операции.

_________________
iLavr


31 Mar 2021 05:42
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Ну и в рамках того, как вызывается ассемблер, я увидел, что это делается так:
Code:
asm80.exe "C:\Users\Lavr\AppData\Local\Temp\ASME410.tmp" "C:\Users\Lavr\AppData\Local\Temp\ASME411.tmp" -l "C:\Users\Lavr\AppData\Local\Temp\ASME412.tmp"

То есть, по идее - всё очень корректно: ассемблеру предлагается работать с tmp-файлами
в Temp-директории.
Это "правами администратора" или отсутствием их ограничиваться как бы не должно.
Более того, раз уж я увидел эти пути, я заглянул в эту папку Temp.
А там поднакопилось уже таких файлов ASMхххх.tmp - причем, все файлы правильные.
Первый - передан исходник, второй - скомпилированный бинарник, третий - нормальный листинг.
То есть, asm80.exe свою задачу выполняет безошибочно. А странный сбой происходит тогда,
когда бинарник и листинг надо забрать из tmp-файлов, а их самих уничтожить.
Иначе - в успешных случаях - они не накапливаются в папке Temp.

Вот такая получается загогулина... причем явных признаков, когда случается фейк, я не увидел.

_________________
iLavr


31 Mar 2021 06:01
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Есть лишь одна рабочая гипотеза: tmp-файлы создаются автоматически.
Это видно по их названиям: ASME410.tmp, ASME411.tmp, ASME412.tmp
Возможно, в какой-то момент глюканул по неизвестным или даже правильным причинам asm80.exe,
и tmp-файлы не были удалены.
В следующий запуск они, вероятно, создаются автоматически с теми же названиями: ASME410.tmp,
ASME411.tmp, ASME412.tmp

но они уже там есть - и вот тут-то наступает коллизия...

Но это лишь предположение... под Вендами 98 и ХР такого я просто не замечал.

_________________
iLavr


31 Mar 2021 06:12
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
Есть лишь одна рабочая гипотеза: tmp-файлы создаются автоматически.
Это видно по их названиям: ASME410.tmp, ASME411.tmp, ASME412.tmp

Что-то не так с этой Temp-папкой... :-?
Специально пронаблюдал: бывает, что всё нормально скомпилировалось и работает, а tmp-файлы остались.
А бывает, я и заметить не успеваю, как всё нормально скомпилировалось, и файлы были удалены. :osad:

_________________
iLavr


31 Mar 2021 11:05
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Джентльмены, ни у кого не случалось такой неприятной оказии? :roll:
Во всех, написанных мной ранее программах, под Windows 7 перестал работать Progress Bar! :o
Attachment:
PB.PNG
PB.PNG [ 27.84 KiB | Viewed 6176 times ]

Причем вирусы сразу отметаются, потому как с перепугу я перекомпилировал заново! :-?

Может быть какие-то изменения были? Может быть я что-то пропустил?
Progress Bar был написан через Win API и использовал библиотеку comctl32.dll

По интернету обнаружил лишь одну возможную причину:
Quote:
I suspect this may be using window messaging to monitor controls.
If so, this would be blocked by a Windows 7 feature known as User Interface Process Isolation (UIPI).

The only way to open it up without disabling UAC is to use AppCompat to allow specific messages to pass.

_________________
iLavr


28 Jan 2023 04:46
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Посмотрел отладчиком, в чём дело: под Windows 7 не срабатывает создание самогО Progress Bar
Code:
'// Create the progress bar   
lnghWnd = CreateWindowEX(0, PROGRESS_CLASS,"", WS_VISIBLE Or WS_CHILD Or lngType, 0, 0, 0, 0, Me.hwnd, 0&, App.hInstance, 0&)

Эта функция возвращает lnghWnd = 0 :-?

_________________
iLavr


28 Jan 2023 06:47
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
... не срабатывает создание самогО Progress Bar
Code:
lnghWnd = CreateWindowEX(0, PROGRESS_CLASS,"", WS_VISIBLE Or WS_CHILD Or lngType, 0, 0, 0, 0, Me.hwnd, 0&, App.hInstance, 0&)

Да... что-то намутили с этой функцией в новых Виндах... :-?
Windows API - Невозможно найти CreateWindow
https://progi.pro/oshibka-createwindowexa-v-windows-8-pro-64-bit-7722806

_________________
iLavr


28 Jan 2023 12:59
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Видимо пришло время апгрейдиться на десяточку ;)

Или сразу на "одиннадцачку" :)


Attachments:
Win11.jpg
Win11.jpg [ 596.99 KiB | Viewed 6117 times ]

_________________
:dj: https://mastodon.social/@Shaos
28 Jan 2023 14:10
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Lavr wrote:
Lavr wrote:
... не срабатывает создание самогО Progress Bar
Code:
lnghWnd = CreateWindowEX(0, PROGRESS_CLASS,"", WS_VISIBLE Or WS_CHILD Or lngType, 0, 0, 0, 0, Me.hwnd, 0&, App.hInstance, 0&)

Да... что-то намутили с этой функцией в новых Виндах... :-?
Windows API - Невозможно найти CreateWindow
https://progi.pro/oshibka-createwindowexa-v-windows-8-pro-64-bit-7722806

А ты в чём компилируешь то? Может новая версия компиля дропнула суппорт для семёрки?

_________________
:dj: https://mastodon.social/@Shaos


28 Jan 2023 14:11
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Shaos wrote:
Видимо пришло время апгрейдиться на десяточку ;) Или сразу на "одиннадцачку" :)

А смысл? :roll: Там это всё и подавно не работает...

_________________
iLavr


28 Jan 2023 14:14
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Lavr wrote:
Shaos wrote:
Видимо пришло время апгрейдиться на десяточку ;) Или сразу на "одиннадцачку" :)

А смысл? :roll: Там это всё и подавно не работает...

Ну нужно понять что у тебя изменилось если раньше работало, а теперь перестало
Семёрка сама по себе видимо не менялась т.к. её поддержка прекратилась ещё года 4 назад
Вот я и спрашиваю - чем ты компилируешь? Менялся ли компилятор

_________________
:dj: https://mastodon.social/@Shaos


28 Jan 2023 14:21
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 73 posts ]  Go to page Previous  1, 2, 3, 4, 5  Next

Who is online

Users browsing this forum: No registered users and 17 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.