Pués eso,
necesito copiar un archivo al escritorio de Windows y no se como se hace. Alguien lo ha hecho algbuna vez?
Gracias.
cUsuario:= GetEnv( "USERPROFILE" )
If Left(cUsuario,8)="C:\Users" //Si está en Inglés
cEscritorio:=cUsuario+"\desktop\ARCHIVO.lnk"
Else
cEscritorio:=cUsuario+"\escritorio\ARCHIVO.lnk"
Endif
COPY FILE C:\ARCHIVO.LNK TO (cEscritorio)
FiveWiDi wrote:Gracias a ambos,
Voy a ver como me lo monto.
#define CSIDL_PROGRAMS 0x0002 // Start Menu\Programs
#define CSIDL_DESKTOPDIRECTORY 0x0010 // <user name>\Desktop
Function Main()
Local cEscritorio
cEscritorio:= GETSPECIALFOLDER(CSIDL_DESKTOPDIRECTORY)
Alert(cEscritorio,{"Ok"})
Return cEscritorio
*---------------------------------------------------------------*
Function GETSPECIALFOLDER(nCSIDL) // Contributed By Ryszard Rylko
*---------------------------------------------------------------*
RETURN C_getspecialfolder(nCSIDL)
#pragma BEGINDUMP
#include <windows.h>
#include <shlobj.h>
#include "hbapi.h"
#include "hbapiitm.h"
HB_FUNC( C_GETSPECIALFOLDER ) // Contributed By Ryszard RyRko
{
char *lpBuffer = (char*) hb_xgrab( MAX_PATH+1);
LPITEMIDLIST pidlBrowse; // PIDL selected by user
SHGetSpecialFolderLocation(GetActiveWindow(), hb_parni(1), &pidlBrowse)
;
SHGetPathFromIDList(pidlBrowse, lpBuffer);
hb_retc(lpBuffer);
hb_xfree( lpBuffer);
}
#pragma ENDDUMP
pcordonet wrote:FiWidi;
Hola FiWidi,
Seguro que esta funció te lo soluciona.
- Code: Select all Expand view
#define CSIDL_PROGRAMS 0x0002 // Start Menu\Programs
#define CSIDL_DESKTOPDIRECTORY 0x0010 // <user name>\Desktop
Function Main()
Local cEscritorio
cEscritorio:= GETSPECIALFOLDER(CSIDL_DESKTOPDIRECTORY)
Alert(cEscritorio,{"Ok"})
Return cEscritorio
*---------------------------------------------------------------*
Function GETSPECIALFOLDER(nCSIDL) // Contributed By Ryszard Rylko
*---------------------------------------------------------------*
RETURN C_getspecialfolder(nCSIDL)
#pragma BEGINDUMP
#include <windows.h>
#include <shlobj.h>
#include "hbapi.h"
#include "hbapiitm.h"
HB_FUNC( C_GETSPECIALFOLDER ) // Contributed By Ryszard RyRko
{
char *lpBuffer = (char*) hb_xgrab( MAX_PATH+1);
LPITEMIDLIST pidlBrowse; // PIDL selected by user
SHGetSpecialFolderLocation(GetActiveWindow(), hb_parni(1), &pidlBrowse)
;
SHGetPathFromIDList(pidlBrowse, lpBuffer);
hb_retc(lpBuffer);
hb_xfree( lpBuffer);
}
#pragma ENDDUMP
Espero que te sirva.
Pere
Return to FiveWin para Harbour/xHarbour
Users browsing this forum: Google [Bot] and 114 guests