1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

  2. Anuncie Aqui ! Entre em contato fdantas@4each.com.br

Como usar uma classe no progress

Discussão em 'Progress 4GL' iniciado por weiss_sbs, Setembro 19, 2018.

  1. weiss_sbs

    weiss_sbs Membro Participativo

    Oque é preciso para usar uma classe de uma dll (ThoughtWorks.QRCode.dll), preciso registra-la como fazer ?

    Exemplo:

    USING ThoughtWorks.QRCode.Codec.*.
    USING System.Drawing.*.

    Erro:
    Datatype inválido especificado: ThoughtWorks.QRCode.Codec.QRCodeEncoder. Especifique um datatype como 'caractere' ou o nome de uma classe. (5638)
    ** Nao entendi a linha 15. (196)
  2. bootstrapmaster

    bootstrapmaster Moderator Moderador Equipe de Suporte

    usar dll é uma coisa, instanciar classes (.cls) é outra bem diferente
    Marcos Frasson curtiu isso.
  3. rlfritz

    rlfritz Membro Ativo

    Bom dia!
    Eu utilizo alguns acessos a DLLs aqui.

    A DLL deve estar registrada no Windows .

    Segue um exemplo que utilizo para conectar a uma DLL que gerencia uma catraca.

    Código:
          
    create "Proveu.Comunicador.Comunicador" catraca.
    
          ASSIGN ret = catraca:Inicializar(OUTPUT arq-log).
    
          IF ret <> 0 THEN
              MESSAGE "Erro inicializar DLL comunicador"
                  VIEW-AS ALERT-BOX INFO BUTTONS OK.
    
          /* configuracao localização catraca */
          ASSIGN ret = catraca:ListaEquipamentos:AdicionarEquipamento("xxxxx","xxx.xxx.xxx.xxx","9999", OUTPUT i-index) .
    
          IF ret <> 0 THEN
              MESSAGE "Catraca nao localizada na rede"
                  VIEW-AS ALERT-BOX INFO BUTTONS OK.
    
          ASSIGN ret = catraca:ListaEquipamentos:ITEM(0):Conectar("xxxxxxxxxxx").
          IF ret <> 0 THEN
              MESSAGE "Erro conexao catraca"
                  VIEW-AS ALERT-BOX INFO BUTTONS OK.
    
          ASSIGN ret = catraca:ListaEquipamentos:ITEM(0):AtualizarEquipamento( INPUT "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", INPUT YES) .
          IF ret <> 0 THEN
              MESSAGE "Erro atualziação dados na catraca"
                  VIEW-AS ALERT-BOX INFO BUTTONS OK.
    
          ASSIGN ret = catraca:ListaEquipamentos:ITEM(0):Desconectar().
          IF ret <> 0 THEN
              MESSAGE "Erro desconexao catraca"
                  VIEW-AS ALERT-BOX INFO BUTTONS OK.
    
          RELEASE OBJECT catraca.
          catraca = ?.        
    
    
  4. bootstrapmaster

    bootstrapmaster Moderator Moderador Equipe de Suporte

    e tem aquele esquema de vc criar procedures também né ?
  5. fgodoi

    fgodoi Sem Pontuação

    vc precisa primeiro no assemblies.xml apontar essa dll (pode fazer no Assembly References que fica no menu tools do editor, e lá carregar essa dll e salvar o assemblies.xml), e depois no pf colocar o parametro apontando pra pasta que está o assemblies.xml.
    -assemblies C:\temp\dlls (diretório que está o xml)..

    isso acho que só funciona se for uma dll de api do .net e também nas versões mais recentes do progress (nao sei em qual ao certo)
  6. bootstrapmaster

    bootstrapmaster Moderator Moderador Equipe de Suporte

    isso eu achei interessante

Compartilhe esta Página