Clipper On Line • Ver Tópico - Bloqueio Online

Bloqueio Online

Projeto Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

 

Re: Bloqueio Online

Mensagempor rochinha » 23 Mar 2010 16:02

Amiguinho,

Passe uma borracha em tudo e use o seguinte:
function main()
    local cURL := "http://www.5volution.com.br/revisao.txt"
    local oHyperlink

    oHyperlink := TOLEAuto():New( "Microsoft.XmlHttp" )
    oHyperlink:Open( "GET", cURL, .F. )
    oHyperlink:Send( "" )
    cResponseText := oHyperlink:ResponseText
    oHyperlink:end()
    ? cResponseText


Caso seu Harbour/xHarbour não tenha TOLEAuto():New() use CreateObject(). Procure exemplos referentes.

Após compilar e rodar diga-me o que apareceu.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4548
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 808 vezes
Mens.Curtidas: 246 vezes

Re: Bloqueio Online

Mensagempor fladimir » 23 Mar 2010 18:18

Bom vamos lá....

Passei uma borracha no Teste.PRG e coloquei conforme o codigo postado pelo colega...

Após isto compilei e não apresentou nenhum erro de compilação

Ao executar apresentou a seguinte mensagem:

┌───────────────────────────────────────────────────────┐
│ Error Microsoft.XmlHttp/3  DISP_E_MEMBERNOTFOUND: END │
│                     Arguments: ()                     │
│                                                       │
│                         Quit                          │
└───────────────────────────────────────────────────────┘


Apos dar um ENTER no QUIT apareceu:

C:\teste>TESTE

Error Microsoft.XmlHttp/3  DISP_E_MEMBERNOTFOUND: END Arguments: ()

Error at ...: TOLEAUTO:END(0) in Module: source\rtl\win32ole.prg
Called from : MAIN(9) in Module: TESTE.PRG

c:\teste>


Acredito q agora foi, só não entendi direito a mensagem de erro....

Grato e Sucesso!!! :)Pos
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:

“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”
.


Até 2017    Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL


Novos Projetos:

   Desktop Visual           Windev Desktop
   Celular Android/iOS   Windev Mobile
   WEB                            Windev Web


Sejamos gratos a Deus.
Avatar de usuário

fladimir
Colaborador

Colaborador
 
Mensagens: 2436
Data de registro: 15 Nov 2006 19:21
Curtiu: 28 vezes
Mens.Curtidas: 157 vezes

Re: Bloqueio Online

Mensagempor marcos.gurupi » 24 Mar 2010 00:18

Caro, deixa eu explicar como uso. Quando o usuario acessa pela primeira vez no dia o sistema e tendo internet ativa o sistema vai ateh o meu servidor mysql e verifica a data do banco de dados e assume como a data do dia, isso eh claro para q nenhum engracadinho fique voltando a data, depois ele vai ateh o bando de dados mysql pesquisando pelo cnpj e verifica tb a data do reset retornando a mesma quando n for igual a q estava cadastrada, sendo assim eu posso bloqueiar ou liberar qualquer cliente q tenha internet daqui do meu note. Foi a forma mais facil de fazer, sem usar ftp ou http. Obrigado.

Marcos Roberto.
Marcos Roberto
NetService Software
marcos.gurupi
Usuário Nível 4

Usuário Nível 4
 
Mensagens: 930
Data de registro: 06 Jul 2004 11:53
Cidade/Estado: Gurupi-TO
Curtiu: 0 vez
Mens.Curtidas: 6 vezes

Re: Bloqueio Online

Mensagempor rochinha » 24 Mar 2010 07:40

Amiguinho,

Voce precisará atualizar o XML em sua máquina, geralmente nossas máquinas possuem os arquivos msxml3.dll, msxml4.dll, etc que nos permitem interagir com o objetos de acesso ao protocolo XML.

http://www.microsoft.com/downloads/deta ... laylang=en

Neste link voce pode baixar e atualizar estes módulos em sua máquina.

A intenção é auxiliá-lo a baixar um arquivo da internet e posteriormente verificar e manusear seu conteudo.

Vamos tentando.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4548
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 808 vezes
Mens.Curtidas: 246 vezes

Re: Bloqueio Online

Mensagempor fladimir » 24 Mar 2010 08:16

Marcos obrigado pela colaboração....

Rochinha, eu baixei atualizei e rodei o Teste.EXE e apresentou o mesmo erro, o q pode ainda estar acontecendo... ? Vou testar depois em outro computador e depois posto os resultados pra ver se tb ocorre, mas antes vou instalar a versao mais recente do MSXML.

Obrigado

Sucesso!!!
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:

“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”
.


Até 2017    Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL


Novos Projetos:

   Desktop Visual           Windev Desktop
   Celular Android/iOS   Windev Mobile
   WEB                            Windev Web


