|
| HOMEPAGE | INDICE FORUM | REGOLAMENTO | ::. | NEI PREFERITI | .:: | RSS Forum | RSS News | NEWS web | NEWS software | |
| PUBBLICITA' | | | ARTICOLI | WIN XP | VISTA | WIN 7 | REGISTRI | SOFTWARE | MANUALI | RECENSIONI | LINUX | HUMOR | HARDWARE | DOWNLOAD | | | CERCA nel FORUM » | |
![]() |
#1 |
Junior Member
Registrato: 09-07-2003
Loc.: San donà di piave & Udin (Frìul)
Messaggi: 99
![]() |
Logoff da Windows 2000
![]() Volevo poi porvi una domanda. Devo realizzare un programma in Java che tra le altre funzioni consenta il logoff di un utente dalla sua sessione corrente. Per fare questo vorrei utilizzare una stringa, suppongo chiamando rundll32.exe più vari parametri che non conosco assolutamente. Mi potete aiutare?Il sistema operativo è,come da topic, windows 2000 PRO. Per spiegarmi meglio vi allego quella che uso per Windows NT4 RUNDLL32 USER32.DLL,ExitWindowsEx RUNDLL32 USER32.DLL,ExitWindowsEx HELP!!! Alder
___________________________________
Visita il mio sito! www.afbp.it Athlon XP 2000+ Thoro B - ABIT NF7-S rev 2.0 - sk video ATI Radeon 8500 - 512 mb ram Twinmos pc 3200 - HD IBM 120 Gb - 2 HD QuantumFireballP in raid 1- DVD Toshiba 16x48 - Plextor 12x4x32 SCSI |
![]() |
![]() |
![]() |
#2 |
Gold Member
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
![]() |
Se non vado errato, l'api da utilizzare è identica, questo problema è stato già affrontato sul forum "programmazione" .. fai una ricerca .. anzi, questo thread andrebbe proprio spostato lì ..
![]() Bye ![]() |
![]() |
![]() |
![]() |
#3 |
Junior Member
Registrato: 09-07-2003
Loc.: San donà di piave & Udin (Frìul)
Messaggi: 99
![]() |
Ho già guardato....non sono per java....
![]()
___________________________________
Visita il mio sito! www.afbp.it Athlon XP 2000+ Thoro B - ABIT NF7-S rev 2.0 - sk video ATI Radeon 8500 - 512 mb ram Twinmos pc 3200 - HD IBM 120 Gb - 2 HD QuantumFireballP in raid 1- DVD Toshiba 16x48 - Plextor 12x4x32 SCSI |
![]() |
![]() |
![]() |
#4 |
Gold Member
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
![]() |
Guarda qui:
http://www.wintricks.it/forum/showth...0&pagenumber=1 non ho capito cosa intendi dire con "non sono per Java" .. ti riferisci all'interfacciamento delle API ? Bye ![]() |
![]() |
![]() |
![]() |
#5 |
Junior Member
Registrato: 09-07-2003
Loc.: San donà di piave & Udin (Frìul)
Messaggi: 99
![]() |
Intendo che le chiamte che vengono fatte sono utilizzate sotto Delphi e che non ho mai visto nulla di simile per Java, quindi suppongo che quelle chiamate siano state fatte utilizzando delle librerie di Delphi (che non conosco per nulla) e quindi per java non vanno bene.
Tnx anyway Alder
___________________________________
Visita il mio sito! www.afbp.it Athlon XP 2000+ Thoro B - ABIT NF7-S rev 2.0 - sk video ATI Radeon 8500 - 512 mb ram Twinmos pc 3200 - HD IBM 120 Gb - 2 HD QuantumFireballP in raid 1- DVD Toshiba 16x48 - Plextor 12x4x32 SCSI |
![]() |
![]() |
![]() |
#6 |
Gold Member
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
![]() |
Le API di sistema possono essere chiamate da e con qualsiasi linguaggio, se vuoi ti faccio avere l'interfacciamento Java
se non vuoi ricorrere all'interfacciamento dal linguaggio (più pulito) puoi fare direttamente una shell. Bye ![]() |
![]() |
![]() |
![]() |
#7 |
Junior Member
Registrato: 09-07-2003
Loc.: San donà di piave & Udin (Frìul)
Messaggi: 99
![]() |
Se riuscissi a fornirmi l'interfacciamento per java ti sarei eternamente grato!!!
E'almeno una settimana che cerco qualcosa ma non riesco a trovare nulla!!! tnx Alder
___________________________________
Visita il mio sito! www.afbp.it Athlon XP 2000+ Thoro B - ABIT NF7-S rev 2.0 - sk video ATI Radeon 8500 - 512 mb ram Twinmos pc 3200 - HD IBM 120 Gb - 2 HD QuantumFireballP in raid 1- DVD Toshiba 16x48 - Plextor 12x4x32 SCSI |
![]() |
![]() |
![]() |
#8 |
Gold Member
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
![]() |
Ok, farò qualche esempio per Java.
Dato che non so quale sia il tuo livello di conoscenza del linguaggio e dell'architettura cross-platform la prenderò un po' "alla larga" e magari la cosa ti suonerà un po' stucchevole, ma voglio esssere il più esauriente possibile. Java è un linguaggio "platform-indipendent", questo vuol dire che si appoggia ad un framework (Java Virtual Machine) che gli permette l'interazione tra il suo bytecode e il sistema operativo su cui l'applicativo deve girare. La JVM è il "ponte" a basso livello con cui Java interagisce con i servizi del sistema operativo, è la JVM ad occuparsi di inoltrare e rispondere alle chiamate che vengono richieste dal linguaggio ad alto livello. Molte delle funzionalità che possiamo richiedere al sistema operativo sono contenute in specifiche librerie di sistema (nel caso di Windows DLL o OCX) che vengono messe a disposizione e che ci garantiscono un'interazione 1:1. Tali librerie sono proprie del sistema operativo e dell'architettura con cui esso è implementato (dll e ocx sono proprietari di windows), si dice che essi sono quindi platform-dependent il contrario cioè di Java e del suo funzionamento. E' impossibile quindi fare in modo che sia lo stesso Java, in maniera diretta ad interfacciarsi con questi metodi (API) dato che lo stesso ambiente su cui Java poggia, la JVM è divincolata a tutti gli effetti dal sistema. Questo non significa che un programma Java non possa usufruire dei servizi (talvolta indispensabili) posti in essere dalle API ... tutto questo è infatti possibile aggirando l'ostacolo, circumnavigando il problema con l'utilizzo della JNI ossia: "Java Native Interface". L'interfaccia nativa Java consente di delegare ad altri mezzi le funzionalità che un linguaggio platform-indipendente non può svolgere .. come questa ad esempio .. Gli altri mezzi citati sono anch'essi delle librerie scritte in altro linguaggio (questa volta platform-dependent) che si occupano di eseguire effettivamente la chiamata. Procedo ora all'analisi del caso specifico: innanzitutto si procede col creare una DLL (preferibilmente) che proceda alla chiamata all'API (o alle API) necessarie .. nel caso Windows, per non complicarsi la vita è possibile utilizzare C/C++ o anche Visual Basic fornendo la libreria con un metodo che chiamo ad esempio: SpegniPc()... (posterò successivamente il codice VB che effettuerà la chiamata) successivamente si procede all'implementazione di una classe Java (più che una classe si tratta di un'interfaccia .. parlando in termini ortodossi) che dichiara un metodo NATIVO per interfacciarsi con la libreria e un metodo main che è ovviamente lo startup dell'applicazione: Codice:
public class Spegni { public Spegni() {} public native void SpegniPC() {} public static void main() { this.SpegniPC(); } } Successivamente, attraverso l'uso di un tool chiamato JavaH (presente nella JDK) è possibile costruire la JNI e quindi interfacciarsi con la DLL di sistema che implementa il metodo nativo nella classe. Spero di non essere stato troppo confusionario .. ho trovato in rete alcuni link che possono essere interessanti ... quseto meccanismo è usato non solo in questo caso .. ma in tutte quelle situazioni in cui sia necessario vincolarsi propriamente alla piattaforma .. occorre tenere presente questo, in quanto .. qual'ora si cambiasse piattaforma occorrerebbe re-implementare o ricompilare i componenti e le librerie esterne. http://java.sun.com/docs/books/tutor...pts/index.html http://java.sun.com/docs/books/tutor...tep/index.html (dopo posto il codice VB per la chiamata API) Bye ![]() |
![]() |
![]() |
![]() |
#9 |
Gold Member
Registrato: 07-01-2002
Loc.: Milano
Messaggi: 2.863
![]() |
E qui c'è il codice VB necessario per chiamare le API nei loro vari stati ...
http://azbukavb.narod.ru/sc/sc1.html http://members.tripod.com/gauravdhup...ndows_api.html Bye ![]() |
![]() |
![]() |
![]() |
Utenti attualmente attivi che stanno leggendo questa discussione: 1 (0 utenti e 1 ospiti) | |
|
|
![]() |
||||
Discussione | Autore discussione | Forum | Risposte | Ultimo messaggio |
[BSOD] SCHERMATE BLU in Windows | P8257 WebMaster | Windows 7/Vista/XP/ 2003 | 260 | 10-06-2013 21.11.13 |
[2000] leggere i dvd su windows 2000 con windows media player | Giuly2k | Windows 9x/Me/NT4/2000 | 14 | 15-09-2007 19.13.00 |
M.S.B. Dicembre | Gervy | Archivio News Web | 0 | 13-12-2005 23.24.39 |
Microsoft Patches | Gervy | Archivio News Web | 0 | 12-10-2004 23.58.39 |
Errore c000218 su windows 2000 server. | Oronzo Cana' | Windows 9x/Me/NT4/2000 | 0 | 24-09-2004 11.17.38 |