Programación General > Visual Basic 6.0 e inferiores

 Instalacion Segura Igual A Office

(1/2) > >>

_EL_DJ_LU:
Hola como les decia en mensajes anteriores... estoy a punto de vender mi programa... bueno mejor dicho instalacines de mi programa...

Bueno lo que queria sabes es como puedo hacer que mi programa despues de instalado solo funcione en esa maquina...osea si copian la carpeta de mi programa a otra PCB que esta no funcione en dicha segunda PCB... De la misma forma que pasa con Office... por que cuando lo instalas en un PcA... y luego copias solo la carpeta a otra PcB  .. en esta PcB no funciona... sale un mensaje de error que dice:

"El sistema operativo no esta configurado para ejecutar esta aplicacion"

Bueno quiero que algo parecido pase con mi programa... por que yo vendere el programa  y ire a instalar maquina por maquina... es decir no les vendere el instalador.... bueno esto para que no me pirateen el programa..... se que sera un poco dificil... pero que me de el tiempo suficiente para recuperar un poco de dinero ..... jejeje

Muchas gracias por su ayuda amigos de SOLOCODIGO... gracias a usteds pude terminar mi programa... jeje ;)

DJ

RadicalEd:
TIENES MUCHAS PERO MUCHAS, MUCHAS.
DIJE MUCHAS :blink:
OPCIONES.
1.) UTILIZA EL REGISTRO PARA GUARDAR VALORES EN ESTA MAQUINA.
2.) UTILIZA dll EN LA PCA, PARA QUE SOLO FUNCIONE EN ESA.
3.) UTILIZA ARCHIVOS QUE LO PRIMERO QUE VA HACER TU PROGRAMA ES LEERLOS SINO ESTAN EN LA PCA, TONCES NO SIRVE
4.) UTILIZA UN PRIMER EJECUTABLE PARA QUE GUARDE TODOS LOS VALORES DE ESTOS ARCHIVOS

Y SI NO?
SORRY MAN  ;)

Cyclop:
Lo que puedes hacer es crear archivos sentinelas, y cada vez que entres a tu programa buscar esos archivos si no lo encuentra es porque copio tu programa en otra pc, pero el problema es que se puede monitorear con otro tipo de aplicacion y asi copiarian ese archivo que esta en la maquina original.

Otra opcion es que tu al instalar el programa en la pc de tu cliente corras un programa aparte para que te copie la serial del disco duro en la parte final de tu programa exe encriptado si es posible, cada vez que entres a tu programa comparar la serial almacenada en tu programa con la del HDD.

Suerte

Cyclop

_EL_DJ_LU:
Justo habia escuchado algo de eso... de copiar la serie.. ya sea de procesador o del disco duro...

Serias tan amable de decirme como hago eso...??'

y a que te refieres con eso de poner en la parte final de mi exe... podrias explicarme eso plz...

Muchas gracias amigos...

DJ

Cyclop:
A ver si me dejo explicar bien

Esto va en el programa Parchador


--- Código: Text ---Private Declare Function GetVolumeInformation& Lib "kernel32" Alias "GetVolumeInformationA" (ByVal lpRootPathName As String, ByVal pVolumeNameBuffer As String, ByVal nVolumeNameSize As Long, lpVolumeSerialNumber As Long, lpMaximumComponentLength As Long, lpFileSystemFlags As Long, ByVal lpFileSystemNameBuffer As String, ByVal nFileSystemNameSize As Long) Private Sub cmdParche_Click()  Dim cad1 As String * 255  Dim cad2 As String * 255  Dim numSerie As Long  Dim longitud As Long  Dim flag As Long  unidad = "C:\"  Call GetVolumeInformation(unidad, cad1, 255, numSerie, longitud,flag, cad2,255)  numSerie = Trim(Replace(numSerie, Chr(0), ""))  Open "Programa.Exe" For Binary As #1  sId = Space(2)  Get #1, LOF(1)-2, sId  If sId <> "id" Then     numSerie = Trim(numserie)     sBuffer$ = numSerie + Chr(Len(numSerie)) + "id"     Put #1, LOF(1) + 1, sBuffer$   Else     MsgBox "La aplicacion ya fue parchada"  Endif  Close #1End Sub  
Esto va en tu Aplicacion de Venta

--- Código: Text ---Private Sub Form_Load()  Dim cad1 As String * 255  Dim cad2 As String * 255  Dim numSerie As Long  Dim longitud As Long  Dim flag As Long  unidad = "C:\"  Call GetVolumeInformation(unidad, cad1, 255, numSerie, longitud,flag, cad2,255)  numSerie = Trim(Replace(numSerie, Chr(0), ""))  Open "Programa.Exe" For Binary As #1  sSerie = ""  sId = Space(2)  Get #1, LOF(1)-2, sId  If sId = "id" Then     sLen = Space(1)     Get #1, LOF(1)-3, sLen     nLen = Asc(sLen)      sSerie = Space(nLen)     Get #1, LOF(1)-(nLen + 3), sSerie  Endif  Close #1  If sSerie = numSerie Then     ' Es correcto la copia   Else     MsgBox "Copia no valida ... por favor cosulte con su proveedor de sistema juasss XP"     End  EndIfEnd Sub  
Pd. Esta rutina ahun no fue testeado ... por lo que puede contener algun error de sintaxis o de logica de programacion.

Salu2

Cyclop

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa