View Full Version : [JAVA/Prompt DOS]avviare il dialog property in windows
Frank1962
25-02-2009, 18:14
Salve ....stò cercando un modo di avviare dal prompt del dos il dialog delle proprietà dove windows visualizza le informazioni dei file o cartelle, tanto per intenderci, questo:
http://www.primarysourcelearning.org/handbook/part2/ch4/img/ie_properties_dialog_box.gif
per esempio con il comando "start C:\" mi apre l'explorer del risorse del computer ma non riesco a trovare nessuna opzione che mi permetta di aprire il dialog box sopracitato! :(
Ho scritto questo post anche nella sezione windows programmi ma, essendo che dovrei utilizzare tale comando nel Runtime.exec() del java, forse questa è la sezione + appropriata.
grazie in anticipo per l'aiuto
ciao!
Allora mi pare che explorer.exe abbia dei parametri che una volta aperta la finestra consentono di selezionare il file che ti interessa, a quel punto potresti provare molto grezzamente ad emulare l'input mandando alla finestra i tasti ALT+INVIO.
Ripeto è una soluzione molto grezza (ma facile), sicuramente si può fare di meglio usando le API di Windows (decisamente meno facile).
Frank1962
26-02-2009, 00:30
intanto ti ringrazio per la risposta ...la tua idea non è male però io stavo cercando qualche cosa che utilizzi le proprietà del rundll32 che come puoi vedere su questo sito (http://www.walkernews.net/2007/06/06/quick-start-to-rundll32-syntax-and-example/), per esempio, permette di fare più o meno tutto ....però ancora non ho trovato la chiamata esatta per quello che voglio fare :(
Qui c'è il codice C:
#include <shellapi.h>
void ShowProperties(const TCHAR *szFileName)
{
int iRet = ShellExecute(0, "properties", szFileName, 0, 0, SW_SHOWNORMAL);
if(iRet <= 32)
MessageBox(0, "FileNotFound", "Alert!", MB_OK);
}
Se trovi come si esegue ShellExecute da rundll32 allora sei a cavallo.
In VBS:
sPath = "c:\some path\some file.foo"
set shellApp = createobject("shell.application")
shellApp.namespace(0).parsename(sPath).invokeverb("P&roperties")
msgbox "ready...",vbsystemmodal
Potrebbe anche essere qualcosa di questo tipo:
rundll32.exe c:\WINDOWS\system32\shell32.dll,SHObjectProperties 0,2,percorso del file,0
Purtroppo non funziona. La funzione la trova...si tratta solo di trovare il modo giusto di passargli i parametri.
http://msdn.microsoft.com/en-us/library/bb762231.aspx
banryu79
26-02-2009, 14:00
Potresti anche wrappare il codice C postato da cionci con JNI.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.