txt - rutas en c++




¿Cómo obtengo la ruta de datos de la aplicación en Windows usando C++? (2)

Solo para complementar la respuesta de interjay.

  1. Tuve que incluir shlobj.h para usar SHGetFolderPath .

  2. A menudo es posible que necesite leer un archivo desde appdata, para hacer esto necesita usar la función shlwapi.h ( shlwapi.h es necesario para esto).

#include <shlwapi.h>
#pragma comment(lib,"shlwapi.lib")
#include "shlobj.h"

TCHAR szPath[MAX_PATH];
// Get path for each computer, non-user specific and non-roaming data.
if ( SUCCEEDED( SHGetFolderPath( NULL, CSIDL_COMMON_APPDATA, NULL, 0, szPath ) ) )
{
    // Append product-specific path
    PathAppend( szPath, _T("\\My Company\\My Product\\1.0\\") );
}

Vea here para más detalles.

Miré por todo el internet y no parece haber una solución decente que pudiera encontrar. Quiero poder programar en C ++ obtener la ruta "% ALLUSERSPROFILE% \ Application Data" que el explorador puede traducir en una ruta real.

¿Puedo hacer esto sin confiar en el código de terceros?


También puedes leer el valor del registro.

ruta = HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Explorer \ Shell Carpetas

key = Common AppData





application-data