Página 2 de 2

Sobre o xDev Studio

Enviado: 26 Mai 2021 18:54
por Itamar M. Lins Jr.
Olá!
Esse negócio de criar projeto na IDE pode ser perigoso.
O arquivo HBP vc cria na pasta que desejar. O projeto não está na IDE está em qualquer pasta.
A HBIDE aglutina na JANELA de projetos.

PNotepad não tem, e para mim isso é o mais importante. PNotepad está um pouco velho em relação a esses.

O resto até o KATE tem, qualquer editor moderno tem. O KATE incorpora o PLUGUIN do xHarbour.
Screenshot_20210526_184758.png
Saudações,
Itamar M. Lins Jr.

Sobre o xDev Studio

Enviado: 26 Mai 2021 19:04
por Itamar M. Lins Jr.
Olá!
Do que foi mostrado, PNotepad só não tem o debug.
Não tem nada. Baixe ele não mexa em nada e quero ver funcionar, abrir projeto, etc.
Tem DBU no seu PNotepad ?
Screenshot_20210526_190303.png
Precisa configurar tudo, na HBIDE vem pronto, na xEdit. E no VSCODE só um click puxa o pluguin do Harbour.

Saudações,
Itamar M. Lins Jr.

Sobre o xDev Studio

Enviado: 26 Mai 2021 21:03
por JoséQuintas
Itamar M. Lins Jr. escreveu:Tem DBU no seu PNotepad ?
Em nenhum lugar, nem no meu computador, nunca usei.
Mas se usasse, teria no PNotepad.

Sobre o xDev Studio

Enviado: 26 Mai 2021 21:33
por Itamar M. Lins Jr.
Olá!
teria no PNotepad.
Nossa! Isso que é ser poderoso... Não colocaram pq vc não usa, rsrsrs!

Saudações,
Itamar M. Lins Jr.

Sobre o xDev Studio

Enviado: 26 Mai 2021 22:51
por JoséQuintas
Itamar M. Lins Jr. escreveu:Nossa! Isso que é ser poderoso... Não colocaram pq vc não usa, rsrsrs!
Não.
Teria porque eu mesmo colocaria.
Como deve ter visto em mensagem anterior, é só adicionar.

Por enquanto tem:
- compilar
- formatar fonte
- exibir xml, apesar que não uso
- usar git pra atualização, apesar que esqueço
- help, apesar que não uso

Sobre o xDev Studio

Enviado: 29 Set 2023 18:30
por deividdjs
Pra quem ainda usa a IDE xDevStudio.

Script modificado para compilar com HARBOUR 3.0 ou SUPERIOR + BCC ou MINGW // IDE xDevStudio 7.0
GTWVG OU GTWVW

salvar o codigo abaixo com o nome "Harbour.xCompiler.prg" e sobreescrever o existente na pasta script da xDevStudio.

Código: Selecionar todos

/*
 * FOZ DO IGUAÇU - PR 29-09-23 @ 18:41
 * MODIFICADO POR DEIVID SOUZA
 * COMPILAR EM HARBOUR 3.0 OU SUPERIOR
 * BCC / MINGW
 * --------------------------------------------------
 * Harbour.xCompiler.prg / xDevStudio 7.0
 * -------------------------------------------------
 *
 * Arquivo contendo os comandos de Script para processamento de um projeto
 * Harbour modo CONSOLE com Borland BCC ou MinGW.
 */
#define CRLF Chr(13)+Chr(10)

function Prepare
   type := Project( 'TargetType' )
   
   if FileExists( 'harbour.exe', m_PreSetPath ) .or. ;
      FileExists( 'hb.exe', m_PreSetPath )
   else
      MsgError( 'O arquivo principal do compilador não existe!' )
      return .f.
   end
    
   if !FileExists( 'bcc32.exe', m_PreSetPath )
      MsgError( 'O arquivo requerido BCC32.EXE não foi localizado no sistema!' )
      return .f.
   end
    
   if !FileExists( 'hbmk2.exe', m_PreSetPath )
      MsgError( 'O arquivo requerido hbmk2.EXE não foi localizado no sistema!' )
      return .f.
   end

   /*
    * 30/9/2006 21:02:35
    * Aqui neste ponto setamos a variavel abaixo como SIM, indicando
    * que desejamos recompilar todo o projeto. Caso o valor dela seja .F.
    * a xDev irá compilar e linkar usando o padrao solicitado pelo 
    * programador que estiver usando a xDev.
    */
   m_bCompileAll := SameText( fForceCompileAll, 'sim' )
   return .t.
 
function UnPrepare
   return .t.
 
/*
 * Esta função é executada, sempre que a xDev precisar compilar um arquivo .PRG
 */ 
