Licenças offline

Bom dia pessoal!!

Hoje vou postar um pequeno tutorial de como fazer para usar os meus programas offline.

Agora, por que usar offline?

Bom, se você estiver no meio do mato, por exemplo.... Ou estiver em São Luis - MA, onde a internet é, bem, a internet de São Luis....

O procedimento é simples. Mas alguns cuidados devem ser tomados:

Primeiro, leia a ajuda do programa, seja dos pacotes (que estão em promoção!!!) seja do gerenciador de licenças, TBN2NET.UTILS.EXE.

Agora, que você já leu a ajuda, vamos resumir:

Abra o gerenciador de licenças. O o executável que está na pasta do programa:

Este programa está presente nos seguintes pacotes de programa:


C3DRENESG4, para dimensionamento de redes de drenagem e esgoto urbanos
TBN2C3D, coleção de plugins para o Civil 3D
TBN2CAD, coleção de plugins para AutoCAD
C3DMEMO, para criar memoriais descritivos e tabelas de loteamentos

DDM, para cálculo de distribuição de terraplenagem

No exemplo, estou usando o TBN2C3D.

Clique o executável para que ele abra e veja em sua tela a coluna "Exportar":



Nesta coluna, clique para MARCAR a licença do programa.
Note que cada plugin tem seu próprio número de licença. Nesta tela você poderá ver o drive (C:/, D:/...) associado à licença o qual está servindo de hardlock da mesma.

Após "ticar" o item, aparece esta tela:


Note que a coluna Versão será preenchida com os números das versões do AutoCAD em que sua licença será válida, Use esta tabela para referência:

ReleaseVersão
16.02000
16.12002
16.22004
16.32005
16.42006
17.02007
17.12008
17.22009
18.02010
18.12011
18.22012
19.02013
19.12014
20.02015
20.12016
21.02017

Perceba que a coluna "Número de Série" é preenchida com o número de série do drive (C:/, D:/...) de onde o programa está instalado.

Ao emprestar a licença, ela deixa de ser validada no servidor e passa a ser validada OFFLINE, por um prazo de até 60 dias.

Ao validar, o programa verifica se o prazo ainda não encerrou, se o número de série do drive onde o programa está corresponde o número de série de quando você emprestou a licença, se a versão usada do AutoCAD (veja a tabela acima) está na lista de versões habilitadas.

Caso a verificação offline falhar, o programa irá tentar validar no servidor e este fará as mesmas verificações, porém, se o prazo em que a licença está emprestada ainda não terminou, você receberá uma mensagem de erro, informando que a licença está emprestada e não pode ser validada.

Posso dar "N" motivos para isso ser assim.... Tem muito "espertinho" no mundo...

Em fim.. Após certificar que a licença está emprestada, Clique o botão "Exportar Licenças":

Será pedido o nome do arquivo a ser salvo:

Você pode salvar esse arquivo na mesma pasta do programa, até sugiro que faça isso. Porque exportar:

As informações das licenças dos plugins são salvas no registro do Windows:


Agora imagine a situação: Você associou as suas licenças a um PENDRIVE, para poder usar em mais de um computador.

E agora, EMPRESTOU a licença e a licença está armazenada no Registro do Windows do computador de onde fez este procedimento.

E possivelmente está usando agora o plugin num computador DIFERENTE.

Vai acontecer que neste outro computador, não há informações de licenças, muito menos de licenças emprestadas então o programa irá tentar validar a licença ONLINE.

Mesmo que você saiba qual é o seu número de licença e informe ao programa, poderá receber uma mensagem de erro dizendo que a licença está EMPRESTADA E NÃO PODE SER VALIDADA.

Percebe o por quê desse erro?

Não?

Você emprestou a licença no computador "A" e as informações dela estão SOMENTE em "A". Agora, tenta usar o plugin no computador "B", que não sabe nada sobre as licenças, então dá o erro. Você informa o número, mas a informação de que a licença está emprestada ficou em "A" então aparece o erro de licença emprestada e não valida.

Como resolve isso?

Volte ao computador "A" e abra o "tbn2net.utils.exe", o gerenciador de licença.

Localiza a licença e desmarca a opção emprestar e clica novamente, para marcar. Isso irá forçar o programa a emprestar a licença novamente e a informação de que a licença está efetivamente emprestada será salva no registro do windows:


Agora, clica o botão "Exportar Licenças":



E salve onde o programa está. Assim, ao usar o plugin no computador "B" que não sabe nada sobre as suas licenças e receber a tela de registro, você irá clicar o botão "Importar":


E irá selecionar o arquivo exportado das suas licenças:


Isso irá importar as informações salvas no arquivo externo para o registro do Windows e agora o gerenciador de licenças saberá o número da licença, o serial de onde o programa está instalado e as informações de que ela está emprestada.

