|
371
|
Programación / .NET (C#, VB.NET, ASP) / Re: Calcular dias entre Fecha A y Fecha B
|
en: 22 Julio 2010, 01:15 am
|
Estamos haciendo un Messenger así se puede en una linea: Dim fechaInicial As New DateTime(2009, 3, 2, 6, 20, 30) Dim fechafinal As New DateTime(2010, 6, 2, 6, 20, 30) Dim vDiferencia As New TimeSpan(fechafinal.Ticks - fechaInicial.Ticks) MessageBox.Show(vDiferencia.TotalDays)
|
|
|
375
|
Programación / .NET (C#, VB.NET, ASP) / Re: SmartDll.dll
|
en: 21 Julio 2010, 20:07 pm
|
Si ya te entiendo tambien pense en eso pero me dio flogera xD obviamente se necesita que el plugin pueda tener acceso al programa que lo cargo, bueno seguiré trabajando y cualquier avance lo comunico, Gracias por tu respuesta
|
|
|
376
|
Programación / .NET (C#, VB.NET, ASP) / SmartDll.dll
|
en: 21 Julio 2010, 19:19 pm
|
Buenas tardes/días/noches a todos xD me ha llamado mucho la atención lo de los plugings y addons que se puede hacer con System.Reflection en .Net así que he me puse a hacer una dll SmartDll.dll que sirviera para facilitar la comunicación entre el programa y los plugins de una manera más comoda, entonces vengo aqui a pedir consejos y opiniones mientras voy desarrollando el proyecto de tal manera que quede lo mejor posible, aqui está el source: Para que no tengan que leerselo y analizarlo basicamente crea un objeto apartir de la dll a cargar comprobando que dentro de ella exista la clase Plugin
dentro de esta clase debe ir todo el contenido y además debe ser la clase principal y tambien el nombre de raiz y el del ensamblado del plugins deben ser los mismos, luego tenemos 2 funciones una que devuelve todos los controles dentro del plugin y otra que te devuelve solo los de un tipo en especifico por ejemplo solo los TextBoxPublic Class Dll #Region " Private " Private _ _DllInfo As FileInfo, _ _EntryPoint As String, _ _Assembly As Assembly, _ _ObjectType As Type, _ _ObjectInstance As Object #End Region #Region " Private Shared " #End Region #Region " Public " Public Sub New(ByVal Path As String) Try If IsSmartDll(Path) Then _DllInfo = New FileInfo(Path) _EntryPoint = New FileInfo(Path).Name.Split(CChar("."))(0) & "." _Assembly = Assembly.LoadFile(Path) _ObjectType = _Assembly.GetType(_EntryPoint & "Plugin") _ObjectInstance = _Assembly.CreateInstance(_EntryPoint & "Plugin") Else Throw New Exception(Path & " not belongs to SmartDll") End If Catch ex As Exception Throw New Exception(ex.Message, ex.InnerException) End Try End Sub Public ReadOnly Property FileInfo() As [FileInfo] Get Return _DllInfo End Get End Property Public Function GetControlsByType(ByVal FindType As Type) As List(Of Control) GetControlsByType = New List(Of Control) For Each Objeto As PropertyInfo In _ObjectType.GetProperties Try If Objeto.PropertyType.Name = FindType.Name Then GetControlsByType.Add(CType(Objeto.GetValue(_ObjectInstance, New Object() {}), Control)) Else Continue For End If Catch Continue For End Try Next End Function Public Function GetControls() As List(Of Control) GetControls = New List(Of Control) For Each Objeto As PropertyInfo In _ObjectType.GetProperties Try GetControls.Add(CType(Objeto.GetValue(_ObjectInstance, New Object() {}), Control)) Catch Continue For End Try Next End Function #End Region #Region " Public Shared " Public Shared Function IsSmartDll(ByVal Path) As Boolean Try Dim Dll As Assembly = Assembly.LoadFile(Path) Return Dll.GetType(New FileInfo(Path).Name.Split(CChar("."))(0) & ".Plugin") IsNot Nothing Catch Return False End Try End Function #End Region End Class
Pueden decir que creen ustedes que hace falta, dudas, criticas o correcciones de errorres o recomendaciones de mejores practicas Notas:- Para que serviria llamar Subs y Funciones de un plugin?
|
|
|
377
|
Programación / .NET (C#, VB.NET, ASP) / Re: como puedo ponerle licencia o contraseña a mi programa en vb 2008
|
en: 21 Julio 2010, 15:00 pm
|
Está fue una clase hecha por mí para hacer versiones de prueba con solo editar algunos valores y modificar los detalles a tu gusto estarías bien a mi me parece super comoda xD aqui está el fuente: :http://www.speedyshare.com/files/23462745/Trialer.rar Bueno trabaja con el registro de windows guardando datos cifrados como fecha de inicio, días que dura la prueba, fecha final, esta registrado? y cosas por el estilo yo la única recomendación que te hago es que le agreges AccesControl Deny a la llave del registro cuando la dejes de usar para así protegerla. Este es más o menos un ejemplo de su uso en Form_Load: Try ''///INICIALIZAMOS LA VERSION TRIAL CON ID 1555\\\'' Dim mTrial As Trial = New Trial(1555, 5, Now) If Not mTrial.IsStarted Then mTrial.StartTrial() Else mTrial = Trial.FromId(1555) End If If mTrial.IsEnded Then Messagebox.Show("Se acabo la versión de Prueba!!!") End End If If Not mTrial.IsRegistered Then Messagebox.Show("Recuerde que no está registrado le quedan " & mTrial.AvailableDays.ToString & " días") End If Catch ex As Exception If ex.Message.Contains("fecha") Then MessageBox.Show("La fecha del sistema no es correcta, por favor verifiquela.", "Hora/Fecha Incorrecta (Error #001)", MessageBoxButtons.OK, MessageBoxIcon.Error) End End If MessageBox.Show("Imposible leer Licencia, información corrupta o incorrecta." & vbNewLine & ex.Message, "Licencia Inválida (Error #002)", MessageBoxButtons.OK, MessageBoxIcon.Error) End End Try
Bueno revisa tu la clase para que veas como funciona xD tambien te recomiendo un servidor ftp, o una base de datos que guarde las versiones de prueba otorgadas a tal forma que despues de acaba no se puede "reiniciar" otra version de prueba.
|
|
|
379
|
Programación / .NET (C#, VB.NET, ASP) / Re: Problema con Back Color/Ground
|
en: 17 Julio 2010, 03:33 am
|
Me explicare mejor con nombres pero ya lo solucione.
Tenía un Form1 al que le coloque Form1.BackColor = White y BackGroundImage una imagen cualquiera que no ocupaba todo el Form, en tiempo de diseño se veia la Imagen del BackGroundImagen y la parte que no cubria en color White como se debería ver pero al compilar, la imagen en BackGroundImagen no se veía sino solamente el BackColor.
|
|
|
380
|
Programación / .NET (C#, VB.NET, ASP) / Re: Problema con Back Color/Ground
|
en: 16 Julio 2010, 20:24 pm
|
Cree un nuevo proyecto y pasee todos los controles y todo las configuraciones al nuevo y se soluciono, ya BackGroundImage se ve por encíma de BackColor pero igualmente aquí queda entonces un error del Visual Basic ya que no tiene otra explicación...
|
|
|
|
|
|
|