elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


  Mostrar Mensajes
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 [17] 18 19
161  Programación / .NET (C#, VB.NET, ASP) / Re: Conectar a un Servidor por Internet en: 8 Noviembre 2010, 22:43 pm
OK, para el caso esta bien.

Pero te presento el mundo de los servicios web, publicar la BD es una mala practica, seria muy sensible a un ataque, un servicio web puede viajar por el puerto 80 ( el mas comun) y utilizar SSL para encripcion, la conexión con la BD es mas vulnerable.


Atentamente,

Juan Manuel Lombana

Microsoft Certified Professional
Microsoft Student Partner
Medellín - Colombia

Eso si es verdad, por lo mismo en esta clase de proyectos hay que tener cuidado, desde saber quienes lo tendran y que ellos no se lo pasen a terceros, tambien hacer un login de tipo HWID para hacerlo mejor, y claro proteger nuestra aplicacion para que no pueda ser leida facilmente ya sea con .NET Reflector o algun otro.

Yo solo uso esta forma ya que donde esta hosteada la DB, no es mi PC y crear una web en ella para manejar la DB se me hace mas tedioso que crear una aplicacion de escritorio hehe , proximamente vere eso para hacer alguna en silverlight(si esque se puede).
162  Programación / .NET (C#, VB.NET, ASP) / Re: Conectar a un Servidor por Internet en: 8 Noviembre 2010, 18:58 pm
hehehe si tmb se puede con ODBC o he visto pero yo siempre lo hago con SQL ahi hehe
si te fijas en el source anterior que puse el codigo de conexion es
Código:
"data source = 127.0.0.1; initial catalog = GunzDB; user id = sa; password = zombie000"

Con esa es la que yo uso pra conectarme a Base de Datos remotas en MSSQL solo claro en ves de esos datos pongo la IP del servidor un ejemplo a servidor remoto seria

Código:
"data source = crymore.sytes.net; initial catalog = GunzDB; user id = sa; password = zombie000"

Con esa podras entrar a mi Base de Datos
crymore.sytes.net es mi NO-IP para hacer redireccion a mi hehe, aunque GunZDB es una Base de Datos que uso para un juego y por ahora esta vacia hehe ahi puedes intentar entrar en ella para que veas (:
163  Programación / .NET (C#, VB.NET, ASP) / Re: Conectar a un Servidor por Internet en: 8 Noviembre 2010, 18:29 pm
Pues si deberia funcionar, solo recuerda tambien que a la Base de Datos a la cual accederemos si es en MSSQL tiene que tener permitido el acceso remoto, y asignarle un userid y contraseña para la seguridad, la conexion que tu usas ahi es mayormente usado para locales.

y en la Funcion Abrir no estoy seguro porque no colocar el
cadenaconexion.Open()

Por lo demas lo vi bien
164  Programación / .NET (C#, VB.NET, ASP) / Re: Se puede integrar archivos al proyecto? en: 8 Noviembre 2010, 18:24 pm
Para copiar un archivo desde resource basta con hacerlo con FileWriteAllBytes
Código
  1. 'zlib0 es mi recurso
  2.            Dim zlib As Byte() = My.Resources.zlib0
  3. 'mrs.exe es como queremos que se guarde en la misma carpeta donde estamos
  4.            File.WriteAllBytes("mrs.exe", zlib)
165  Programación / .NET (C#, VB.NET, ASP) / Re: Formato a una variable? en: 8 Noviembre 2010, 18:19 pm
Bueno yo lo haria algo asi, si esque quieres copiar todos los archivos que se encuentran en tu carpeta de la aplicacion y ademas de sus subcarpetas seria algo asi

Código
  1. Imports System.IO
  2.  
  3. Public Class Form1
  4.  
  5.    Private Sub listararchivos()
  6.        Dim copiar as String
  7.        copiar = "C:\Archivos\"
  8.  
  9.        For Each Archivo As String In My.Computer.FileSystem.GetFiles( _
  10. Application.StartupPath, _
  11. FileIO.SearchOption.SearchAllSubDirectories)
  12.  
  13.            Dim a, b As String
  14.            a = Archivo
  15.            b = My.Computer.FileSystem.GetName(Archivo)
  16.            'Mostramos en un label el nombre del archivo a copiar
  17.            Label1.Text = b
  18.            'Copiar archivo a una ruta que especamos anteriormente
  19.            File.Copy(a,copiar + b)
  20.  
  21.        Next
  22.        Label2.Text = "Lista Actualizada! - " & Date.Now.ToString
  23.    End Sub
  24.  
  25. End class
166  Programación / .NET (C#, VB.NET, ASP) / Re: Conectar a un Servidor por Internet en: 8 Noviembre 2010, 18:08 pm
Yo la verdad te aconsejaria mejor hacerlo en MySQL o MSSQL, si ya pasaras a hacerlo por internet, ya que como dijo .::IT::.  , sera mucho mas tardado y ademas quien quiere estarse matando por hacer una conexion a archivos remotos si para ello tenemos la facilidad de MySQL y/o MSSQL.

Ademas es casi lo mismo la conexion o am el codigo de conexion
Ejemplo Conectar a MSSQL
Código
  1. imports system.data.sqlclient
  2. module Conexion0
  3. dim con as sqlconnection
  4. dim ad as new sqldataadapter
  5. dim dt as datatable
  6. dim comando as string
  7. Public conexion As String = "data source = 127.0.0.1; initial catalog = GunzDB; user id = sa; password = zombie000"
  8.  
  9. 'datasource = servidor , initial catalog=BaseDeDatos , userid= usuario , password = contraseña
  10.  
  11. public sub conectar
  12. con = new sqlconnection()
  13. con.connectionstring(conexion)
  14.  
  15. try
  16. con.open()
  17. msgbox("Conexion Exitosa (:")
  18. con.close()
  19. catch
  20. msgbox("Error en la conexion")
  21. end try
  22.  
  23. end sub
  24.  
  25. 'Ejemplo de una query
  26. public sub query
  27. dt = new datatable
  28. 'Query para obtener todos los datos de la tabla Cuentas para al final mostrarla en un Datagridview
  29. comando = "SELECT * FROM Cuentas"
  30. ad = new sqldataadapter(comando,conexion)
  31. ad.fill(dt)
  32. Form1.datagridview1.datasource = dt
  33.  
  34. end sub
  35.  
  36. end module
  37.  
try
167  Programación / .NET (C#, VB.NET, ASP) / Re: Error con notifyIcon c# en: 11 Septiembre 2010, 03:26 am
Intenta asi
Código
  1.    Private Sub Form1_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Resize
  2.        If Me.WindowState = FormWindowState.Minimized Then
  3.            Me.Visible = False
  4.            NotifyIcon1.Visible = True
  5.        End If
  6.    End Sub
  7.  
  8.    Private Sub NotifyIcon1_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles NotifyIcon1.DoubleClick
  9.        Me.Visible = True
  10.        Me.WindowState = FormWindowState.Normal
  11.        Me.Show()
  12.        NotifyIcon1.Visible = False
  13.    End Sub
  14.  

Ami me funciono

Fallos
visible = true - jamas lo pusistes
Me.WindowState = FormWindowState.Normal - se pone antes del show asi antes de mostrarse ya estara normal si lo pones despues se mostrara y vera que sigue minimizado y dara otra vez y nose mostrara nunca
168  Programación / Programación General / Re: mail en: 2 Septiembre 2010, 04:02 am
Código
  1. using System;
  2. using System.Collections;
  3. using System.Net;
  4. using System.Net.Mail;
  5. using System.Net.Mime;
  6.  
  7. public class EjemploCorreoGMail
  8. {
  9.    public static void Main()
  10.    {
  11.            System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage();
  12.            msg.To.Add("destinatario@dominio.com");
  13.            msg.From = new MailAddress("micuenta@gmail.com", "Tu Nombre", System.Text.Encoding.UTF8);
  14.            msg.Subject = "Prueba de correo a GMail";
  15.            msg.SubjectEncoding = System.Text.Encoding.UTF8;
  16.            msg.Body = "Cuerpo del mensaje";
  17.            msg.BodyEncoding = System.Text.Encoding.UTF8;
  18.            msg.IsBodyHtml = false;
  19.  
  20.            //Aquí es donde se hace lo especial
  21.            SmtpClient client = new SmtpClient();
  22.            client.Credentials = new System.Net.NetworkCredential("micuenta@gmail.com", "miclave");
  23.            client.Port = 587;
  24.            client.Host = "smtp.gmail.com";
  25.            client.EnableSsl = true; //Esto es para que vaya a través de SSL que es obligatorio con GMail
  26.            try
  27.            {
  28.                        client.Send(msg);
  29.            }
  30.            catch (System.Net.Mail.SmtpException ex)
  31.            {
  32.                        Console.WriteLine(ex.Message);
  33.                        Console.ReadLine();
  34.            }
  35.    }
  36. }

Credits: José M. Alarcón Aguín
169  Programación / .NET (C#, VB.NET, ASP) / Re: Ayuda - guardar historial de lo que hace un usuario [C#] en: 2 Septiembre 2010, 03:51 am
No discuto la razón acá , simplemente te comparto mis experiencias :)

Un saludo y con respecto a:
Código
  1. comando = "Select * from Login where Usuario='" + form1.user.text + "' and password='" + form1.contraseña.text + "'"
Es susceptible a Sql Injection. Yo he visto a usuarios de administración haciendo queries xD se los juro!

Si, pero para que haria algo asi si solo son 2 personas la que lo manejan, aunque si lo decea antes de eso al pulsar el boton puede verificar lo que introdujo y asi hacer un antisql

Yo por ejemplo asi lo uso pero solamente las computadoras que e colocado pueden usar el programa un tipo de HWID que al iniciar antes del login verifica que la PC tenga admision a usar el programa jeje asi tengo usuarios confiables que la puedan usar

Pero nunca esta demas un pequeño codigo para AntiSql jeje
170  Programación / .NET (C#, VB.NET, ASP) / Re: Ayuda guarda histroail de lo que hace un usuario en C# en: 1 Septiembre 2010, 23:05 pm
Eso es lo que decia y como dicen los demas porque usas 2?, porque no nomas 1 ?
Entonces al loguearte si es correcto los datos que guarde el usuario en una variable y ya al usar el codigo de "INSERT" ahi pones la variable nose si me explico
Sino aqui te dejo un ejemplo

Código
  1. Dim da as new sqldataadapter
  2. Dim dt as new datatable
  3. dim comando as string
  4. 'Rellenar con tu codigo de conexion
  5. dim conexion as string = ""
  6.  
  7. public sub login
  8. comando = "Select * from Login where Usuario='" + form1.user.text + "' and password='" + form1.contraseña.text + "'"
  9. da = new sqldataadapter(comando,conexion)
  10. da.fill(dt)
  11. form1.datagridview1.datasource = dt
  12.  
  13. if form1.datagridview1.rows.count = 2 then
  14. 'Logueado
  15. form2.show
  16. me.hide
  17. else
  18. msgbox("Error No se a podido loguear revisa los datos")
  19. end if
  20.  
  21. end sub
  22.  
  23. public sub historial(byval log as string, byval fecha as string)
  24. comando = "INSERT INTO Historial (Usuario, Accion, Fecha) VALUES ('" + form1.user.text + "', '" + log + "', '" + fecha + "')"
  25. da = new sqldataadapter(comando,conexion)
  26. da.fill(dt)
  27. da.update(ctype(dt,datatable))
  28. end sub

Y ya solamente lo llamas desde lo necesites y tmb si deceas que si uno esta lgueado y el otro intenta entrar puedes hacer algo asi

Código
  1. Dim da as new sqldataadapter
  2. Dim dt as new datatable
  3. dim comando as string
  4. 'Rellenar con tu codigo de conexion
  5. dim conexion as string = ""
  6.  
  7. public sub login
  8. comando = "Select * from Login where Usuario='" + form1.user.text + "' and password='" + form1.contraseña.text + "'"
  9. da = new sqldataadapter(comando,conexion)
  10. da.fill(dt)
  11. form1.datagridview1.datasource = dt
  12.  
  13. if form1.datagridview1.rows.count = 2 then
  14. 'Logueado
  15. 'datagridview1(0,4) es 0 = la fila que seria la primera y 4 igual a la columna
  16. 'Que pense que eran estas ID, Usuario,Password, Conectado esas son las columnas que pense que podras tener
  17. 'Bueno espero te sirva ^^
  18. if form1.datagridview1(0,4).value.tostring = "1" then
  19. msgbox("Ya hay alguien logueado con esta cuenta")
  20. exit sub
  21. else
  22. loginz()
  23. end if
  24.  
  25. form2.show
  26. me.hide
  27. else
  28. msgbox("Error No se a podido loguear revisa los datos")
  29. end if
  30.  
  31. end sub
  32.  
  33. private sub loginz()
  34. comando = "UPDATE Login set conectado = '1' where usuario ='" + form1.user.text + "'"
  35. da = new sqldataadapter(comando,conexion)
  36. da.fill(dt)
  37. da.update(ctype(dt,datatable))
  38. end sub
  39.  
  40. 'Este lo inicias cuando se este cerrando el programa
  41. private sub desloguear
  42. comando = "UPDATE Login set conectado = '0' where usuario ='" + form1.user.text + "'"
  43. da = new sqldataadapter(comando,conexion)
  44. da.fill(dt)
  45. da.update(ctype(dt,datatable))
  46. end sub
Páginas: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 [17] 18 19
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines