{"id":18,"date":"2012-10-20T15:25:43","date_gmt":"2012-10-20T22:25:43","guid":{"rendered":"http:\/\/www.coretechnologies.com\/blog\/?p=18"},"modified":"2012-10-20T15:25:43","modified_gmt":"2012-10-20T22:25:43","slug":"windows-services-no-significant-changes-in-windows-8-and-windows-server-2012","status":"publish","type":"post","link":"https:\/\/www.coretechnologies.com\/blog\/windows-services\/windows-services-no-significant-changes-in-windows-8-and-windows-server-2012\/","title":{"rendered":"Windows Services: No Significant Changes in Windows 8 and Windows Server 2012"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"\/blog\/images\/windows-8-logo-209x69.jpg\" width=\"209\" height=\"69\" alt=\"Windows 8\" \/> <img loading=\"lazy\" decoding=\"async\" src=\"\/blog\/images\/windows-server-2012-logo-256x72.jpg\" width=\"256\" height=\"72\" alt=\"Windows Server 2012\" \/><\/p>\n<p>Despite a gap of three years since the last major OS releases, Microsoft has not introduced any meaningful changes in the Windows Services API for Windows 8 and Windows Server 2012. Indeed, only the most technical folks will care about these tepid adjustments:<\/p>\n<ul>\n<li>\n<h3>Applications can query a service to learn why it was started<\/h3>\n<p>The new <a href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/windows\/desktop\/hh973485%28v=vs.85%29.aspx\" target=\"_blank\" rel=\"noopener noreferrer\">QueryServiceDynamicInformation<\/a> function was created to support this feature.\n<\/li>\n<li>\n<h3>Services can sign up to be notified when a user has initiated a reboot<\/h3>\n<p>The new SERVICE_CONTROL_USERMODEREBOOT flag was added to the <a href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/windows\/desktop\/ms683241%28v=vs.85%29.aspx\" target=\"_blank\" rel=\"noopener noreferrer\">HandlerEx<\/a> callback function and the <a href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/windows\/desktop\/ms685996%28v=vs.85%29.aspx\" target=\"_blank\" rel=\"noopener noreferrer\">SERVICE_STATUS<\/a> structure.\n<\/li>\n<li>\n<h3>More trigger-start data types<\/h3>\n<p>The obscure trigger-start functionality, where services can be started or stopped when certain events occur, now supports a few more data types. These show up in the <a href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/windows\/desktop\/ms685996%28v=vs.85%29.aspx\" target=\"_blank\" rel=\"noopener noreferrer\">SERVICE_TRIGGER_SPECIFIC_DATA_ITEM<\/a> structure but are mysteriously described as <b>TBD<\/b> so we can&#8217;t be sure how Microsoft intends them to be used. Fortunately our <a href=\"\/products\/ServiceTriggerEditor\/\">free utility for editing service triggers<\/a> continues to work well with Windows 8 and Server 2012&#8230;<\/p>\n<\/li>\n<\/ul>\n<!-- relpost-thumb-wrapper --><div class=\"relpost-thumb-wrapper\"><!-- filter-class --><div class=\"relpost-thumb-container\"><style>.relpost-block-single-image, .relpost-post-image { margin-bottom: 10px; }<\/style><h3>You may also like...<\/h3><div style=\"clear: both\"><\/div><div style=\"clear: both\"><\/div><!-- relpost-block-container --><div class=\"relpost-block-container relpost-block-column-layout\" style=\"--relposth-columns: 3;--relposth-columns_t: 2; --relposth-columns_m: 2\"><a href=\"https:\/\/www.coretechnologies.com\/blog\/windows-services\/legacy-desktop-application-questions\/\"class=\"relpost-block-single\" ><div class=\"relpost-custom-block-single\"><img decoding=\"async\" loading=\"lazy\" class=\"relpost-block-single-image\" alt=\"Wondering if Your Legacy Desktop Application Will Work as a Windows Service? Answer These 3 Question...\"  src=\"https:\/\/www.coretechnologies.com\/blog\/wp-content\/uploads\/3-questions-to-ask-150x150.png\" style=\"aspect-ratio:1\/1\" style=\"aspect-ratio:1\/1\"><\/img><div class=\"relpost-block-single-text\"  style=\"height: 75px;font-family: Arial;  font-size: 12px;  color: #333333;\"><h2 class=\"relpost_card_title\">Wondering if Your Legacy Desktop Application Will Work as a Windows Service? Answer These 3 Question...<\/h2><\/div><\/div><\/a><a href=\"https:\/\/www.coretechnologies.com\/blog\/alwaysup\/vs-custom-windows-service\/\"class=\"relpost-block-single\" ><div class=\"relpost-custom-block-single\"><img decoding=\"async\" loading=\"lazy\" class=\"relpost-block-single-image\" alt=\"Why Should I Buy AlwaysUp Instead of Writing My Own Windows Service?\"  src=\"https:\/\/www.coretechnologies.com\/blog\/wp-content\/uploads\/build-vs-buy-150x150.png\" style=\"aspect-ratio:1\/1\" style=\"aspect-ratio:1\/1\"><\/img><div class=\"relpost-block-single-text\"  style=\"height: 75px;font-family: Arial;  font-size: 12px;  color: #333333;\"><h2 class=\"relpost_card_title\">Why Should I Buy AlwaysUp Instead of Writing My Own Windows Service?<\/h2><\/div><\/div><\/a><a href=\"https:\/\/www.coretechnologies.com\/blog\/alwaysup\/alwaysup-works-with-windows-8-windows-server-2012\/\"class=\"relpost-block-single\" ><div class=\"relpost-custom-block-single\"><img decoding=\"async\" loading=\"lazy\" class=\"relpost-block-single-image\" alt=\"Windows 8\"  src=\"https:\/\/www.coretechnologies.com\/blog\/wp-content\/uploads\/win8-150x150.png\" style=\"aspect-ratio:1\/1\" style=\"aspect-ratio:1\/1\"><\/img><div class=\"relpost-block-single-text\"  style=\"height: 75px;font-family: Arial;  font-size: 12px;  color: #333333;\"><h2 class=\"relpost_card_title\">AlwaysUp works with Windows 8 &amp; Windows Server 2012<\/h2><\/div><\/div><\/a><\/div><!-- close relpost-block-container --><div style=\"clear: both\"><\/div><\/div><!-- close filter class --><\/div><!-- close relpost-thumb-wrapper -->","protected":false},"excerpt":{"rendered":"<p>Despite a gap of three years since the last major OS releases, Microsoft has not introduced any meaningful changes in the Windows Services API for Windows 8 and Windows Server 2012. Indeed, only the most technical folks will care about &hellip; <a href=\"https:\/\/www.coretechnologies.com\/blog\/windows-services\/windows-services-no-significant-changes-in-windows-8-and-windows-server-2012\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":2210,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[18],"tags":[169,183,186,192,196],"class_list":["post-18","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-windows-services","tag-trigger-start-services","tag-win-api","tag-windows-8","tag-windows-server-2012","tag-windows-services-2"],"_links":{"self":[{"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/posts\/18","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/comments?post=18"}],"version-history":[{"count":0,"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/posts\/18\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/media\/2210"}],"wp:attachment":[{"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/media?parent=18"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/categories?post=18"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.coretechnologies.com\/blog\/wp-json\/wp\/v2\/tags?post=18"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}