evertonlb Posted October 6, 2016 Report Share Posted October 6, 2016 Boa tarde. Fiz uma pequena funçãozinha para fazer um backup dos DBF. Logo que executa ela dá um Error DOS 5, Acesso não permitido. Tirei todos os parâmetros de "somente leitura" tanto na pasta de destino quanto no arquivo em questão, mas continua dando o erro. Será que alguém tem alguma sugestão para solucionar este problema? cFileBackupKI := directory( _xPathBanc + "\*.MEM") * DBCloseAll() * if !empty( _xPathBackup ) * for x := 1 to len(cFileBackupKI) cFileName := cFileBackupKI[x, 1] // _xPathBanc + "\" + copy file ( alltrim( cFileName ) ) to ( alltrim( _xPathBackup ) ) next endif Quote Link to comment Share on other sites More sharing options...
aferra Posted October 6, 2016 Report Share Posted October 6, 2016 se for windows 10 abra a propriedades -> compatibilidade -> e marque executar como administrador. Quote Link to comment Share on other sites More sharing options...
evertonlb Posted October 6, 2016 Author Report Share Posted October 6, 2016 se for windows 10 abra a propriedades -> compatibilidade -> e marque executar como administrador. Obrigado aferra, mas ainda não deu certo. Quote Link to comment Share on other sites More sharing options...
kapiaba Posted October 6, 2016 Report Share Posted October 6, 2016 //////////////////////////////////////////////////////////////////////////// // // Autor: Jose Carlos da Rocha // Data: 07/05/2015 // Email: irochinha@hotmail.com.br // Linguagem: xBase / Fivewin // Plataformas: DOS, Windows // Requerimentos: Harbour/xHarbour // ///////////////////////////////////////////////////////////////////////////// #include "FiveWin.ch" FUNCTION MAIN() ? ; 'ShellExecute( "CMD.EXE", "RUNAS", "", "C:\WINDOWS\SYSTEM32", 1 )',,; ShellExecute( "CMD.EXE", "RUNAS", "", "C:\WINDOWS\SYSTEM32", 1 ) RETURN .T. #pragma BEGINDUMP #include <windows.h> #include <hbapi.h> // ShellExecute( cFile, cOperation, cParams, cDir, nFlag ) HB_FUNC( SHELLEXECUTE ) { hb_retnl( (LONG) ShellExecute( GetActiveWindow(), ISNIL(2) ? NULL : (LPCSTR) hb_parc(2), (LPCSTR) hb_parc(1), ISNIL(3) ? NULL : (LPCSTR) hb_parc(3), ISNIL(4) ? "C:\\" : (LPCSTR) hb_parc(4), ISNIL(5) ? 1 : hb_parni(5) ) ) ; } #pragma ENDDUMP Quote Link to comment Share on other sites More sharing options...
evertonlb Posted October 6, 2016 Author Report Share Posted October 6, 2016 Kapiaba compilo esse código e uso no lugar do Copy File? Att. Everton Quote Link to comment Share on other sites More sharing options...
kapiaba Posted October 6, 2016 Report Share Posted October 6, 2016 Teste o código primeiro para entende-lo, depois de entender, adapte ao seu gosto e modo de programar. Quote Link to comment Share on other sites More sharing options...
Theotokos Posted October 6, 2016 Report Share Posted October 6, 2016 por acaso não esta sendo utilizado, ou seja, o arquivo em questão não esta aberto? pode ser isso? porque acesso negado pode ser na pasta onde vc esta copiando ou no arquivo que esta acessando,... Quote Link to comment Share on other sites More sharing options...
tiaoFW Posted October 7, 2016 Report Share Posted October 7, 2016 Bom dia Everton. O Copyfile exige que alem do caminho vc especifique o nome do arquivo a ser copiado. Veja o código: copy file ( alltrim( cFileName ) ) to ( alltrim( _xPathBackup ) ) A variavel _xPathBackup Pelo que percebi não contem o nome do arquivo apenas o caminho, então vc deveria colocar: _xPathBackup + alltrim( cFileName ) Ok? Aqui no meu sistema uso o comando do proprio Windows: Veja: copyfile(localexe+'SALC.BKK', localexe+'SALC.INI') Segue a declaração que vc deve colocar no prg principal. DLL32 FUNCTION COPYFILE( cExistingFileName AS LPSTR, cNewFileName AS LPSTR, lFailIfExists AS LONG ) AS BOOL; PASCAL FROM "CopyFileA" LIB "kernel32.dll" Att. Quote Link to comment Share on other sites More sharing options...
evertonlb Posted October 11, 2016 Author Report Share Posted October 11, 2016 Tião.. infelizmente usando a função do Windows não deu certo, o software compila mas não roda.. Ai usei o copy file colocando o nome de arquivo de destino e deu cartinho.. valeu cara, obrigado! Att. Everton Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.