Hola bien mi idea no es hacer un trial ni demo solo nesecito una rutina simple que me detenga el programa sin mesagebox ni nada solo que no funcione ni haga nada al ejecutarlo,
Public Class Form1
Dim MIN As Integer = 0
Dim MAX As Integer = 99
Private Sub FrmLogin_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.ControlBox = False ' Elimino todos los controles del formulario
End Sub
Private Result1 As Int32(), Result2 As Int32(), Result3 As Int32()
Dim Sep As Object
Dim texbox7 As Object
Dim o As Object
Private _val As Object
Private _val1 As Integer
Dim TextBox As TextBox()
ReadOnly Property Num1 As Int32
Get
Return CInt(TextBox1.Text)
End Get
End Property
ReadOnly Property Num2 As Int32
Get
Return CInt(TextBox2.Text)
End Get
End Property
ReadOnly Property Num3 As Int32
Get
Return CInt(TextBox3.Text)
End Get
End Property
Private Property KeyAscii As Integer
Private Property Val(ByVal form1 As Form1, ByVal p2 As Object) As Object
Get
Return _val
End Get
Set(ByVal value As Object)
_val = value
End Set
End Property
Private Property Val(ByVal p1 As Object) As Integer
Get
Return _val1
End Get
Set(ByVal value As Integer)
_val1 = value
End Set
End Property
Private Sub Sumar(ByVal sender As Object, ByVal e As EventArgs) _
Handles Calcular.Click
Dim TextBoxCount As Short = -1
TextBox = {TextBox7, TextBox8, TextBox9, TextBox10, TextBox11, TextBox12, TextBox13, TextBox14, TextBox15, TextBox16, TextBox17, TextBox18, TextBox19, TextBox20, TextBox21, TextBox22, TextBox23, TextBox24, TextBox25, TextBox26, TextBox27, TextBox28, TextBox29, TextBox30, TextBox31, TextBox32, TextBox33, TextBox34, TextBox35, TextBox36, TextBox37, TextBox38, TextBox39, TextBox40, TextBox41, TextBox42, TextBox43, TextBox44, TextBox45, TextBox46, TextBox47, TextBox48, TextBox49, TextBox50, TextBox51, TextBox52, TextBox53, TextBox54, TextBox55, TextBox56, TextBox57, TextBox58, TextBox59, TextBox60}
Result1 = {Num1 + 1, Num1 + 20, Num1 + 30} _
.Distinct().ToArray ' Elimino duplicados
Result2 = {Num2 + 10, Num2 + 20, Num2 + 30} _
.Distinct().ToArray ' Elimino duplicados
Result3 = {Num3 + 10, Num3 + 20, Num3 + 30} _
.Distinct().ToArray ' Elimino duplicados,,,,,,,,,,,
Array.Sort(Result1) : Array.Sort(Result2) : Array.Sort(Result3) ' Ordeno los Items
' funcion
For Each Number As Int32 In Result1
TextBoxCount += 1
TextBox(TextBoxCount).Text = Number
Next
For Each Number As Int32 In Result2
TextBoxCount += 1
TextBox(TextBoxCount).Text = Number
Next
For Each Number As Int32 In Result3
TextBoxCount += 1
TextBox(TextBoxCount).Text = Number
Next
End Class
gracias de antemano
Luis
Cita de: luis456 en 30 Noviembre 2013, 12:31 PMnesecito una rutina simple que me detenga el programa sin mesagebox ni nada solo que no funcione ni haga nada al ejecutarlo,
¿Puedes especificar más detalládamente que es lo que necesitas?,
¿Como es una rutina que no haga NADA? xD,
muestras el código de "los números" pero a mi parecer no tiene nada que ver con la duda que has formulado.
saludos
Vale no explique bien jej Elektro
Cuando dije que no haga nada no es a la rutina sino al programa,la mayoría de las rutinas enseña un mensaje cuando se bloquea o caduca un programa. lo que necesito es que al llegar el tiempo o fecha de caducidad.simplemente no se ejecute el programa ni avise de nada y el código que puse es para mas o menos saber donde poner esa rutina
gracias :)
Luis
Cita de: luis456 en 1 Diciembre 2013, 11:45 AMla mayoría de las rutinas enseña un mensaje cuando se bloquea o caduca un programa. lo que necesito es que al llegar el tiempo o fecha de caducidad.simplemente no se ejecute el programa ni avise de nada
Y no puedes coger el ejemplo "Trial" que te mostré en otro post (o cualquier otro código trial en Google), y en lugar de mostrar un msgbox cuando la fecha caduca, eliminar esas órdenes y añadir otras para salir de la aplicación ¿?, vaya, si hasta eso tenemos que ayudar a hacer...
-> Application.Exit Method (http://msdn.microsoft.com/en-us/library/system.windows.forms.application.exit%28v=vs.110%29.aspx)
-> Environment.Exit Method (http://msdn.microsoft.com/en-us/library/system.environment.exit%28v=vs.110%29.aspx)
-> End Statement (http://msdn.microsoft.com/en-us/library/0wt87xba.aspx)
Cita de: EleKtro H@cker en 1 Diciembre 2013, 12:13 PM
Y no puedes coger el ejemplo "Trial" que te mostré en otro post (o cualquier otro código trial en Google), y en lugar de mostrar un msgbox cuando la fecha caduca, eliminar esas órdenes y añadir otras para salir de la aplicación ¿?, vaya, si hasta eso tenemos que ayudar a hacer...
-> Application.Exit Method (http://msdn.microsoft.com/en-us/library/system.windows.forms.application.exit%28v=vs.110%29.aspx)
-> Environment.Exit Method (http://msdn.microsoft.com/en-us/library/system.environment.exit%28v=vs.110%29.aspx)
-> End Statement (http://msdn.microsoft.com/en-us/library/0wt87xba.aspx)
Buaa no me regañes que estoy viejito jejeje como te he dicho esto del injerto vb con net todavia no logro cojerle la maña :) y esos ejemplos son alta costura para mi todavia y me gusta irle cojiendo el tranquillo con ejemplos mas modestos
Luis
¿Entonces lo solucionaste como te dije?
El código que te mostré tiene poco de "alta costura" xD, me basé en cosas my sencillas (fácilmente craqueables), aunque tampoco soy un genio de la ingeniería inversa, pero no merece la pena esforzarse mucho más para añadir protección trial "simple", el que pretenda usar la aplicación de manera "ilegal", y teniendo los conocimientos necesarios, siempre va a poder craquear el mecanismo de protección.
Si quieres añadir un sistema de protección trial "casi segura" deberías usar software dedicado a ello como es Crypto Licensing y además lo ofuscas.
Saludos
Vuelvo al ataque :)
Cuando digo código simple es mas o menos como este que de paso todavía no logro hacerlo funcionar jejeje bien mi idea es de entender como funciona y que sea crakeable no importa ya que este programa(el mio) no creo nadie lo compre jjejeje es solo por el placer de programar algo que funcione,este codigo lo conseguí trasteando por la red
a ver ahora como lo pongo a funcionar en el codigo de mi super programa
otra forma basica con un archivo:
Sub verificar()
Set fso = CreateObject("scripting.filesystemobject")
If fso.fileexists("c:\salida.txt") = True Then
checar
If a = 5 Then
MsgBox "Licencia terminada", 32, "Licencia caducada"
Set Form1 = Nothing
End
End If
ElseIf fso.fileexists("c:\salida.txt") = False Then
a = "1"
crearlo
End If
End Sub
Sub crearlo()
Open "c:\salida.txt" For Output As #1
Print #1, a
Close #1
SetAttr "c:\salida.txt", vbHidden
End Sub
Sub checar()
leerlo
a = a + 1
crearlo
End Sub
Sub leerlo()
SetAttr "c:\salida.txt", vbNormal
Dim foo As Integer
foo = FreeFile
Open "C:\salida.txt" For Input As #foo
a = Input(LOF(foo), #foo)
Close #foo
End Sub
Private Sub Form_Load()
verificar
End Sub
Luis
Elektro plis no me fustigues duro jejejej
Cita de: luis456 en 2 Diciembre 2013, 17:44 PMmi idea es de entender como funciona
En resumen, lo que hace el código es escribir el número de usos de la aplicación, en un archivo.
El método VERIFICAR comprueba si existe el archivo SALIDA, si no existe, crea el archivo SALIDA y escribe un 1 (primer uso),
si el archivo ya existe, se lee el último número que hay escrito al final del archivo y se le añade el siguiente número al final del archivo (Ejemplo: 4 >> 5),
si el número de usos llega a 5, se muestra el mensaje de caducidad.
Es obvio que ese tipo de protección es para un trial de usos (no un trial de tiempo).
Cita de: luis456 en 2 Diciembre 2013, 17:44 PMElektro plis no me fustigues duro jejejej
...
¡ Cuando dejes de usar marranadas de VB6 y VBS
! :xD, ese código "simple" está
VB6-estlizado de principio a fín.
EDITO:De hecho puedes reproducir lo que hace ese código en muchas menos lineas sin necesidad de intermediar con archivos de texto ni usar técnicas de VB6, usando
My.Settings:
private shadows sub Load() handles mybase.load
my.settings.Contador += 1
checar()
End sub
sub checar()
if my.settings.Contador => 5 then
msgbox("caducado")
' application.exit()
end if
end sub
Cita de: MSDNCreating Application Settings at Design Time
At design time, you can create application settings in two ways: by using the Settings page of the Project Designer, or by using the Properties window for a form or control, which allows you to bind a setting to a property.
http://msdn.microsoft.com/en-us/library/a65txexh.aspx
Saludos!
Me esperaba lo peor jejej Elektro
esto es chino o ruso jejej " my.settings.Contador :" error -->no es miembro de la aplicacion y segun he visto deberia de configurarlo en propiedades del proyecto ?
:huh:
Luis
Cita de: luis456 en 2 Diciembre 2013, 18:45 PMesto es chino o ruso jejej
Por ese motivo te he dejado una url junto a una cita donde explica como usar las user settings, en la página de las propiedades del proyecto, hay una pestaña que se llama "Settings", para crear settings.
(http://i.msdn.microsoft.com/dynimg/IC126736.gif)
Si creas una Setting llamada "Contador", pues luego puedes acceder a ella de la manera que te he mostrado:
My.Settings.Contador = X
Saludos!
Cita de: EleKtro H@cker en 2 Diciembre 2013, 20:22 PM
Por ese motivo te he dejado una url junto a una cita donde explica como usar las user settings, en la página de las propiedades del proyecto, hay una pestaña que se llama "Settings", para crear settings.
(http://i.msdn.microsoft.com/dynimg/IC126736.gif)
Si creas una Setting llamada "Contador", pues luego puedes acceder a ella de la manera que te he mostrado:
My.Settings.Contador]M = X
Saludos!
Ufff ahora cree el Settings.Contador en propiedades pero como uso el 2010 varia el nombre " extensiones My " bien no me da errores cuando en el apartado TIPO esta puesto esto "string " y en ambito " USUARIO " Pero no cuenta y el programa sigue ejecutandose ?????
Luis
YA YA LO LOGRE JEJEJEJ ERA PONER " INTEGER " UFFFF
Gracias Elektro
Luis