Parece difícil? Sim, parece.

Mas é necessário...

Como eu disse, tá cheio de espertinho no mundo e meu servidor recebe tentativas de fraude o tempo todo...

Últimas observações:

O tbn2net.utils.exe está nos 5 pacotes de programas mencionados lá no início do texto. Agora, qual deles devo abrir? Se você mantiver sempre a última versão dos programas, eles serão o mesmo. Senão, escolha o que tiver data mais atual.

Posso emprestar licenças demonstrativas? Pode, até o prazo de validade das mesmas. Então se você alugou o programa por 1 mês, poderá emprestar a licença por este período ou o que restar dele.

Quanto tempo dura o empréstimo das licenças definitivas? 60 dias.
Posso emprestar novamente antes do período terminar? Sim.

Se eu emprestar a licença, poderei atualizar ou mudar o serial associado? Não, pois receberá o erro de licença emprestada. Neste caso, entre em contato comigo para desbloquear estas opções (contatos no início da página. do lado esquerdo)

É isso.

Dúvidas?

Tabelas explodidas no AutoCAD

Fala pessoal, como que está a expectativa para o Autodesk University 2016??

Já conferiu a promoção da minha página?? Anida não? Então corre!!

Bom, mas este post não é pra falar disso. É para voltar um pouco às origens!!! Isso mesmo!!! Vamos falar de Visual Lisp galera!!!

O problema de hoje é o seguinte: Tabelas no CAD que estão explodidas e nós precisamos extrair os dados dali.

Já deu pra perceber que isso pode ser bem chato, não é?

Eu mesmo tive esse problema esta semana e, como eu amaldiçoei o bocó desenhista que fez isso, hehehe:

Aqui, um exemplo de tabela explodida, no AutoCAD.

Bem simples, só pra efeito de mostrar a "lispezinha" abaixo.

Veja como fica o resultado:

Da hora, né? Agora, dá pra copiar e colar no M$ Excel, ou até mesmo colar no CAD como uma tabela de verdade!!!

Bom, mas e a lisp? Veja:

;pesquisa no google:
(vl-load-com)

;Dwg2Html - plugin para exportar tabelas explodidas para html


