veaoum Posted December 3, 2012 at 10:26 PM Report #485624 Posted December 3, 2012 at 10:26 PM Boa noite! Estou a pensar fazer um programa com o objectivo de ganhar uns trocos mas para isso preciso de conseguir impedir que o mesmo programa seja instalado em mais que uma máquina, isso é possivel? Como posso fazer isso?
NunoDinis Posted December 4, 2012 at 08:40 AM Report #485657 Posted December 4, 2012 at 08:40 AM Não sei se é possível. O que podes fazer é criares tu uma chave de instalação (estática), e pedires antes de iniciar a primeira vez o programa.. Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro. ndsotware.org
fauxtix Posted December 4, 2012 at 01:07 PM Report #485673 Posted December 4, 2012 at 01:07 PM Não sei bem se é isto que pretendes, mas... aqui vai o link. http://carso-owen.blogspot.pt/2007/02/custom-serial-number-generator-in-c-net.html
veaoum Posted December 4, 2012 at 02:57 PM Author Report #485680 Posted December 4, 2012 at 02:57 PM Isso é um criador de chaves isso eu não me importo de fazer manualmente se necessário. Aquilo que eu tinha pensado era em colocar um campo na BD que bloquia-se o programa até ele fazer o registo. Com isto consigo que ele apenas instale numa maquina. Agora o mal é que desta forma se formatares o pc ele vai detectar como sendo uma segunda máquina e não vai deixar instalar. O macadrres de um pc é sempre o mesmo não é? Mesmo formatando-o......
NunoDinis Posted December 4, 2012 at 04:06 PM Report #485693 Posted December 4, 2012 at 04:06 PM Pois, não tinha pensado nessa situação. Mas podes ter tipo um painel de controlo para o utilizador, onde ele vai informar que vai formatar. Tens é que arranjar solução para não haver trafulhice. Outro campo deve resolver o problema... Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro. ndsotware.org
PMSF Posted December 4, 2012 at 04:13 PM Report #485694 Posted December 4, 2012 at 04:13 PM o que eu fiz foi uma chave de instalação. Sempre que a aplicação é instalada é gerado um codigo com base na data e hora da instalação e depois têm que me pedir um codigo de activação calculado pelo codigo anterior. a aplicação fica toda "trancada" excepto o formulário com o 1º codigo (para pedirem) e com o campo do codigo de ativação para ser preenchido. optei por esta forma. tenho uma base de dados pessoal com a informação dos clientes e se têm permissão para receberem o codigo de ativação. outra coisa que podes fazer é nas atualizações ires bloqueando as aplicações em que os códigos que supostamente já não existem...
veaoum Posted December 5, 2012 at 03:41 AM Author Report #485830 Posted December 5, 2012 at 03:41 AM Basicamente o que tu fazes é manter activo o ultimo instalado?! certo?
PMSF Posted December 5, 2012 at 01:10 PM Report #485857 Posted December 5, 2012 at 01:10 PM sim... quando alguem instala tem que fazer um pedido por email do codigo. neste email estão vários dados como nome, email, data de compra, etc ... não esquecer a chave de instalação assim posso cruzar informação sempre que é pedido um novo codigo ativação... se um destes pedidos coincidir com algum que já tenha, numa proxima atualização bloqueio a aplicação se nela estiver uma chave de instalação ou o codigo de activação (todos estes codigos são unicos) só são gerados uma vez, e não há possibilidade de serem repetidos. sei que é um pouco trabalhoso, até para manter, mas foi o metodo que encontrei. afinal existem programas de grandes editores que pedem sempre uma nova chave de instalação...
veaoum Posted December 5, 2012 at 04:18 PM Author Report #485886 Posted December 5, 2012 at 04:18 PM Sim Compreendo o teu ponto de vista e algo assim que estava a pensar em fazer. O único senão é que isso me ia obrigar a criar actualizações apenas para fazer isso. Não te acontece isso? Aquilo que me lembrei o numero de série de um pc é único ou pode haver mais que um com o mesmo número?
PMSF Posted December 5, 2012 at 04:59 PM Report #485894 Posted December 5, 2012 at 04:59 PM não faço atualizações expecificamente por isso. há sempre coisas a melhorar 🙂 outra opção era conseguires o numero série do pc. mas acho que não é possivel. podes ter o n.º da bord, do cpu ... mas mesmo isso se uma dessas peças forem substituidas por algum motivo o n.º vai alterar... e deixa de ser válido.
sergiotmcardoso Posted December 5, 2012 at 05:59 PM Report #485912 Posted December 5, 2012 at 05:59 PM Utiliza uma pen drive, les o nº de serie dela, depois o programa só funciona com a pendrive introduzida, assim já é garantido que só funciona com a pen
veaoum Posted December 10, 2012 at 09:20 AM Author Report #486418 Posted December 10, 2012 at 09:20 AM o que eu fiz foi uma chave de instalação. Sempre que a aplicação é instalada é gerado um codigo com base na data e hora da instalação e depois têm que me pedir um codigo de activação calculado pelo codigo anterior. a aplicação fica toda "trancada" excepto o formulário com o 1º codigo (para pedirem) e com o campo do codigo de ativação para ser preenchido. optei por esta forma. tenho uma base de dados pessoal com a informação dos clientes e se têm permissão para receberem o codigo de ativação. outra coisa que podes fazer é nas atualizações ires bloqueando as aplicações em que os códigos que supostamente já não existem... Andei a pensar na tua opção e fiquei com uma duvida se o código é gerado com base na hora e data de instalação todos eles terão números diferentes, ou seja tens que ter dados do utilizador para impedir que ele faça uma dupla instalação. Certo?
PMSF Posted December 10, 2012 at 01:54 PM Report #486435 Posted December 10, 2012 at 01:54 PM sim, mas a minha aplicação tem um proposito e utilizadores limitados ... basicamente funciona só dentro da empresa, e assim tentamos prevenir/bloquear a utilização fora das instalações.
sergiotmcardoso Posted December 14, 2012 at 12:32 AM Report #487048 Posted December 14, 2012 at 12:32 AM (edited) Se eles te dão os dados nada impede de te pedirem uma 2ª vez a chave, dizendo que formataram o PC... e tu vais fornecer nova chave que poderá estar instalada em outro Pc apenas com os mesmos dados do cliente... Uma forma de evitares que os dados ou a aplicação seja emprestada, será associares o programa a uma PENDRIVE, assim obrigas o utilizador a ter SEMPRE a pen introduzida. Desta forma se mais alguem kizer utilizar o programa, teriam que lhe dar a pen, e nao me parece que fossem andar a passar pens para aki ou para ali so a utilizar o programa em 2 lados As pens tb têm identificações unicas Edited December 14, 2012 at 12:32 AM by sergiotmcardoso
Hitmanpt Posted December 16, 2012 at 06:11 PM Report #487386 Posted December 16, 2012 at 06:11 PM (edited) Eu desenvolvi um sistema para este efeito basicamente é online cada utilizador tem uma conta e a chave é associada a uma conta (tipo steam) e depois cada utilizador "desassocia" a chave do computador msm que já tenha desinstalado o antigo. Outra ideia é fazer tipo Steam teres um client que é necessário para correres as tuas aplicações... E para esse client precisas também ter uma conta com a chave associada A 1ª maneira é melhor se quiseres uma chave por pc... A 2ª maneira é melhor se quiseres que o utilizador desde que tenha a chave ativa para a conta dele possa ter em múltiplos, penso que será mais vulnerável. Agora se quiseres posso dar-te uma pequena ajuda. O primeiro método é apenas necessário fazer login uma vez (para a ativação) dps o programa faz a verificação automaticamente. Em termos de segurança... já não vou divulgar... mas é seguro Edited December 16, 2012 at 06:14 PM by Windows Dragon
veaoum Posted December 17, 2012 at 05:51 PM Author Report #487525 Posted December 17, 2012 at 05:51 PM Se eles te dão os dados nada impede de te pedirem uma 2ª vez a chave, dizendo que formataram o PC... e tu vais fornecer nova chave que poderá estar instalada em outro Pc apenas com os mesmos dados do cliente... Uma forma de evitares que os dados ou a aplicação seja emprestada, será associares o programa a uma PENDRIVE, assim obrigas o utilizador a ter SEMPRE a pen introduzida. Desta forma se mais alguem kizer utilizar o programa, teriam que lhe dar a pen, e nao me parece que fossem andar a passar pens para aki ou para ali so a utilizar o programa em 2 lados As pens tb têm identificações unicas Juntamente com os dados do utilizador eu recebo 3 dados do computador, acho que isso me vai permitir controlar a questão do computador mas ainda vou formatar o meu para testar até que ponto isso funciona. Eu desenvolvi um sistema para este efeito basicamente é online cada utilizador tem uma conta e a chave é associada a uma conta (tipo steam) e depois cada utilizador "desassocia" a chave do computador msm que já tenha desinstalado o antigo. Outra ideia é fazer tipo Steam teres um client que é necessário para correres as tuas aplicações... E para esse client precisas também ter uma conta com a chave associada A 1ª maneira é melhor se quiseres uma chave por pc... A 2ª maneira é melhor se quiseres que o utilizador desde que tenha a chave ativa para a conta dele possa ter em múltiplos, penso que será mais vulnerável. Agora se quiseres posso dar-te uma pequena ajuda. O primeiro método é apenas necessário fazer login uma vez (para a ativação) dps o programa faz a verificação automaticamente. Em termos de segurança... já não vou divulgar... mas é seguro a ideia do primeiro sistema é a chave só é usada uma vez certo?
acao Posted December 17, 2012 at 07:20 PM Report #487543 Posted December 17, 2012 at 07:20 PM (edited) boas para contornares a situação da formatação do pc ou mesmo a troca de pc não será melhor limitares a licença por um curto periodo de tempo renovavel, assim encurtas o tempo de alguem utilizar uma chave adquirida elicitamente. cumps acao edit: propunha o seguinte: 1. criação de de um hash e inserir no hash outro codigo. exemplo: hash : 123456789 outro cod : acao hash final : 12a3c456ao789 2. tabela cod codid, codHash, utilizadoSimNao - o codHash seria um hash do outro cod que neste caso seria o hash de «acao» -tabela alimentada antes da distribuição da aplicação. 3. tabela activação codid, codHash, codHashFinal, datainstalaçao/activação 4. tabela pessoal para fornecer o hashfinal( guardada no cofre) codid, outrocod -outrocod seria igual a «acao» ou seja o codigo que serveria para fazer o hash de alimentação à tabela cod. a. funcionamento: 1. fornecer o hash final 2. ao activar verificar se o outro cod «acao»(dessimulado no hash final) passado por o hash existe e ainda não foi utilizado na tabela Cod. 3. se existir e ainda não foi utilizado gravar na tabela activação, cod hash, codhashfinal, datainstalaçao/activaçao e na tabela Cod asinalar que foi utilizado. 4. para entrar: verificar na tabela activação se o codHash coencide com o codactivação e a data é < que a data de hoje os meses desejados. é apenas uma ideia. cumps acao Edited December 19, 2012 at 06:48 PM by apocsantos
Hitmanpt Posted December 19, 2012 at 04:44 PM Report #487813 Posted December 19, 2012 at 04:44 PM Juntamente com os dados do utilizador eu recebo 3 dados do computador, acho que isso me vai permitir controlar a questão do computador mas ainda vou formatar o meu para testar até que ponto isso funciona. a ideia do primeiro sistema é a chave só é usada uma vez certo? De cada vez... para usares noutro pc tens que desinstalar do pc onde esta atualmente instalado Mas podes bolquear para ser apenas usada uma vez
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now