ciao a tutti..

ho creato un eseguibile in java che controlla i files zip presenti su una cartella e quando ne trova di nuovi, li decompatta e li sposta in un path predefinito...

tramite semplice programmino ( exe4j) genero un file .exe come servizio e lo installo...

il servizio si installa correttamente, solo che quando lo avvio mi da il seguente errore :

"Errore 1053: Il servizio non ha risposto alla richiesta di avvio o controllo nel tempo previsto"

Facendo delle prove ( togliendo codice ) o trovato la parte di codice che non gli piace... ma in cosa sbaglio ???

codice:
	// CONTROLLO CICLICO DELLA CARTELLA
	public void monitorFolder() {
		int count = 1;
		Vector cambiamentiFolder; 
		while (count > 0){
			// CARICO IL VETTORE PER IL CONTROLLO
			mod = new Vector();
			mod = cercaFileZip();
			// CONFRONTO
			cambiamentiFolder = new Vector();
			cambiamentiFolder = trovaDifferenze(orig,mod);
			// CONTROLLO CAMBIAMENTI
			for(int a = 0;a < cambiamentiFolder.size();a++){
				// RECUPERO FILE
				File fileZip = (File)cambiamentiFolder.elementAt(a);
				// SCRITTURA LOG
				try {
					pathLog.log("Nuovo File Zip Rilevato ",fileZip.getName());
				} catch (IOException e1) {
					e1.printStackTrace();
				} 
				// UNZIP DEL FILE
				try {
					unzip(fileZip.getAbsolutePath());
					// SCRITTURA LOG
					try {
						pathLog.log("Unzip del file in ",pathFolderUnzip);
					} catch (IOException e1) {
						e1.printStackTrace();
					} 
				} catch (IOException e2) {
					// SCRITTURA LOG
					try {
						pathLog.log("UNZIP DEL FILE NON RIUSCITO !!! ",e2.getMessage());
					} catch (IOException e1) {
						e1.printStackTrace();
					}
				}

				// SPOSTA FILE ZIP
				if (new File(pathFolderUnzip, fileZip.getName()).exists()==false){
					fileZip.renameTo(new File(pathFolderUnzip, fileZip.getName()));
				}else{
					fileZip.delete();
				}
				
				// SCRITTURA LOG
				try {
					pathLog.log("Nuovo path del file zip ",pathMoveFileZip+fileZip.getName());
				} catch (IOException e1) {
					e1.printStackTrace();
				} 
			} // FINE CICLO FOR
			
			// ATTESA ESPRESSA IN MILLISECONDI
			
			try{
				Thread.sleep(timeControl);
			}catch(InterruptedException e){
				// SCRITTURA LOG
				try {
					pathLog.log("Errori durante tempo di attesa controllo cartella ",e.getMessage());
				} catch (IOException e1) {
					e1.printStackTrace();
				} 
			}			
		} // FINE WHILE
	}