Programación General > Visual C++
Codigo Seleccion Archivo
spyfly:
Queremos abrir una ventana de dialogo para seleccionar un archivo, lo queremos hacer de una manera estandar y tipica. Hemos descubierto esto :
CFileDialog DlgGuardar(FALSE);
creemos que se puede hacer con esto pero no lo tenemos claro ¿alguien podria ayudarnos?¿existe un codigo tipico para hacer esto?.Un ejemplo nos vendria bién.
Un saludo. Gracias.
spyfly:
Hemos hecho esto y parece que funciona, pero nos queda por defecto la ruta donde selecionamos el archivo, y queremos que nos quede la que teniamos antes (donde esta el programa).
CString strRuta;
CFileDialog DlgAbrir(TRUE); // llama al constructor
// Definir los pares descripción|filtro
DlgAbrir.m_ofn.lpstrFilter = "Ficheros de experiencias (*.txt)\0*.txt\0Todos los ficheros (*.*)\0*.*\0";
// Definir el titulo
DlgAbrir.m_ofn.lpstrTitle = "Seleccionar Archivo a Borrar";
if ( DlgAbrir.DoModal() == IDOK )
{
// Visualizar el nombre del fichero en la caja de texto
strRuta = DlgAbrir.GetPathName();
}
inforsystem:
Hola.
Existe una funcion API que se llama GetCurrentPath.
Saludos.
spyfly:
Ya la hemos intentado usar pero no sabemos como funciona, ni los parametros que hay que pasar. ¿Alguien no hecha un mano?
Lo que nosotros queremos es seleccionar un archivo y meter la ruta de este en una cadena para que despues sea borrado, pero sin cambiar el directorio por defecto(Donde esta nuestro programa).
Un saludo. Gracias.
spyfly:
Al final hemos utilizado esto y parece que nos realiza lo que buscabamos. Gracias por las indicaciones. Saludos.
// TODO: Add your control notification handler code here
CString Ruta;
char RutaPpal[128];
FILE *papelera;
GetCurrentDirectory(128,RutaPpal);
CFileDialog DlgAbrir(TRUE); // llama al constructor
// Definir los pares descripción|filtro
DlgAbrir.m_ofn.lpstrFilter = "Ficheros de experiencias (*.txt)\0*.txt\0Todos los ficheros (*.*)\0*.*\0";
// Definir el titulo
DlgAbrir.m_ofn.lpstrTitle = "Seleccionar Archivo a Borrar";
if (DlgAbrir.DoModal()==IDOK)
{
// Visualizar el nombre del fichero en la caja de texto
Ruta = DlgAbrir.GetPathName();
}
SetCurrentDirectory(RutaPpal);
papelera=fopen("papelera.txt","a");
fprintf(papelera,"%s",Ruta);
fclose(papelera);
Navegación
[#] Página Siguiente
Ir a la versión completa