10/03/2010, 10:14
|
| | Fecha de Ingreso: marzo-2010
Mensajes: 3
Antigüedad: 14 años, 10 meses Puntos: 0 | |
Respuesta: Listado de archivos mil gracias, pero no la verdad no estoy utilizando GetOpenFileName, lo que quiero es obtener desde mi aplicativo la lista de los archivos que se hayan seleccionado en el explorador de windows, no en los dialogos de mi aplicativo.
Por ahi buscando logre enrrollar esto pillenlo.
private: System::Void RetSelectedFiles()
{
SHDocVw::ShellWindows^ mshell = gcnew SHDocVw::ShellWindows();
String^ fname = "";
String^ flist = "";
SHDocVw::InternetExplorer^ fie;
for each( fie in mshell)
{
fname = Path::GetFileNameWithoutExtension(fie->FullName)->ToLower();
if(fname=="explorer")
{
flist = "";
Shell32::ShellFolderView^ ffolder = static_cast <Shell32::ShellFolderView^>(fie->Document);
Shell32::FolderItems^ fitems = ffolder->SelectedItems();
for(int i = 0; i < fitems->Count; i++)
{
flist = flist + fitems->Item(i)->Path + "\n\r";
}
if(flist!="")
{
MessageBox::Show(flist);
}
}
}
}
para que funcione hay que agregar una referencia a shell32 y SHDocVw
y para el path "using namespace System::IO;"
La verdad no me gusto mucho pero funciona para lo que lo necesito, me da la lista de los archivos seleccionados en todas las ventanas de explorador de windows, ahi le intersecto los argumentos del app para saber en cual se seleccionaron por ultimo cuando se llamo mi app, desecho las demas ventanas y listo.
Última edición por paneilpa; 11/03/2010 a las 15:18 |