function OnFilePRG
 * Preparamos a linha de comando
   cmd := 'harbour.exe'
   cmd += ' ' + m_sFileName + ''
   cmd += ' /q /o' + m_sOutPut
   cmd += ' ' + fFlagA + ' ' + fFlagL + ' ' + fFlagM + ' ' + ; 
          ' ' + fFlagN + ' ' + fFlagZ  + ' ' + fFlagP
 
   
 * Verificarmos se ele nao quer desativar o DEBUG para este módulo em específico!
 * para isto usamos a funcao SameText() que compara os 2 argumentos ignorando 
 * letras maiúsculas / minúsculas.
 * 
 
   if !SameText( PRG_DisableDebug, 'sim' )
      cmd += ' ' + fFlagB 
   end
*/
     
 * Verificamos as diretrivas #DEFINEs e adicionamos ela na linha de comando!
   aDefs := Alltrim(CustomDefines) + ',' + ;   // Diretrivas gerais do projeto
            Alltrim(PRG_Defines)   + ',' + ;   // Diretrivas específicas deste arquivo
            Alltrim(m_PreSetDefines)           // Estas sao as diretrivas do PROJETO e do PRESET atual  
            

   aDefs := StrTran(aDefs, ';', ',' )
   aDefs := StrTran(aDefs, ' ', '' )
   aDefs := ListAsArray( aDefs, ',')
   cmd   := alltrim( cmd )

   for i := 0 to len( aDefs )
       if !Empty(aDefs[i])
         cmd += ' /D' + aDefs[i]
       end
   next
   
 * Isto inclui os #DEFINEs de cada versao do xHb e do HB específicas
   if !Empty(m_PresetConstants)  
      cmd  += m_PresetConstants
   end

 * Colocamos os outros parametros (se houver)
   cmd := alltrim( cmd )
   cmd += " " + fMiscOption1           
   
 * Executamos o comando específico para compilar 
   runBat(cmd)      
   
   bOk := (ErrorLevel() == 0)
   return bOk
     
/*
 * Esta função é executada, sempre que a xDev precisar compilar um arquivo .C/.CPP
 */ 
function OnFileC
   
 * Preparamos a linha de comando
   aLines := {}
		 
 * Verificamos as diretrivas #DEFINEs e adicionamos ela na linha de comando!
   aDefs := Alltrim(CustomDefines) + ',' + ;   // Diretrivas gerais do projeto
            Alltrim(PRG_Defines)   + ',' + ;   // Diretrivas específicas deste arquivo
            Alltrim(m_PreSetDefines)           // Estas sao as diretrivas do PROJETO e do PRESET atual  
                        
   aDefs := StrTran(aDefs, ';', ',' )
   aDefs := StrTran(aDefs, ' ', '' )
   aDefs := ListAsArray( aDefs, ',')
   cmd   := alltrim( cmd )

   for i := 0 to len( aDefs )
       if !Empty(aDefs[i])
          AAdd( aLines, '-D' + aDefs[i])
       end
   next

 * Isto inclui os #DEFINEs de cada versao do xHb e do HB específicas
   if !Empty(m_PresetConstants)  
      AAdd( aLines, m_PresetConstants)
   end
	
 * Ajustamos os outros parametros
   AAdd( aLines, '-I' + m_PreSetInclude)
   AAdd( aLines, '-L' + m_PreSetLib + ';' +m_PreSetObj)
   AAdd( aLines, '-o' + m_sOutPut)
   AAdd( aLines, m_sFileName )
/**
 * Salvamos e executamos o comando específico para compilar
   MemoWrite( 'b32.bc', aLines )
   runBat('BCC32 -M -c @B32.BC')
*/ 
   bOk := (ErrorLevel() == 0)
   return bOk
 /*
 
/*
 * Esta função é executada, sempre que a xDev precisar compilar um arquivo .RC
 */ 
function OnFileRC  
   cmd := FindFile( 'brc32.exe', m_PreSetPath )
   
   if Empty(cmd)
      cmd := FindFile( 'porc.exe', m_PreSetPath )
   end
   
   if Empty(cmd)
      MsgError( 'Erro ao localizar o aplicativo necessário para compilar o módulo "'+m_sFileName+'"!' )
      return .f.
   end   
   
 * Preparamos a linha de comando
   cmd += ' -r -fo"' + m_sOutPut + '" -i"' + m_PreSetInclude +'"'

 * Verificamos as diretrivas #DEFINEs e adicionamos ela na linha de comando!
   aDefs := Alltrim(CustomDefines) + ',' + ;   // Diretrivas gerais do projeto
            Alltrim(PRG_Defines)   + ',' + ;   // Diretrivas específicas deste arquivo
            Alltrim(m_PreSetDefines)           // Estas sao as diretrivas do PROJETO e do PRESET atual  
            
   aDefs := StrTran(aDefs, ';', ',' )
   aDefs := StrTran(aDefs, ' ', '' )
   aDefs := ListAsArray( aDefs, ',')
   cmd   := alltrim( cmd )

   for i := 0 to len( aDefs )
       if !Empty(aDefs[i])
          cmd += ' -D' + aDefs[i]
       end
   next
   
  * Isto inclui os #DEFINEs de cada versao do xHb e do HB específicas
   if !Empty(m_PresetConstants)  
      cmd  += m_PresetConstants
   end

 * Ajustamos os outros parametros
   cmd += ' "' + m_sFileName + '"'  

 * Executamos o comando específico para compilar
   run (cmd)      
   
   bOk := (ErrorLevel() == 0)
   return bOk


function OnBuild      
return BuildExe()

function BuildExe()   
 * Preparamos a linha de comando
   aLines  := {}

   AAdd( aLines, '-I' + m_PreSetInclude)
   AAdd( aLines, '-L' + m_PreSetLib + ';' +m_PreSetObj)
   AAdd( aLines, '-o' + m_sOutPut)

   aFiles := Project( "*.PRG" )

   t := Len( aFiles )
    
   FOR i := 1 TO t
       IF i == t 
          AADD( aLines, aFiles[i] )
       ELSE
          AADD( aLines, aFiles[i] )
       End
   End
   
    //################################
    //## AJUSTE DE COMPILAÇÃO        #
    //################################

    AADD( aLines, '-workdir=./obj' )  // PASTA OBJ
    AADD( aLines, '-inc' )            // COMPILA SOMENTE .PRG MODIFICADOS
    AADD( aLines, '-dhb' )
    
    if !SameText( PRG_DisableDebug, 'sim' )
       AADD( aLines, '-b' )           // DEBUG
       AADD( aLines, '-debug' )
	 endif   

    //################################
    //## TENTA COMPACTAR EXECUTAVEL  #
    //################################

    if SameText( fUseUPX, 'Sim' )
       AADD( aLines, '-compr=max' )
    end   

    //################################
    //## EXECUTA PROGRAMA            #
    //################################

    AADD( aLines, '-run' )
   
   /*
    * Chamamos a função que pega o nome das libs corretas
    */
   DefaultLibs()

   /*
    * Põe os RCs project files 
    */
   aFiles := Project( "*.RES" )

   FOR i := 1 TO Len( aFiles )
       IF i == t 
          AADD( aLines, aFiles[i] )
       else
          AADD( aLines, aFiles[i] )
       End
   End
  	  
   MemoWrite( 'b32.hbp', aLines )
   runBat('hbmk2 @B32.HBP')
       
   bOk := (ErrorLevel() == 0)

function DefaultLibs()
   Libs := .T.
   
   //ADICIONA LIBS 
   
   AADD( aLines, 'xhb.hbc' )
   AADD( aLines, 'hbct.hbc' )
   AADD( aLines, 'hbhpdf.hbc' )

   /*
    * Incluimos os arquivos .LIB no projeto. O segundo parametro .T. indica que
    * queremos TODOS os arquivos ATÉ MESMO AQUELES MARCADOS com a opção 
    * compile=FALSE, por isto usamos um parametro .T. 
    *
    * Quando omitimos o segundo parametro, ele puxará apenas os arquivos
    * marcados como COMPILE=TRUE e desde modo, irá ignorar os arquivos .LIB
    */
   aFiles := Project( "*.LIB" )

   FOR i := 1 TO Len( aFiles )
       AADD( aLines, '"'+aFiles[i]+'" +  ' )
   End         
 
   if SameText( CustomLIBs, 'Sim')
      /*
       * Se ele tem a lista de LIBs personalizada, caimos fora!
       */
   else
      if SameText( fFlagB, '/B' )
         AADD( aLines, '-b' )
      end
            
      if SameText( fUseHBDLL, 'sim' )
         ***
      elseif !Libs
         ***
      else
         
         if SameText( fGUILib, 'Gtwvg' )
            *
            AADD( aLines, 'gtwvg.hbc' )

         elseif SameText( fGUILib, 'Gtwvw' )
            *
            AADD( aLines, 'gtwvw.hbc' )
            *
         end         
      end
   end   
   return
Forte Abraço!

Sobre o xDev Studio

Enviado: 02 Out 2023 07:24
por Mario Mesquita
Bom dia, pessoal.

Onde pega essa versão 7.0 do xDev Studio? Eu uso a 0.70... acho ele um bom editor de programas. Se tem versão mais nova, queria ver como é.

Saudações,
Mario.

Sobre o xDev Studio

Enviado: 02 Out 2023 08:43
por deividdjs
Mario Mesquita escreveu:Bom dia, pessoal.

Onde pega essa versão 7.0 do xDev Studio? Eu uso a 0.70... acho ele um bom editor de programas. Se tem versão mais nova, queria ver como é.

Saudações,
Mario.
Desculpa amigo .. eu escrevi 7.0 porém é 0.70 ... vc usa a ultima versão está correto !

Abraço!