CODIGO PARA LOGIN VB 2008 EXPRESS EDITION

SAMUELRIBEIRO 25/06/2013 15:42:43
#425200
Boa tarde Senhores.

Não estou conseguindo fazer um código para o meu formulário de login, a um tempo estou tentando até mesmo em outros fóruns mas não obtenho respostas. Segue abaixo o meu código que retirei de uma apostila e não funciona e os erros que estão dando.

Citação:

Private Sub btnOkLogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOkLogin.Click
Dim vNivel, vSenha, vNome As String
If txtUsuarioLogin.Text = Nothing Then
MsgBox([Ô]Digite o seu Nome de Usuário!![Ô], vbOKOnly + MsgBoxStyle.Information, [Ô]Sistema de Automação Comercial - Aviso[Ô])
txtUsuarioLogin.Focus()
Exit Sub
End If
If txtSenhaLogin.Text = Nothing Then
MsgBox([Ô]Digite a sua Senha!![Ô], vbOKOnly + MsgBoxStyle.Information, [Ô]Sistema de Automação Comercial - Aviso[Ô])
txtSenhaLogin.Focus()
Exit Sub
End If
vNome = Chr(39) & txtUsuarioLogin.Text & Chr(39)
vSenha = Chr(39) & txtSenhaLogin.Text & Chr(39)
conn.Open([Ô]Select * tblusuario where usuario & vNome & And senha = & vSenha[Ô], conn, [txt-color=#e80000]adOpenKeySet, [/txt-color][txt-color=#e80000]adLockOptimistic, adCmdText)[/txt-color]

If[txt-color=#e80000] RecordCount [/txt-color]= 0 Then

MsgBox([Ô]Usuário ou Senha Invalida[Ô], vbOKOnly = MsgBoxStyle.Information, [Ô]Sistema de Automação Comercial - Aviso[Ô])
txtUsuarioLogin.Text = [Ô][Ô]
txtSenhaLogin.Text = [Ô][Ô]
txtUsuarioLogin.Focus()
conn.Close()
Exit Sub
Else
frmPrincipal.Show()
End If
End Sub
End Class



Erro 1 O nome [ô]adOpenKeySet[ô] não está declarado.
Erro 2 O nome [ô]adLockOptimistic[ô] não está declarado.
Erro 3 O nome [ô]adCmdText[ô] não está declarado.
Erro 4 O nome [ô]RecordCount[ô] não está declarado.

Desde já Agradeço.
KERPLUNK 25/06/2013 17:47:55
#425206
Resposta escolhida
Você não tem a menor idéia do que é esse código acima não é?
Bem, este código usa ADO, se você está usando .NET(que é o que me parece), não use ADO, use ADO.NET

E de preferência, antes de querer escrever código, entenda o que é que está fazendo, não saia copiando e colando coisas que vê por aí, se você entender bem o que está fazendo, não vai ter esse tipo de problema nunca mais.
OMAR2011 25/06/2013 18:42:13
#425209
Caraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.

Viu o que o Kerplunk postou.

Sabe o que é isto:conn.Open([Ô]Select * tblusuario where usuario & vNome & And senha = & vSenha[Ô], conn, adOpenKeySet, adLockOptimistic, adCmdText)

Leia.

Explicações:

[CursorType]: Opcional. Um valor CursorTypeEnum que determina o tipo de cursor que o provedor deve usar ao abrir o Recordset. Pode ser uma das seguintes constantes:


Constante

Descrição


adOpenForwardOnly

Cursor somente progressivo. Padrão. Idêntico ao cursor estático exceto pelo fato de que é possível somente efetuar rolagem progressiva pelos registros. Isso melhora o desempenho em situações em que é necessária somente uma passagem pelo recordset.


adOpenKeyset

Cursor do conjunto de teclas. Como um cursor dinâmico, exceto pelo fato de que não é possível consultar os registros que outros usuário adicionaram, embora os registros excluídos por outros usuários sejam inacessíveis a partir do recordset. As alterações nos dados feitas por outros usuários permanecem visíveis.


adOpenDynamic

Cursor dinâmico. Adições, alterações e exclusões feitas por outros usuários são visíveis e todos os tipos de movimentos pelo recordset são permitidos, exceto indicadores, se o provedor não der suporte a eles.


adOpenStatic

Cursor estático. Uma cópia estática de um recordset que pode ser usada para localizar dados ou gerar relatórios. Adições, alterações ou exclusões feitas por outros usuários não são visíveis.


[LockType]: Opcional. Um valor LockTypeEnum que determina qual tipo de bloqueio (simultaneidade) o provedor deve usar ao abrir o Recordset. Pode ser uma das seguintes constantes:


Constante

Descrição


adLockReadOnly

Padrão. Somente leitura - não é possível alterar os dados.


adLockPessimistic

Bloqueio pessimista, registro por registro - o provedor faz o que for necessário para garantir o êxito da edição dos registros, em geral, bloqueando-os na fonte de dados imediatamente acima de uma edição.


adLockOptimistic

Bloqueio otimista, registro por registro - o provedor usa o bloqueio otimista, bloqueando os registros somente quando o método Update for chamado.


adLockBatchOptimistic

Atualizações em lotes otimistas - necessárias para o modo de atualização em lotes em oposição ao modo de atualização imediata.

B. Manipulação de Dados

Código de Vb5,Vb6 ou anterior não da certo com códigos de vbnet.
Coloca isto na sua cabeça.
Várias vezes você postou misturando vb6 com vbnet.
SAMUELRIBEIRO 26/06/2013 09:49:11
#425226
Bom dia Omar2011 e Kerplunk.

Me desculpe pelo transtorno novamente, na internet achamos muito material sobre o vb.net, mas acho que deveriam colocar um material mostrando a diferença entre ambos.
Algum de vocês conhecem algum material que me tire estas duvidas?

KERPLUNK 26/06/2013 10:22:58
#425233
Citação:

:
Bom dia Omar2011 e Kerplunk.

Me desculpe pelo transtorno novamente, na internet achamos muito material sobre o vb.net, mas acho que deveriam colocar um material mostrando a diferença entre ambos.
Algum de vocês conhecem algum material que me tire estas duvidas?



Dificilmente vai achar algo do gênero. São coisas completamente diferentes. Seria o mesmo que comparar uma moto com um navio, são tão diferentes, que nem tem como ter parâmetro de comparação.
MARCELO.TREZE 26/06/2013 10:58:04
#425238
Dica: (Novamente vou dizer isso)

Poste sua duvida no forum vb.net
Tópico encerrado , respostas não são mais permitidas