substituir SWPRUNCMD do blinker?
Enviado: 28 Mar 2019 10:50
Bom dia, qual comando utilizo no harbour para substituir o comando swpruncmd do blinker?
é um comando copy do DOS
é um comando copy do DOS
Código: Selecionar todos
FUNC MyRun( cComando, lWait ) // executa programa externo
Local oShell, nRet, cMsg
lWait := If( Empty( lWait ), .F., lWait ) // Se .T. aguarda o programa fechar, se .F. não aguarda...
oShell := CreateObject( "WScript.Shell" )
nRet := oShell:Run( "%comspec% /c " + cComando, 0, lWait )
oShell := Nil
Return If( nRet = 0, .T., .F. )Código: Selecionar todos
FUNC MyOpenFile( cComando ) // abre arquivo externo reconhecido nas extensões do windows...
Local oShell, ret, cPath, cFile, nCursor:=SetCursor(0)
cPath := SubS( cComando, 1, RAt( "\", cComando ) )
cFile := SubS( cComando, RAt( "\", cComando ) + 1 )
nRet := Win_Open_File( cPath, cFile )
SetCursor( nCursor )
Return nRetCódigo: Selecionar todos
FUNCTION SwpRunCmd( cCommand, nMem, cRunPath, cTempPath )
HB_SYMBOL_UNUSED( nMem )
HB_SYMBOL_UNUSED( cRunPath )
HB_SYMBOL_UNUSED( cTempPath )
IF ! HB_ISSTRING( cCommand ) .OR. Empty( cCommand )
#if defined( __PLATFORM__UNIX )
cCommand := GetEnv( "SHELL" )
#else
cCommand := GetEnv( "COMSPEC" )
#endif
ENDIF
RETURN ( t_nErrorLevel := hb_run( cCommand ) ) != -1
É que a função SwpRunCmd(), abre uma janela preta (cmd) antes de executar o comando.Itamar M. Lins Jr. escreveu:Pode usar o mesmo comando.
Código: Selecionar todos
/*
Função em C# para abrir arquivos externos reconhecidos nas extensões do Windows.
Exemplo de Uso: WIN_OPEN_FILE( cPath, cFile )
*/
#pragma BEGINDUMP
#include "hbapi.h"
#include <windows.h>
HB_FUNC( WIN_OPEN_FILE )
{
HINSTANCE hInst;
LPCTSTR lpPath = (LPTSTR) hb_parc( 1 );
LPCTSTR lpHelpFile = (LPTSTR) hb_parc( 2 );
hInst = ShellExecute( 0, "open", lpHelpFile, 0, lpPath, SW_SHOW );
hb_retnl( (LONG) hInst );
return;
}
#pragma ENDDUMPvc colocou a opção -gui ? no .hbpJairo disse : É que a função SwpRunCmd(), abre uma janela preta (cmd) antes de executar o comando.
Sim, e também a função Wvt_SetGui( .t. ) no inicio da minha função Main. SwpRunCmd() usa Hb_Run() para executar o comando, ela abre o cmd.Nascimento escreveu:vc colocou a opção -gui ? no .hbp
Sim. Sugeri a MyRun() porque com ela pode-se usar qualquer comando de baixo nível sem abrir o cmd.JoséQuintas escreveu:Serve do Harbour: COPYFILE, hb_fCopy(), hb_vfCopy() ou outro que apareça ao digitar hbmk2 -find copy ?
Código: Selecionar todos
FileCopy( <cSourceFile>, <cTargetFile>, [<lBackup>] )Código: Selecionar todos
FRename( <cOldFile>, <cNewFile> )