Sejamos gratos a Deus.
Avatar de usuário

fladimir
Colaborador

Colaborador
 
Mensagens: 2436
Data de registro: 15 Nov 2006 19:21
Curtiu: 28 vezes
Mens.Curtidas: 157 vezes

Re: Bloqueio Online

Mensagempor rochinha » 24 Mar 2010 12:46

Amiguinho,

Em minha máquina também tenho instalado o SOAP Toolkit 3 talvez seja o caso de voce instalá-lo.

Em todo caso caso consiga compilar normalmente e executá-lo voce obterá como resposta duas linhas de texto, Revisao e Release.

Como voce usa xHarbour pode tentar usar a TUrl(). Só não posto algum exemplo pois não encontro o famigerado. Mas com a TUrl() que é mais compativel com sua versão voce consiga o mesmo.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4548
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 808 vezes
Mens.Curtidas: 246 vezes

Re: Bloqueio Online

Mensagempor rochinha » 24 Mar 2010 18:08

Amiguinhos,

Recebi de um companheiro um exemplo usando a TIP.LIB para xHarbour:
Function Teste_rochinha()

   oHttp:= TIpClientHttp():new( "http://www.5volution.com.br/revisao.txt" )
   // Connect to the HTTP server
   If .NOT. oHttp:open()
      ? "Connection error:", oHttp:lastErrorMessage()
      QUIT
   EndIf

   cHtml   := oHttp:readAll()
   oHttp:close()

   ? "Teste Rochinha.","","O Resultado é : " + cHtml

Return NIL


Fiz uma pequenina alteração para ficar mais puro.

Como me foi informado é necessário que esta biblioteca esteja posicionada antes das bibliotecas sqllib e fivewin caso seja usado, eu recomendo que posicione ela como a primeira de todas já que suas funções devem suprimir funções identicas em outras bibliotecas.

O nome Teste_rochinha() não foi colocado por mim, ok. Hehehe!

O desejo é que esta explanação funcione para podermos dar os passos vindouros.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4548
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 808 vezes
Mens.Curtidas: 246 vezes

Re: Bloqueio Online

Mensagempor fladimir » 24 Mar 2010 23:47

Rochinha e nobres colegas...

Fiz conforme a última postagem e deu certo, compilou sem erros e ao rodar tb deu certo...

Segue abaixo o resultado:

Teste Rochinha.  O Resultado é : Revisao: 220310
Release: 2500


E agora qual a idéia do colega em cima disto?

Grato e Sucesso!!!

:)Pos
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:

“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”
.


Até 2017    Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL


Novos Projetos:

   Desktop Visual           Windev Desktop
   Celular Android/iOS   Windev Mobile
   WEB                            Windev Web


Sejamos gratos a Deus.
Avatar de usuário

fladimir
Colaborador

Colaborador
 
Mensagens: 2436
Data de registro: 15 Nov 2006 19:21
Curtiu: 28 vezes
Mens.Curtidas: 157 vezes

Re: Bloqueio Online

Mensagempor rochinha » 25 Mar 2010 19:09

Amiguinho,

Com base nisto seria a hora de voce criar o arquivo com as informações de liberação onde contenha um identificador do cliente como CNPJ ou CPF e a critica de liberação

REGISTRADO: 00.000.000/0000-00
LIBERADO: S


Dentro de seu sistema voce deve possuir uma variavel que irá conter o CNPJ ou CPF do cliente que será usado para criticar os dados de seu arquivo de liberação.

Caso não esteja liberado, uma rotina deverá direcionar o cliente para uma tela que lhe informe o problema. ou até usando o método que postamos, baixe o boleto de pagamento e imprima o na impressora do cliente, ao invés de aguardar que o mesmo lhe contacte ou entre em seu site para fazer isto.

Como sua liberação é on-line, voce deve colocar os arquivo referentes a cada cliente no seu site a cada situação.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4548
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 808 vezes
Mens.Curtidas: 246 vezes

Re: Bloqueio Online

Mensagempor fladimir » 29 Mar 2010 19:56

Uma dúvida, suponhamos q tenha um cliente ótimo CNPJ X e o mesmo paga em dia e consequentemente o sistema estar sempre liberado, se alguém sem querer ou querendo cadastre um CNPJ igual em outro cliente o mesmo irá pegar a liberação do BOM cliente e ficar sempre liberado, digo isto pq em casos de clientes q utilizem o sistema para controle administrativo q não precisem de ECF ou q não emitam vendas, não tera necessidade de constar o CNPJ no documento, ou seja, poderá ser utilizada de má fé...

Meu raciocínio tem lógica? Estou meio paranóico? Existe alguma idéia para o caso, caso o mesmo tenha lógica ao ver dos colegas ?

Grato e Sucesso!!!

:)Pos
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:

“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”
.


Até 2017    Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL


Novos Projetos:

   Desktop Visual           Windev Desktop
   Celular Android/iOS   Windev Mobile
   WEB                            Windev Web


Sejamos gratos a Deus.
Avatar de usuário

fladimir
Colaborador

Colaborador
 
Mensagens: 2436
Data de registro: 15 Nov 2006 19:21
Curtiu: 28 vezes
Mens.Curtidas: 157 vezes

Re: Bloqueio Online

Mensagempor rochinha » 30 Mar 2010 04:22

Amiguinho,

O arquivo que estará na internet deverá ter o CNPJ como nome e extensão .TXT.

Seu sistema deverá saber qual arquivo pesquisar através do uso do CNPJ gravado em algum arquivo de configuração de seu sistema.

O arquivo de configuração de seu sistema terá: CNPJ, razão social, etc.

O arquivo que esta na internet com a liberação/travamento terá dentro dele as variaveis com CNPJ, Razão e Liberação.

Caso o cliente descubra o CNPJ de outro cliente seu e queira usar o mesmo para isto, o seu sistema deverá criatica se CNPJ e Razão social são os mesmos, senão não libera.

Para que não aconteça, problemas, principalmente com acentuação, grave e critique as informações sempre em maiusculas e sem acentos.

Se quizer dar mais segurança, grave as informações criptografadas e acrescente uma variável com senha.

Esta senha voce envia por email, e ela será exclusiva do cliente.

Ao verificar o registro o cliente deverá ser indagado desta senha.

Resumindo:
CNPJ
Razão Social
Liberação
Senha

Serão suas variáveis e voce criptografa, salva no arquivo, sobe pra internet e em seu sistema voce baixa o arquivo, descriptografa as variáveis e critica as mesmas.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4548
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 808 vezes
Mens.Curtidas: 246 vezes

Bloqueio Online

Mensagempor juniorcamilo » 01 Nov 2018 14:41

Boa tarde !!1
amigos estava vendo a respeito desse tópico!!
como faz para enviar um arquivo para o ftp?(pois aki diz o dwload!!)
Avatar de usuário

juniorcamilo
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 343
Data de registro: 10 Nov 2006 08:12
Cidade/Estado: Pará
Curtiu: 29 vezes
Mens.Curtidas: 2 vezes

Bloqueio Online

Mensagempor rochinha » 02 Nov 2018 02:37

Amiguinhos,

Mais ou menos assim:
/*
*
* Geração de arquivos cm conteúdos e envio para pasta FTP online
*
*/
#define CRLF chr(13)+chr(10)

function main
  //
  Request DBFCDX
  RddRegister('DBFCDX',1)
  RddSetDefault('DBFCDX')
  Request OrdKeyNo
  Request OrdKeyCount
  set date brit
  //
  cRC :=       [] + strtran(dtoc(date()),"/","") + [-] + strzero(nRevisao,5) + [] + CRLF
  errhandle = fcreate( "revisao.txt" )
  fwrite( errhandle, cRC )
  fclose( errhandle )
  //
  errhandle = fcreate( "revisao.scr" )
  fwrite( errhandle, cRC )
  fclose( errhandle )
  //
  REV_EnviarFTP() 
  return .t.

