PDA

View Full Version : [Java] hardware info


Matt39
22-03-2010, 16:52
qualcuno sa come ottenere da java i dati sulla scheda video installata nel pc?mi servirebbe almeno memoria e se possibile il modello..

grazie mille a tutti..

PGI-Bis
22-03-2010, 18:08
Puoi usare JOGL o LWJGL. Entrambe le librerie includono degli strumenti per verificare le capacità della scheda video (tra cui modello e quantità di memoria).

banryu79
22-03-2010, 18:16
Puoi usare JOGL o LWJGL. Entrambe le librerie includono degli strumenti per verificare le capacità della scheda video (tra cui modello e quantità di memoria).
Scusate l'intrusione, ma mi interesserebbe sapere per JOGL come si fa (quale sarebbe lo strumento)?

PGI-Bis
22-03-2010, 21:09
glGetString di GL. Con GL_RENDERER hai la scheda video, con VENDOR hai il produttore, non ho trovato quello della memoria ma da qualche parte c'è.

banryu79
23-03-2010, 00:21
glGetString di GL. Con GL_RENDERER hai la scheda video, con VENDOR hai il produttore, non ho trovato quello della memoria ma da qualche parte c'è.
Ah, o non lo ricordo io, oppure proprio non lo sapevo (fin'ora) che c'è un'apposita funzione OpenGL wrappata che restituisce la memoria della scheda grafica, fico.
Grazie PGI :)

PGI-Bis
23-03-2010, 02:38
Ho trovato quello per le schede AMD/ATI ma un bel nulla per NVidia.

http://www.opengl.org/registry/specs/ATI/meminfo.txt

Ma pensa un po' che strano.

Comunque c'è sempre GraphicsDevice.

GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().getAvailableAcceleratedMemory()

Matt39
23-03-2010, 14:20
Grazie mille!
provo e ti so dire..

banryu79
24-03-2010, 10:05
Comunque c'è sempre GraphicsDevice.

GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice().getAvailableAcceleratedMemory()
Ah, già incluso nel JDK standard, non ci avevo prorpio pensato :D

Matt39
24-03-2010, 15:02
ho trovato un modo forse più semplice per avere il nome della scheda..

dal registro di sistema ho trovato una chiave che lo contiene..

in java sto usando jni Registry, sono riuscito ad entrare nella chiave ma non riesco a leggerne il valore..

qualcuno sa farlo?

PGI-Bis
24-03-2010, 15:17
Java = solaris, unix, osx, windows. Registro di sistema? brutto brutto brutto.

Matt39
24-03-2010, 15:34
Java = solaris, unix, osx, windows. Registro di sistema? brutto brutto brutto.

no, tranquillo..nel mio caso solo Windows..ci avevo già pensato..

PGI-Bis
24-03-2010, 15:38
E a me che uso mandriva il tuo programma non lo vuoi far provare?

Non che lo usi veramente, ce l'ho installato e basta ma se puoi fare una cosa in modo tale che funzioni a prescindere dal sistema operativo (incluse versioni diverse dello stesso sistema operativo), perchè non farla?

Liberati dell'os, sii javese!

Matt39
24-03-2010, 15:50
E a me che uso mandriva il tuo programma non lo vuoi far provare?

Non che lo usi veramente, ce l'ho installato e basta ma se puoi fare una cosa in modo tale che funzioni a prescindere dal sistema operativo (incluse versioni diverse dello stesso sistema operativo), perchè non farla?

Liberati dell'os, sii javese!

ahahah..quella che sto facendo è una web app e serve solo ad utenti windows..mi dispiace ma non posso dirti di più ;) ..

Matt39
24-03-2010, 16:03
ho guardato un po le api che mi hai consigliato ma nn ho trovato metodi per la scheda e ho pensato di usare il registro..

secondo te poi il programma legge la scheda del server o del pc su cui è in eseguzione il prog?

edit:non avevo guardato l altro post..grazie lo stesso..

PGI-Bis
24-03-2010, 16:36
Dipende da dove è eseguito il programma. Se è un programma server side, tipo una servlet o una pagina jsp, ti da le informazioni del PC server. Se è un programma locale, come un'applet o uno script javascript, ti da le informazioni del pc locale.

Matt39
24-03-2010, 16:55
Dipende da dove è eseguito il programma. Se è un programma server side, tipo una servlet o una pagina jsp, ti da le informazioni del PC server. Se è un programma locale, come un'applet o uno script javascript, ti da le informazioni del pc locale.

azz...i miei dubbi erano giusti..è una jsp..c è qualche modo per risolvere?

cdimauro
24-03-2010, 16:59
Java = solaris, unix, osx, windows. Registro di sistema? brutto brutto brutto.
Bello, bello, bello, invece. Molto meglio che avere 2 miliardi di piccoli file di configurazione sparsi su filesystem, e magari con un loro formato da parserizzare. :fagiano:

PGI-Bis
24-03-2010, 17:07
mi riferivo al fatto che l'accesso esplicito al registro di sistema di windows precluda la portabilità del programma. Sul tema generale del confronto inter-os, mi basti qui riportare la miniatura della mia linux-box:

http://www.tukano.it/linuxbox.png

Matt39
24-03-2010, 17:26
azz...i miei dubbi erano giusti..è una jsp..c è qualche modo per risolvere?

PGI?

PGI-Bis
24-03-2010, 17:47
Fortunatamente non mi interesso di tecnologie server side tuttavia so che tramite una pagina jsp puoi causare l'installazione di un'applet passando per java web start o 'na roba del genere. C'è un installer precotto per JOGL multi-os firmato da sun quindi puoi dispiegare un'applet che interroga il sistema ospite e notifica alla servlet il risultato.

Non so quali siano i passaggi concreti da fare ma essendo roba web e server side saranno di certo inultimente complicati.

PGI-Bis
24-03-2010, 17:52
L'alternativa desktop è un programma di venti righe fornito tramite java web start che analizza l'ospite e spara il risultato ad un socket. L'altro deskop in ascolto su quel socket fa quello che gli pare con ancora meno righe.

cdimauro
25-03-2010, 08:25
mi riferivo al fatto che l'accesso esplicito al registro di sistema di windows precluda la portabilità del programma.
Ah, OK, non avevo capito e concordo.
Sul tema generale del confronto inter-os, mi basti qui riportare la miniatura della mia linux-box:

http://www.tukano.it/linuxbox.png
:rotfl: