Zmienna systemowa zawierająca wybrany plik w explorer.exe

0

Muszę pobrać ścieżkę wybranego pliku w explorer.exe. Potrzebuję go z jakiejś zmiennej systemowej lub gdzieś, jak mogę czytać za pomocą aplikacji java.

night_angel90
źródło

Odpowiedzi:

0

Nie ma atrybutu poziomu systemowego, który pozwoli ci obserwować wybrany plik. istnieje kilka opcji, ale obie są dość duże objazdy.

najbardziej tradycyjnym podejściem jest wywołanie aplikacji java w danym oknie, za pomocą jakiegoś API, które pozwala na pobranie informacji o pliku w jakimś zdarzeniu. jFileChooser jest jednym z nich.

innym podejściem jest bezpośrednie wykorzystanie interfejsu API systemu Windows. trzeba przechwycić uchwyt okna instancji Eksploratora Windows i sprawdzić go za pomocą obiektu takiego jak ShellWindows. zobacz więcej informacji tutaj: http://blogs.msdn.com/b/oldnewthing/archive/2004/07/20/188696.aspx

https://stackoverflow.com/questions/2518257/get-the-selected-file-in-an-explorer-window

nie wiem, jak połączyć się z winAPI przez java, ale jestem pewien, że istnieje sposób.

To prawdopodobnie należy do StackOverflow zamiast SU.

Frank Thomas
źródło
pierwszy link, który mi podałeś, nie jest kodem Java, jak mogę go przetłumaczyć?
night_angel90
Kod API systemu Windows nigdy nie będzie w języku java, ale powinien istnieć interfejs, za pomocą którego można uzyskać do niego dostęp za pośrednictwem JDK. Oto kilka ogólnych informacji na temat importowania biblioteki api Windows i wywoływania jej członków: rgagnon.com/javadetails/java-0189.html
Frank Thomas
@ night_angel90: Myślę, że to, czego szukasz na podstawie sugestii Franka, jest JNI .
Karan