Вы можете проверить приведенный ниже код, чтобы изменить значение
<p id="changeName">Mark</p>
<button type="button" class="myevent">Button</button>
<script>
jQuery(function(){
$('.myevent').on('click', function(){
var name = "John Doe";
$('#changeName').val(name);
});
});
</script>
Это функция Jquery, пожалуйста, включите библиотеку jquery перед ее использованием.
вот то, что я должен был сделать. Это ужасно, но это работает красиво.
String STATE_PREFIX = "STATE : ";
String s = runProcess("sc query \""+serviceName+"\"");
// check that the temp string contains the status prefix
int ix = s.indexOf(STATE_PREFIX);
if (ix >= 0) {
// compare status number to one of the states
String stateStr = s.substring(ix+STATE_PREFIX.length(), ix+STATE_PREFIX.length() + 1);
int state = Integer.parseInt(stateStr);
switch(state) {
case (1): // service stopped
break;
case (4): // service started
break;
}
}
runProcess
закрытый метод, который выполняет данную строку как процесс командной строки и возвращает получающийся вывод. Поскольку я сказал, ужасный, но работы.Надеюсь, это поможет.
Можно создать маленький VBS on-th-fly, запустить его и получить его код возврата.
import java.io.File;
import java.io.FileWriter;
public class VBSUtils {
private VBSUtils() { }
public static boolean isServiceRunning(String serviceName) {
try {
File file = File.createTempFile("realhowto",".vbs");
file.deleteOnExit();
FileWriter fw = new java.io.FileWriter(file);
String vbs = "Set sh = CreateObject(\"Shell.Application\") \n"
+ "If sh.IsServiceRunning(\""+ serviceName +"\") Then \n"
+ " wscript.Quit(1) \n"
+ "End If \n"
+ "wscript.Quit(0) \n";
fw.write(vbs);
fw.close();
Process p = Runtime.getRuntime().exec("wscript " + file.getPath());
p.waitFor();
return (p.exitValue() == 1);
}
catch(Exception e){
e.printStackTrace();
}
return false;
}
public static void main(String[] args){
//
// DEMO
//
String result = "";
msgBox("Check if service 'Themes' is running (should be yes)");
result = isServiceRunning("Themes") ? "" : " NOT ";
msgBox("service 'Themes' is " + result + " running ");
msgBox("Check if service 'foo' is running (should be no)");
result = isServiceRunning("foo") ? "" : " NOT ";
msgBox("service 'foo' is " + result + " running ");
}
public static void msgBox(String msg) {
javax.swing.JOptionPane.showConfirmDialog((java.awt.Component)
null, msg, "VBSUtils", javax.swing.JOptionPane.DEFAULT_OPTION);
}
}
У меня была некоторая удача в прошлом с Сервисной Оберткой Java. В зависимости от Вашей ситуации Вы, возможно, должны заплатить для использования ее. Но это предлагает чистое решение, которое поддерживает Java и могло использоваться в среде InstallAnywhere с (я думаю), мало проблемы. Это также позволит Вам услугам по поддержке на полях Unix также.
Во время запуска создайте файл с File.deleteOnExit ().
Проверьте на существование файла в Ваших сценариях.
Выстрел в темноте, но смотрит на Вашу Установку Где угодно документация Java.
А именно,
/javadoc/com/installshield/wizard/platform/win32/Win32Service.html
Класс:
com.installshield.wizard.platform.win32
Interface Win32Service
All Superinterfaces:
Service
Метод:
public NTServiceStatus queryNTServiceStatus(String name)
throws ServiceException
Calls the Win32 QueryServiceStatus to retrieve the status of the specified service. See the Win32 documentation for this API for more information.
Parameters:
name - The internal name of the service.
Throws:
ServiceException
Я имел дело с установщиками в течение многих лет, и прием должен создать Ваш собственный EXE и назвать его на установке. Это предлагает хорошую гибкость как отображение точных сообщений об ошибках в конечном счете, ошибка происходит, и имейте основанные на успехе возвращаемые значения, таким образом, Ваш установщик знает о том, что произошло.
Вот то, как запустить, остановите и запросите состояния для сервисов окон (C++): http://msdn.microsoft.com/en-us/library/ms684941 (По сравнению с 85) .aspx (VB и C# предлагают подобные функции),