(defun c:Dwg2Html (/ linhasVerticais linhasHoriz linhas ent p1 p2 counter
            nLin html nCol x1 x2 y1 y2 tmp ssTxt file opcao
)


  

  ;inicializa as listas de X e Y
  (setq linhasVerticais nil
    linhasHoriz nil)

  ;pede a seleção das linhas que formam a tabela
  ;precisa ser linha continua, para definir o espaço de cada célula
  (prompt "\nSelecione as linhas que desenham as tabelas")
  (
setq    linhas (ssget '((0 . "*LINE"))))
  (
if (not linhas) (exit))

  ;pode ter mais de um texto na celula. Eles serão concatenados
  ;com espaço ou quebras
  (initget "Q E" 0)
  (
setq opcao
   (getkword "\nSelecione o tipo de quebra manual [Quebra, Espaço] <Quebra>")
    opcao (if (= "E" opcao) " " "<br>"))

  ;pede onde salvar o arquivo html
  (setq    file   (getfiled "Exportar tabela" "" "html" 1))
  (
if (not file) (exit))  

  ;classifica as linhas em: horizontais e verticais
  (repeat (sslength linhas)
    (
setq ent (ssname linhas 0)
      p1  (vlax-curve-getstartpoint ent)
      p2  (vlax-curve-getendpoint ent))

    (
if (equal (car p1) (car p2) 0.0001)
      (
if (not (member (car p1) linhasVerticais))
    (
setq linhasVerticais (cons (car p1) linhasVerticais)))
       (
if (not (member (cadr p1) linhasHoriz))
     (
setq linhasHoriz (cons (cadr p1) linhasHoriz))))
    (
ssdel ent linhas))

  ;ordena a lista das linhas verticais pelo X crescente e
  ;as linhas horizontais pelo Y decrescente
  (setq linhasVerticais (vl-sort linhasVerticais '<)
    linhasHoriz     (vl-sort linhasHoriz '>))

  

  ;calcula o canto superior esquerdo e inferior direito:
  (setq p1 (list (car linhasVerticais) (car linhasHoriz))
    p2 (list (last linhasVerticais) (last linhasHoriz)))

  ;zoom window na tabela, para a seleção dos textos funcionar
  (vla-zoomwindow (vlax-get-acad-object)
    (
vlax-3d-point p1)  (vlax-3d-point p2))

  ;inicia o cabeçalho do html
  (setq html (strcat "<html>
    <head>
    <meta http-equiv='Content-Type;X-UA-Compatible'
          content='text/html;IE=9' charset='ISO-8859-1'>
    <title>Dwg2Html: "
 (vl-filename-base file) "</title>
    <style>
     body  { font-family: arial; }
     p     { font-weight: bold; }
     table { border-collapse: collapse; width: 100%;}
     td    { border: 1px solid black; text-align:center; }
     a     { text-decoration: none; }
    </style>
    </head>
    <body>
    <p>
    Visite: <a href='https://tbn2net.com'>TBN2NET,
    o melhor site de plug-ins para o AutoCAD!!!</a></p>
    <p>Arquivo: "
 (vl-string-translate "\\" "/" file) "</p>
    <br>
    <table>
    "
))

  ;repita para todas as linhas horizontais
  (setq nLin 0
    counter 0)
  (
repeat (1- (length linhasHoriz))
    ;calcula os limites em Y da linha
    (setq y1   (nth nLin linhasHoriz)
      nLin (1+ nLin)
      y2   (nth nLin linhasHoriz)
      nCol 0)

    ;inicia o html da linha ('tr')
    (setq html (strcat html "<tr>"))

    ;repita para todas as colunas da linha
    (repeat (1- (length linhasVerticais))

      ;calcula os limites em X da coluna
      (setq x1    (nth nCol linhasVerticais)
        nCol  (1+ nCol)
        x2    (nth nCol linhasVerticais))

      ;tenta selecionar os textos dentro dos limites da célula
      (setq ssTxt (ssget "C" (list x1 y1)
             (
list x2 y2)
             '((0 . "*TEXT"))))

      ;se encontrou
      (if ssTxt
      (progn
      ;liste-os:
      (setq tmp nil)
      (
repeat (sslength ssTxt)
        (
setq ent (ssname ssTxt 0)
          tmp (cons (list (cdr (assoc 10 (entget ent)))
                  (
cdr (assoc 1 (entget ent))))
                tmp))
        (
ssdel ent ssTxt))

      ;classifique pelo Y decrescente e concatende,
      ;colocando quebra de linha ('br')
      (setq tmp (vl-sort tmp  '(lambda (a b)
                     (
> (cadar a) (cadar b))))
          tmp (apply 'strcat
             (mapcar '(lambda (a)
                    (
strcat (cadr a) opcao))
                 tmp))
          tmp (vl-string-trim opcao tmp)))
    (
setq tmp   " "))

      


      ;adiciona uma celula no html
      (setq html (strcat html "<td>" tmp "</td>")))

    ;finaliza o html da linha
    (Setq counter (1+ counter)
      html (strcat html "</tr>")))

  ;finaliza o html da tabela
  (Setq html (strcat html "</table>"))

  ;finaliza o html
  (setq html (strcat html "</body></html>"))

  ;salva o arquivo
  (setq tmp (open file "w"))
  (
write-line html tmp)
  (
close tmp)

  ;abre o arquivo com o navegador padrão
  (browser file)

  (
princ)
  )

(
prompt "
Dwg2Html carregado com sucesso!!
Visite: https://tbn2net.com/DWG2HTML
Autor: Neyton Luiz Dalle Molle
Engenheiro Civil
WhatsApp: +55 98 99995 3538
"
)

(
princ)


A ideia é simples, as linhas horizontais e verticais da tabela delimitam espaços para as células. Então basta iterar um looping que procura textos nestes espaços e monta uma tabela em HTML.

Note que o programa não "entende" células mescladas, mas isso não é o problema, ok?

Se gostou do programa, que tal baixar ele pronto pra usar ??


Promoção para o Autodesk University 2016!!!

E então, vai participar do Autodesk University deste ano?
Ops, ainda não sabe do que se trata? Então visite a página:


Como é de costume já, o site TBN2NET está todo em promoção, daquelas, básicas, tipo 50% de desconto!!!



São diversos programas, por exemplo:
C3DRENESG4, para dimensionamento de redes de drenagem e esgoto urbanos
TBN2C3D, coleção de plugins para o Civil 3D
TBN2CAD, coleção de plugins para AutoCAD
C3DMEMO, para criar memoriais descritivos e tabelas de loteamentos
TBN2VLX, coletânea de lisps para AutoCAD e Civil 3D
DDM, para cálculo de distribuição de terraplenagem
EXPGE, para importar/exportar DWG para KML (Google Earth)

Para ganhar o desconto, é simples, basta entrar em contato comigo no meu Whatsapp/Telegram: +55 98 99995 3538

Compartilhe!!!
Compartilhe!!!


Promoção válida até o dia 18/09/2016
Aplicável aos plugins individuais.
O preços dos plugins estão em suas respectivas páginas e estão sem desconto.
Entre em contato para conseguir o desconto!!