создание пароля.

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

GranDDaY
Начинающий
Начинающий
 
Сообщения: 23
Зарегистрирован: 01.11.2010 (Пн) 15:52

создание пароля.

Сообщение GranDDaY » 01.11.2010 (Пн) 16:00

Я делаю программу для блокировки экрана администратором компьютера.
Мне надо чтобы в первой форме администратор смог ввести пароль, после чего запустить программу (вторую форму)
а вторая форма у меня на весь экран, и есть кнопка закрыть, так вот, мне надо чтобы при нажатии на кнопку закрыть выходило окно с вводом пароля указанного при запуске программы, если пароль правильный то форма2 закрывается, а если нет то она не закрывается.
пмогите пожалуйста, совсем уж тупой, не знаю что делать... :cry:
а ещё лучше дайте пример, но если нет то не надо..

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: создание пароля.

Сообщение iGrok » 01.11.2010 (Пн) 17:54

Идея в целом - бред, ибо обходится даже не двумя, а одним пальцем.

А проверка чего-либо в момент закрытия формы - это обработка события FormClosing. И, если нужно запретить закрытие, установка e.Cancel = True.
Только надо учитывать причины закрытия (e.CloseReason), например при завершении винды наверное неплохо бы всё-таки закрыться несмотря на неправильный пароль.
label:
cli
jmp label

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Re: создание пароля.

Сообщение Денис » 02.11.2010 (Вт) 11:39

Вот.
Вложения
02154.png
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

FireFenix
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1640
Зарегистрирован: 25.05.2007 (Пт) 10:24
Откуда: Mugen no Sora

Re: создание пароля.

Сообщение FireFenix » 02.11.2010 (Вт) 12:41

LogOff тоже ещё не отменяли
Птицей Гермеса меня называют, свои крылья пожирая... сам себя я укрощаю
私はヘルメスの鳥 私は自らの羽根を喰らい 飼い慣らされる

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Re: создание пароля.

Сообщение Денис » 02.11.2010 (Вт) 14:27

iGrok писал(а):даже не двумя, а одним пальцем

Научи! Я умею только тремя пальцами (Ctrl + Alt + Del)
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: создание пароля.

Сообщение iGrok » 02.11.2010 (Вт) 15:40

Денис писал(а):
iGrok писал(а):даже не двумя, а одним пальцем

Научи! Я умею только тремя пальцами (Ctrl + Alt + Del)

Семь бед - один ресет! =)
label:
cli
jmp label

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Re: создание пароля.

Сообщение Денис » 03.11.2010 (Ср) 10:20

iGrok писал(а):Семь бед - один ресет! =)

Не гони, ямщик! Какой ресет? Диспетчер задач!
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: создание пароля.

Сообщение iGrok » 03.11.2010 (Ср) 14:04

Денис писал(а):Диспетчер задач!
Одним пальцем? Ты просил научить одним пальцем.
А если не одним, тогда конечно диспетчер, да. =)
label:
cli
jmp label

ugin_root
Начинающий
Начинающий
 
Сообщения: 2
Зарегистрирован: 22.06.2010 (Вт) 13:26

Re: создание пароля.

Сообщение ugin_root » 07.11.2010 (Вс) 23:21

GranDDaY
Код: Выделить всё
Public Class Form1
    Public pass As String = "" 'Пароль введённый при блокировки компьютера
    Dim password As String = "ugin_root" 'Введённый при загрузки программы пароль
    Public Sub Form1_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing
        If pass = "" Then
            Dim formr As Windows.Forms.Form = WindowsApplication1.Form2
            formr.Show()
            e.Cancel = True
        ElseIf password = pass Then
            MsgBox("Пароль введён правильно закрываем форму")
        Else
            pass = ""
                MsgBox("Неправильный пароль!")
            e.Cancel = True
        End If
    End Sub
End Class

<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Partial Class Form2
    Inherits System.Windows.Forms.Form
    <System.Diagnostics.DebuggerNonUserCode()> _
    Protected Overrides Sub Dispose(ByVal disposing As Boolean)
        Try
            If disposing AndAlso components IsNot Nothing Then
                components.Dispose()
            End If
        Finally
            MyBase.Dispose(disposing)
        End Try
    End Sub
    Private components As System.ComponentModel.IContainer
    <System.Diagnostics.DebuggerStepThrough()> _
    Private Sub InitializeComponent()
        Me.TextBox1 = New System.Windows.Forms.TextBox
        Me.Label1 = New System.Windows.Forms.Label
        Me.SuspendLayout()
        '
        'TextBox1
        '
        Me.TextBox1.Location = New System.Drawing.Point(72, 12)
        Me.TextBox1.Name = "TextBox1"
        Me.TextBox1.Size = New System.Drawing.Size(153, 20)
        Me.TextBox1.TabIndex = 0
        '
        'Label1
        '
        Me.Label1.AutoSize = True
        Me.Label1.Location = New System.Drawing.Point(12, 15)
        Me.Label1.Name = "Label1"
        Me.Label1.Size = New System.Drawing.Size(45, 13)
        Me.Label1.TabIndex = 1
        Me.Label1.Text = "Пароль"
        '
        'Form3
        '
        Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
        Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
        Me.ClientSize = New System.Drawing.Size(237, 44)
        Me.Controls.Add(Me.Label1)
        Me.Controls.Add(Me.TextBox1)
        Me.Name = "Form2"
        Me.Text = "Проверка пароля"
        Me.ResumeLayout(False)
        Me.PerformLayout()

    End Sub

    Private Sub TextBox1_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyDown
        If e.KeyCode = Keys.Enter Then
            Form1.pass = Me.TextBox1.Text
            Me.Close()
        End If
    End Sub
    Private Sub Form2_FormClosing(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles MyBase.FormClosing
        Form1.Close()
    End Sub
    Friend WithEvents TextBox1 As System.Windows.Forms.TextBox
    Friend WithEvents Label1 As System.Windows.Forms.Label
End Class

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Re: создание пароля.

Сообщение Viper » 08.11.2010 (Пн) 5:57

ugin_root писал(а):GranDDaY[code][/code]
И собственно к чему это?
Весь мир матрица, а мы в нем потоки байтов!

netdemon
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 179
Зарегистрирован: 04.09.2007 (Вт) 15:51

Re: создание пароля.

Сообщение netdemon » 19.11.2010 (Пт) 18:05

Сделай так: Если окно пытаются закрыть или открывается диспетчер задач, а пароль неверный-делаем User Logoff и на окно выбора пользователя попадаем.
Лишь разум потерянный бесповоротно мною. Наполнить может сердце мне тоской.
Нельзя обнять необъятное и впихнуть невпихуемое.


Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 24

    TopList