Aquí hay algunos pensamientos relacionados con sus requisitos:
- 2) No requiere código en mi aplicación : esto indica que necesita obtener un contenedor para envolver su ejecutable en otro ejecutable. Esto, en mi opinión, facilitará que un cracker se desenvuelva y obtenga el ejecutable original. También podría activar el software de detección de virus, ya que un contenedor esencialmente inicia otro programa desde dentro de un programa.
- Tener dos versiones de un programa (combinación de 1), 2) y 3), una versión de demostración y una versión de producción, significa que si alguien obtiene la versión de producción, es libre de redistribuirla. Aunque legal, pero todavía está desprotegido
- 4) Sobrevivir a la desinstalación : para mí, esto indica que usted, ya sea en su contenedor o en su módulo de código de licencia, necesita crear algo como la identificación de la computadora de Application Trial Maker. De lo contrario, un contenedor puro tendría que depender de algo como la fecha de instalación/creación o la fecha de descarga (donde creas una versión cada noche solo válida para un rango de fechas determinado (pero luego podrían descargar una nueva versión de demostración...))
Basándome en esto y en algunas lecturas sobre Application Trial Maker, sugeriría lo siguiente para obtener una solución adecuada:
- Use Application Trial Maker, pero envuélvalo para que el único cambio que necesite en su código sea una simple inclusión en su método principal. Después de hacer esto una vez, debería ser fácil de incluir en cualquier proyecto tuyo.
- Si insiste en crear una versión de demostración y una versión de producción, haga dos versiones de lanzamiento, en las que utilice condiciones para incluir o no la modulación de la licencia.
- Si construye dos versiones, puede optar por completar omitiendo el código de licencia.
- Si incluye el código de licencia, intente hacerlo un poco más automático. Una opción podría ser agregar un botón a la ventana de licencia que active una solicitud HTTP con la ID de la computadora que podría devolver el código de licencia. Esto, en combinación con la opción de comprar su programa (donde tienen que incluir la identificación de la computadora), podría reducir la molestia. Sin embargo, podría / debería tener la opción de vincular correos electrónicos con una identificación de computadora a este sistema, pero esto también se puede hacer de manera automática.
En otras palabras, creo que el software que solicita, un software contenedor, no existe, y debe reconsiderar sus requisitos en cuanto a lo que realmente le importa y lo que puede hacer que funcione para usted a un nivel competente de seguridad. Según su propia información, parece que ajustar la configuración de Application Trial Maker y posiblemente crear un pequeño sistema en torno al manejo del código de licencia sería una buena solución.