function REV_EnviarFTP() /* ****** ////// OK ////// ****** */
  LOCAL WSHShell
  LOCAL intWindowStyle := 2, bWaitOnRun := .t.
  //
  cSHFTPServerName     := "158.269.44.202" // "ftp.blablabla.com.br"
  cSHServerFolder      := "downloads"
  cSHFTPLoginID        := "usuario@blablabla.com.br"
  cSHFTPPassword       := "abc@987"
  cSHLocalFolder       := ".\"
  //
  cSTRFile :=            [strFTPServerName   = "] + cSHFTPServerName + ["] + CRLF
  cSTRFile := cSTRFile + [strFTPServerFolder = "] + cSHServerFolder + ["] + CRLF
  cSTRFile := cSTRFile + [strLoginID         = "] + cSHFTPLoginID + ["] + CRLF
  cSTRFile := cSTRFile + [strPassword        = "] + cSHFTPPassword + ["] + CRLF
  cSTRFile := cSTRFile + [strFile2PutGet     = "revisao.txt"] + CRLF
  cSTRFile := cSTRFile + [strFile2PutGet2    = "revisao.scr"] + CRLF
  cSTRFile := cSTRFile + [strLocalFolderName = "] + cSHLocalFolder + ["] + CRLF
  cSTRFile := cSTRFile + [strFTPScriptFileName = strLocalFolderName & "\revisao.ftp"] + CRLF
  cSTRFile := cSTRFile + [Set objFSO = CreateObject("Scripting.FileSystemObject")] + CRLF
  cSTRFile := cSTRFile + [If (objFSO.FileExists(strFTPScriptFileName)) Then] + CRLF
  cSTRFile := cSTRFile + [   objFSO.DeleteFile (strFTPScriptFileName)] + CRLF
  cSTRFile := cSTRFile + [End If] + CRLF
  cSTRFile := cSTRFile + [Set objMyFile = objFSO.CreateTextFile(strFTPScriptFileName, True)] + CRLF
  cSTRFile := cSTRFile + [    objMyFile.WriteLine ("open " & strFTPServerName)] + CRLF
  cSTRFile := cSTRFile + [    objMyFile.WriteLine (strLoginID)] + CRLF
  cSTRFile := cSTRFile + [    objMyFile.WriteLine (strPassword)] + CRLF
  cSTRFile := cSTRFile + [    objMyFile.WriteLine ("cd " & strFTPServerFolder)] + CRLF
  cSTRFile := cSTRFile + [    objMyFile.WriteLine ("hash")] + CRLF
  cSTRFile := cSTRFile + [    objMyFile.WriteLine ("lcd " & strLocalFolderName)] + CRLF
  cSTRFile := cSTRFile + [    objMyFile.WriteLine ("put " & strFile2PutGet)] + CRLF
  cSTRFile := cSTRFile + [    objMyFile.WriteLine ("put " & strFile2PutGet2)] + CRLF
  cSTRFile := cSTRFile + [    objMyFile.WriteLine ("bye")] + CRLF
  cSTRFile := cSTRFile + [    objMyFile.WriteLine ("quit")] + CRLF
  cSTRFile := cSTRFile + [    objMyFile.Close] + CRLF
  cSTRFile := cSTRFile + [Set objFSO = Nothing] + CRLF
  cSTRFile := cSTRFile + [Set objMyFile = Nothing] + CRLF
  cSTRFile := cSTRFile + [Set objShell = WScript.CreateObject( "WScript.Shell" )] + CRLF
  cSTRFile := cSTRFile + [objShell.Run "ftp -s:" & chr(34) & strFTPScriptFileName & chr(34),7] + CRLF
  cSTRFile := cSTRFile + [Set objShell = Nothing]
  errhandle := FCreate( "revisao.vbs" )
  FWrite( errhandle, cSTRFile )
  FClose( errhandle )
  RUNWScript( "revisao.vbs", 2 )
  return .t.

function RUNWScript( cScript, intWindowStyle, bWaitOnRun )
   *  0 Hide the window and activate another window.
   *  1 Activate and display the window. (restore size and position) Specify this flag when displaying a window for the first time.
   *  2 Activate & minimize.
   *  3 Activate & maximize.
   *  4 Restore. The active window remains active.
   *  5 Activate & Restore.
   *  6 Minimize & activate the next top-level window in the Z order.
   *  7 Minimize. The active window remains active.
   *  8 Display the window in its current state. The active window remains active.
   *  9 Restore & Activate. Specify this flag when restoring a minimized window.
   * 10 Sets the show-state based on the state of the program that started the application. Example
   LOCAL WSHShell
   DEFAULT intWindowStyle := 0, bWaitOnRun := .t.
   WSHShell := TOleAuto():New("wscript.shell")
   WSHShell:Run( cScript, intWindowStyle, bWaitOnRun )
   WSHShell:End()
   return .t.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4548
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 808 vezes
Mens.Curtidas: 246 vezes

Bloqueio Online

Mensagempor juniorcamilo » 05 Nov 2018 07:56

rochinha escreveu:Amiguinhos,

Mais ou menos assim:

function RUNWScript( cScript, intWindowStyle, bWaitOnRun )
  .......
   DEFAULT intWindowStyle := 0, bWaitOnRun := .t.
   .....
.

amigo quando compilo da o seguinte erro nessa linha:
E0030 Syntax error: syntax error at 'INTWINDOWSSTYLE'

Obs: xHb build 1.2.3 (Simplex) & BCC 5.82
Avatar de usuário

juniorcamilo
Usuário Nível 3

Usuário Nível 3
 
Mensagens: 343
Data de registro: 10 Nov 2006 08:12
Cidade/Estado: Pará
Curtiu: 29 vezes
Mens.Curtidas: 2 vezes

Bloqueio Online

Mensagempor rochinha » 05 Nov 2018 12:14

Amiguinhos,

E0030 Syntax error: syntax error at 'INTWINDOWSSTYLE'

No meu código não tem esta variável, revise o que você digitou.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para fivolution@hotmail.com. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Avatar de usuário

rochinha
Membro Master

Membro Master
 
Mensagens: 4548
Data de registro: 18 Ago 2003 20:43
Cidade/Estado: São Paulo - Brasil
Curtiu: 808 vezes
Mens.Curtidas: 246 vezes

Anterior Próximo



Retornar para Harbour

Quem está online

Usuários vendo este fórum: cleitonLC, Google [Bot] e 5 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro