2010-03-21 6 views
2

특정 날짜에 배포 된 응용 프로그램을 파괴하는 데 사용할 수있는 방법이 있습니까? 설치 후 특정 날짜에 응용 프로그램을 파괴하도록 응용 프로그램을 주문하려면 어떻게합니까? PC1에 오늘 C# 응용 프로그램을 배포했다고 가정 해보십시오. 특정 날짜가 지나면 응용 프로그램이 자동으로 삭제되고 PC1에서 제거됩니다 (설치 폴더가 제거됨). 내가 어떻게 할 수 있니?. 이것이 가능하지 않다면 최소한 특정 날짜 이후에 사용자가 더 이상 사용하지 못하게하려면 어떻게해야합니까?C# 응용 프로그램이 특정 날짜에 자체 파괴됨

+0

사용자가 실수로 소프트웨어와 독립적으로 미래의 시스템 날짜를 일시적으로 설정할 수 있다는 점을 알고 있거나 자신의 소프트웨어를 자의적으로 파괴한다고 생각하는 경우 자기 파괴가 실제로 존재하지 않습니다. 예를 들어, 최근에 우연히 시스템 날짜를 미래의 날짜로 설정했는데, 이는 며칠 후 어느 미래의 요일인지를 확인하기 때문입니다. – user282727

답변

5

아마도 가장 쉬운 방법은 만료일을 안전하게 암호화하여 설정 파일 (또는 레지스트리)에 저장하는 것입니다. 시작할 때 만료일을 해독하고 현재 날짜와 비교합니다. 증거를 변경하려는 경우 응용 프로그램이 처음 설치되거나 마지막으로 실행 된 날짜/시간을 암호화 할 수도 있습니다 (응용 프로그램을 시작하기 전에 수동으로 조정되는 것처럼 날짜/시간이 바뀌지 않는지 확인)

자동으로 제거하는 것은 대단히 나쁜 생각입니다. 응용 프로그램이 만료되었다는 경고 만 표시하면 해결할 수 있습니다.

+2

+1 동의! 자동 제거 - 아니 그렇게 좋은 접근법; 대신 일부 앱 일시 중지 메시지로 앱을 사용 중지하고 고객이 애플리케이션 등록을 구매/연장 할 수있는 사이트에 URL을 제공하십시오. –

5

여기서 구현하고자하는 것에 대해 매우주의 깊게 생각해야합니다. 사용자가 허용하지 않은 사용자 시스템을 변경하면 웜 깡통이 열리게됩니다.

앱이 기능을 수행하는 것을 거부하려면 (즉, 불구가 될 수는 있지만) 앱을 자체 파괴하지 마세요.

관련 문제