WinLockDLL.dll функционирует в Windows7 - PullRequest
3 голосов
/ 15 ноября 2011

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

Естественно, приложение блокирует их закрытие и блокирует запуск диспетчера задач (среди прочеговещи):

[DllImport("WinLockDLL.dll")]
private static extern int CtrlAltDel_Enable_Disable(bool bEnableDisable);
private void Restrict(bool enabled)
{
    CtrlAltDel_Enable_Disable(enabled);
}

DLL содержит другие функции, которые я использую, такие как скрытие панели задач и рабочего стола.

До недавнего времени у всех студентов был WindowsXP, и он работал.Недавно все студенты обновились до Windows7, и она перестала работать.

Во время отладки я обнаружил, что Windows7 просто не имеет WinLockDLL.dll, поэтому я скопировал dll на один из компьютеров W7 ипопробовал приложение.

На этот раз оно обнаружило dll и не вызвало ошибок, но функция просто не дала эффекта.

Итак, кто-нибудь знает об альтернативе в Windows7?

Самым близким, что я обнаружил, был этот , в котором кто-то написал следующее:

Все функции, которые вы использовали в примере, аварийно завершают работу в Windows 7, если вы не измените вызовв DLL_CALL_STDCALL

"Вызов STDCALL" не помогает, поскольку именно это DllImport делает по умолчанию.

Я читал альтернативыза блокировку ctrl-alt-delete, такую ​​как отмена ключа ctrl или блокировка менеджера задач через реестр или GPO, но я очень предпочитаю просто альтернативу WinLockDLL.dll, которая содержит несколько функций, которые я использую.

Спасибозаранее!

1 Ответ

2 голосов
/ 09 марта 2015

Для тех, кто найдет это в будущем. Я создаю библиотеку, чтобы заменить WinLock.dll для Windows 7. Источник можно найти здесь.

Win7Lock Github

...