Форум программистов, компьютерный форум, киберфорум
Наши страницы

Visual Basic .NET

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 22, средняя оценка - 4.86
nitromiha
84 / 12 / 1
Регистрация: 24.01.2011
Сообщений: 290
Записей в блоге: 1
#1

Запрет закрытия программы по Alt+F4 - Visual Basic .NET

25.07.2011, 01:37. Просмотров 2836. Ответов 7
Метки нет (Все метки)

Здравствуйте! Скажите, пожалуйста, как сделать чтобы програмка не выключалать комбинацией Alt+F4

Добавлено через 4 часа 3 минуты
И в диспетчере задач также не отключалась?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.07.2011, 01:37
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Запрет закрытия программы по Alt+F4 (Visual Basic .NET):

Закрытия первого окна формы без закрытия всей программы - Visual Basic .NET
Прошу помочь: в программе два окна, в начале открывается первое, после нажатия кнопки открывается второе окно (Form2.Show), при загрузки...

Подтверждение закрытия программы - Visual Basic .NET
Друзья! Подскажите, кто в курсе: как сделать так, чтобы при закрытии программы стандартным крестиком в правом углу формы появлялся MsgBox...

Сохранение свойств компонентов после закрытия программы - Visual Basic .NET
Помогите не могу разобраться( На поле есть label1.text = 100 После нажатия на кнопку labe1.text = 101 Как мне это сохранить можно,...

После закрытия программы ее процесс продолжает работать - Visual Basic .NET
visual basic 2010 при закрытии программа остается в процессах что делать

Как сохранить изображение в PictureBox до полного закрытия программы - Visual Basic .NET
Здравствуйте. Программа состоит из двух форм - Form1 (главная) и Form2. На Form1 кнопка открытия Form2. На Form2 - PictureBox, Button,...

Иконка в системном трее NotifyIcon. После закрытия программы не исчезает - Visual Basic .NET
Добрый день. В приложении используется NotifyIcon для отображения иконки в системном трее. Когда работа с программой закончена (все...

7
Bazzy
190 / 183 / 10
Регистрация: 09.02.2011
Сообщений: 458
25.07.2011, 02:16 #2
vb.net
1
2
3
4
5
6
7
8
 Private Sub Form1_KeyDown(ByVal sender As Object, _
        ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
 
        If e.Alt = True And e.KeyCode = Keys.F4 Then
            e.Handled = True
        End If
 
    End Sub
или

vb.net
1
2
3
4
5
6
7
    Protected Overrides Function ProcessCmdKey(ByRef msg As Message, ByVal keyData As Keys) As Boolean
        If keyData = (Keys.Alt Or Keys.F4) Then
            Return True
        Else
            Return MyBase.ProcessCmdKey(msg, keyData)
        End If
    End Function
а на счет диспетчера задач надо помозговать
1
nitromiha
84 / 12 / 1
Регистрация: 24.01.2011
Сообщений: 290
Записей в блоге: 1
25.07.2011, 02:24  [ТС] #3
А как сделать чтобы при нажатии альт ф4 срабатывало определенное действие? Куда вписывать код действия?
0
Darth Coder
277 / 258 / 69
Регистрация: 10.06.2011
Сообщений: 695
25.07.2011, 09:19 #4
vb.net
1
2
3
4
5
6
7
8
9
Private Sub Form1_KeyDown(ByVal sender As Object, _
        ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
 
        If e.Alt = True And e.KeyCode = Keys.F4 Then
msgbox "так меня не закроешь :)"            
e.Handled = True
        End If
 
    End Sub
или

vb.net
1
2
3
4
5
6
7
8
    Protected Overrides Function ProcessCmdKey(ByRef msg As Message, ByVal keyData As Keys) As Boolean
        If keyData = (Keys.Alt Or Keys.F4) Then
msgbox "так меня не закроешь :)"            
Return True
        Else
            Return MyBase.ProcessCmdKey(msg, keyData)
        End If
    End Function
1
Bazzy
190 / 183 / 10
Регистрация: 09.02.2011
Сообщений: 458
25.07.2011, 11:14 #5
C диспетчером все еще проще:
vb.net
1
2
3
 Private Sub form2_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
        If e.CloseReason = CloseReason.TaskManagerClosing Then e.Cancel = True
    End Sub
1
nitromiha
84 / 12 / 1
Регистрация: 24.01.2011
Сообщений: 290
Записей в блоге: 1
25.07.2011, 12:43  [ТС] #6
Может я както не правильно вставляю код, но на диспетчер не работает кол - всеравно вырубается))
0
Bazzy
190 / 183 / 10
Регистрация: 09.02.2011
Сообщений: 458
25.07.2011, 22:07 #7
Варианта 2:
1 - Вы должны добавить
vb.net
1
 If e.CloseReason = CloseReason.TaskManagerClosing Then e.Cancel = True
в обработку события FormClosing Вашей формы (это скорее всего не Form2)
2 - Если Вы завершаете процесс через диспетчер задач а не снимаете задачу в приложениях то этот код не поможет.

Добавлено через 3 минуты
Можно попробовать написать службу, которая будет следить за тем есть Ваш процесс или нет и если его закрыли запускать его заново...
0
Treals
29 / 29 / 3
Регистрация: 25.05.2011
Сообщений: 308
25.07.2011, 22:35 #8
vb.net
1
2
3
4
5
6
Private Sub form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
        If e.CloseReason = CloseReason.TaskManagerClosing Then
            e.Cancel = True
        End If
 
    End Sub
В такой форме вставь код
0
25.07.2011, 22:35
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.07.2011, 22:35
Привет! Вот еще темы с ответами:

Убрать панель области уведомлений после закрытия программы из трея - Visual Basic .NET
После закрытия программы (Application.Exit()), ее значок исчезает из трея, а эта панель остается висеть. Друзья, подскажите пожалуйста -...

Win API для закрытия окна другой программы (WM_CLOSE) - Visual Basic .NET
Как использовать WinAPI для закрытия сторонней программы(например Visual Studio)? Process.GetProcessesByName().Kill, CloseMainWindow' -...

Запрет запуска экземпляра программы - Visual Basic .NET
Доброго времени суток! Хотелось бы узнать, возможно ли в Visual Studio настроить программу так, чтобы при уже запущенной программе при...

Запрет на запуск сторонней программы - Visual Basic .NET
Здравствуйте!!! Помогите пожалуйста с вопросом: необходимо при запуске программы запретить запуск калькулятора в виндусе. После закрытия...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru