{"id":6942,"date":"2020-01-24T00:05:55","date_gmt":"2020-01-24T00:05:55","guid":{"rendered":"http:\/\/www.hexacorn.com\/blog\/?p=6942"},"modified":"2020-01-24T00:05:56","modified_gmt":"2020-01-24T00:05:56","slug":"the-wizard-of-x-oppa-plugx-style-part-2","status":"publish","type":"post","link":"https:\/\/www.hexacorn.com\/blog\/2020\/01\/24\/the-wizard-of-x-oppa-plugx-style-part-2\/","title":{"rendered":"The Wizard of X \u2013 Oppa PlugX style, Part 2"},"content":{"rendered":"\n<p>Every once in a while I come back to have a second look at some stuff from the past. Today I had a quick look at xwizards.dll that <a href=\"https:\/\/www.hexacorn.com\/blog\/2017\/07\/31\/the-wizard-of-x-oppa-plugx-style\/\">I wrote about<\/a> before and noticed that I forgot to mention one more thing.<\/p>\n\n\n\n<p>The exported function RunWizard takes GUID as an input. If you register a DLL under a GUID of your choice you can load the DLL via xwizard.exe e.g.:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Windows Registry Editor Version 5.00\n\n&#91;HKEY_CLASSES_ROOT\\CLSID]\n\"CLBVersion\"=dword:00000012\n\n&#91;HKEY_CLASSES_ROOT\\CLSID\\{11111111-1111-1111-1111-111111111111}]\n@=\"foobar\"\n\n&#91;HKEY_CLASSES_ROOT\\CLSID\\{11111111-1111-1111-1111-111111111111}\\InprocServer32]\n@=\"C:\\\\test\\\\test.dll\"\n\"ThreadingModel\"=\"Both\"\n<\/code><\/pre>\n\n\n\n<p>will register c:\\test\\test.dll under {11111111-1111-1111-1111-111111111111} GUID. All we have to do now is run:<\/p>\n\n\n\n<ul><li>xwizard RunWizard {11111111-1111-1111-1111-111111111111} <\/li><\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Every once in a while I come back to have a second look at some stuff from the past. Today I had a quick look at xwizards.dll that I wrote about before and noticed that I forgot to mention one &hellip; <a href=\"https:\/\/www.hexacorn.com\/blog\/2020\/01\/24\/the-wizard-of-x-oppa-plugx-style-part-2\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[15,56,64],"tags":[],"_links":{"self":[{"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/posts\/6942"}],"collection":[{"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/comments?post=6942"}],"version-history":[{"count":1,"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/posts\/6942\/revisions"}],"predecessor-version":[{"id":6943,"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/posts\/6942\/revisions\/6943"}],"wp:attachment":[{"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/media?parent=6942"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/categories?post=6942"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hexacorn.com\/blog\/wp-json\/wp\/v2\/tags?post=6942"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}