{"id":87614942,"date":"2013-05-22T20:10:36","date_gmt":"2013-05-23T04:10:36","guid":{"rendered":"http:\/\/www.geckotemple.com\/blog\/?p=87614942"},"modified":"2023-05-04T08:31:49","modified_gmt":"2023-05-04T16:31:49","slug":"windows-application-automation-101","status":"publish","type":"post","link":"http:\/\/www.geckotemple.com\/blog\/?p=87614942","title":{"rendered":"Windows Application Automation 101"},"content":{"rendered":"<div><em>Wrote this up today for someone, and decided to clean this up a little and drop it here, since the few technical articles I post seem to get a lot of hits (compared to the rest of the blog).\u00a0 <\/em><\/div>\n<div><\/div>\n<div><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><span style=\"font-family: Cambria,serif;\"><b>MSI (The Easy Way)<\/b><\/span><\/span><\/div>\n<div><\/div>\n<div><span style=\"font-family: Calibri,sans-serif; font-size: small;\">In the case of MSI, this will almost always be your command line for hands-free installation:<\/span><\/div>\n<div>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><b>Msiexec \/i {InstallerFile.msi} \/qb<\/b><\/span>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">(\/qb = quiet basic \u2013 will show progress bars, but not ask any questions, this is preferable to\u00a0<i>completely<\/i>\u00a0silent \/qn, at least to test)<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/div>\n<div><span style=\"font-family: Calibri,sans-serif; font-size: small;\">For other applications and installers, they\u2019re either an MSI wrapped in a single executable (like Acrobat Reader), or a different type of installer (like Nullsoft Installer) and will have their own switches.\u00a0 Below are a few of the tricks and tools I use to find out how best to get these applications into \u201csilent\u201d mode as much as possible.<\/span><\/div>\n<div align=\"center\">\n<hr align=\"center\" size=\"2\" width=\"100%\" \/>\n<\/div>\n<div><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><span style=\"font-family: Cambria,serif;\"><b>Tools You Will (Probably) Need<\/b><\/span><\/span><\/div>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><b>Universal Silent Switch Finder<\/b>\u00a0(USSF)\u00a0<a href=\"https:\/\/owa.lvs1.com\/OWA\/redir.aspx?C=1uJW-Tobuk6Ud-9j0j329MXJkioAK9AIBn2F135VTlmsA2QsbgBHcxJ3aHBcXDVrPRelqMGoizA.&amp;URL=http%3a%2f%2fwww.msfn.org%2fboard%2ftopic%2f17940-universal-silent-switch-finder-01%2f\" target=\"_blank\" rel=\"noopener\">http:\/\/www.msfn.org\/board\/topic\/17940-universal-silent-switch-finder-01\/<\/a><\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><b>Universal Extractor<\/b>\u00a0(install this on your system, it\u2019ll give you the ability to right-click on many executables and extract them into a folder)\u00a0<a href=\"https:\/\/owa.lvs1.com\/OWA\/redir.aspx?C=1uJW-Tobuk6Ud-9j0j329MXJkioAK9AIBn2F135VTlmsA2QsbgBHcxJ3aHBcXDVrPRelqMGoizA.&amp;URL=http%3a%2f%2flegroom.net%2fsoftware%2funiextract\" target=\"_blank\" rel=\"noopener\">http:\/\/legroom.net\/software\/uniextract<\/a><\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><b>WinRAR<\/b>\u00a0(also handy for pulling apart some installers)<\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><b>Procexp.exe<\/b>\u00a0Process explorer, great for determining command line of a nested installer after you run the \u201cbig\u201d installer\u00a0<a href=\"https:\/\/owa.lvs1.com\/OWA\/redir.aspx?C=1uJW-Tobuk6Ud-9j0j329MXJkioAK9AIBn2F135VTlmsA2QsbgBHcxJ3aHBcXDVrPRelqMGoizA.&amp;URL=http%3a%2f%2ftechnet.microsoft.com%2fen-ca%2fsysinternals%2fbb896653.aspx\" target=\"_blank\" rel=\"noopener\">http:\/\/technet.microsoft.com\/en-ca\/sysinternals\/bb896653.aspx<\/a><\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><b>Elevated Shortcut<\/b>\u00a0to give the ability to run certain apps without UAC or administrator capabilities on a \u201cper shortcut\u201d basis, can upgrade an existing shortcut to have admin rights, or create a completely new one.<\/span>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Very useful if there\u2019s an executable\/installer that only runs with Admin capabilities<\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Some only need admin rights during install or the first time they\u2019re run<\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Can be used for non-admins to install things in a one-off fashion (printer drivers) or VPN client, etc<\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><a href=\"https:\/\/owa.lvs1.com\/OWA\/redir.aspx?C=1uJW-Tobuk6Ud-9j0j329MXJkioAK9AIBn2F135VTlmsA2QsbgBHcxJ3aHBcXDVrPRelqMGoizA.&amp;URL=http%3a%2f%2ftopsoftzone.com%2fprogram%2f9686%2fElevated_Shortcut.html\" target=\"_blank\" rel=\"noopener\">http:\/\/topsoftzone.com\/program\/9686\/Elevated_Shortcut.html<\/a><\/span><\/li>\n<\/ul>\n<\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><b>A disposable Virtual Machine of WinXP or Win7<br \/>\n<\/b><\/span><\/p>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Set to snapshot so you can rollback often, nothing but updates installed so you can install all\/one app and then roll it back if it works as expected, leaving a clean machine for further testing.<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><b>Steve\u2019s Explorer Bar<\/b>\u00a0(StExBar) from Tortoise (the same people that make SVN)\u00a0<a href=\"https:\/\/owa.lvs1.com\/OWA\/redir.aspx?C=1uJW-Tobuk6Ud-9j0j329MXJkioAK9AIBn2F135VTlmsA2QsbgBHcxJ3aHBcXDVrPRelqMGoizA.&amp;URL=http%3a%2f%2ftools.tortoisesvn.net%2fStExBar.html\" target=\"_blank\" rel=\"noopener\">http:\/\/tools.tortoisesvn.net\/StExBar.html<\/a><\/span>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Once installed, you can enable the new StEx toolbar in the Windows Explorer that will give you the ability to copy either the filename only or the full path of a file without having to ever type it out, very useful when scripting installations<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><b>Uninstall Cleanly<\/b>\u00a0(also known as \u201cUnClean2.0\u201d) which can display all of your installed applications, and with most of the apps, it will also show the UNINSTALL command line, which can be used to remove previous versions if necessary<\/span><\/li>\n<li><strong>WPIW: Windows Post Installation Wizard<\/strong>\n<ul>\n<li>Pretty front end for scripted\/batched commands<\/li>\n<li>http:\/\/www.wpiw.net\/<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<div><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><b>Option #1: USSF<\/b><\/span><\/div>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">If you take the installer file and drag\/drop it onto the USSF.exe <\/span>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">You should be given back the switches that it can find for that type of file (things like \/S and \/SuppressSilent \/NoReboot)<\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Copy\/paste those into a command line and test to see if you can install it cleanly while running Silent<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<div><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><b>Option #2: Extract via WinRar\/Universal Extractor<\/b><\/span><\/div>\n<div>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">If you can, right-click and \u201cWinRar\u201d or \u201cUniExtract to Subdir\u201d the installer into a folder, and find the setup.exe or similar in there, and return to Option #1 to see if you can run a silenced install.<\/span><\/li>\n<\/ul>\n<\/div>\n<div><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><b>Option #3: Run and Trap the Installer<\/b><\/span><\/div>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">In some cases, you can run the installer, stop at the first \u201cNext\u201d screen, and then open Process Explorer and see what the nested executable is (under the base setup.exe, you might see a child process in a temp or AppData folder somewhere.\u00a0 Go grab that folder and see what\u2019s in there.)<\/span>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">This is especially true for applications like Chrome and Shockwave Player that have small \u201chelper\u201d applications for download, but then pull down the \u201creal\u201d installer and run that.\u00a0 If a 40MB app has a 300K installer, you know something\u2019s up.<\/span>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Watch out for these, as they will often delete the \u201chelper\u201d app once the full installer\u2019s been downloaded, thus killing your automation by removing the installer\u2019s executable.<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Once you\u2019ve got that folder, look for executables and drop them on the USSF again, to see what you can find.<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<div><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><b>Option #4: Is there a portable version?<\/b><\/span><\/div>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Sometimes there\u2019s no graceful way to install an application, but if you still want to install it quickly to a number of workstations, see if perhaps the developers offer a \u201cportable\u201d version of the app.\u00a0 One that runs completely out of the installation folder, without any installation necessary.<\/span>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><a href=\"https:\/\/owa.lvs1.com\/OWA\/redir.aspx?C=1uJW-Tobuk6Ud-9j0j329MXJkioAK9AIBn2F135VTlmsA2QsbgBHcxJ3aHBcXDVrPRelqMGoizA.&amp;URL=http%3a%2f%2fportableapps.com%2f\" target=\"_blank\" rel=\"noopener\">http:\/\/portableapps.com\/<\/a>\u00a0has a lot of common applications in this format<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Note: Portable applications are not listed as installed applications in the registry, so they\u2019re effectively \u201cinvisible\u201d to utilities that search systems for installed programs\u00a0 Keep that in mind if you plan on going portable with something \u2013 you probably won\u2019t be able to track it effectively.<\/span><\/p>\n<div align=\"center\">\n<hr align=\"center\" size=\"2\" width=\"100%\" \/>\n<\/div>\n<div><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><span style=\"font-family: Cambria,serif;\"><b>Inserting Licenses and Keys:<\/b><\/span><\/span><\/div>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Many applications have the ability to include the installation key in the installation (either in the command line, or in an XML or INI file in the install directory)<\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">If you can\u2019t find documentation from the originator of the software, try some of the large installation repositories like\u00a0<a href=\"https:\/\/owa.lvs1.com\/OWA\/redir.aspx?C=1uJW-Tobuk6Ud-9j0j329MXJkioAK9AIBn2F135VTlmsA2QsbgBHcxJ3aHBcXDVrPRelqMGoizA.&amp;URL=http%3a%2f%2fwww.itninja.com\" target=\"_blank\" rel=\"noopener\">http:\/\/www.itninja.com<\/a>\u00a0(previously appdeploy.com) or Spiceworks databases before googling it<\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Remember that key automation could mean difficulty finding those keys again later, or having many seats with the same key unintentionally<\/span><\/li>\n<\/ul>\n<div align=\"center\">\n<hr align=\"center\" size=\"2\" width=\"100%\" \/>\n<\/div>\n<div><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><b>Fonts:<\/b><\/span><\/div>\n<div><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Fonts can be copied into the target system\u2019s \u201cc:\\Windows\\Fonts\\\u201d folder or app by hand if you\u2019re an admin, but if you forcibly copy them in via network access (<a href=\"https:\/\/owa.lvs1.com\/OWA\/redir.aspx?C=1uJW-Tobuk6Ud-9j0j329MXJkioAK9AIBn2F135VTlmsA2QsbgBHcxJ3aHBcXDVrPRelqMGoizA.&amp;URL=file%3a%2f%2f%2f%5c%5cmachinename%5cc%24%5cwindows%5cfonts%5c\" target=\"_blank\" rel=\"noopener\">\\\\machinename\\c$\\windows\\fonts\\<\/a>), they won\u2019t show up as usable until they\u2019re been imported into the registry too.<\/span><\/div>\n<div>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Install the needed font(s) on your local machine via drag\/drop<\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Start&gt;run&gt;regedit<\/span>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Go to: HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Fonts<\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">R-Click on the fonts folder and select export (export it to your desktop)<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Open the resultant .reg file with a text editor<\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Delete all of the fonts listed in the exported file, except the ones you want to deploy<\/span>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Also, Do NOT delete these lines:<\/span><\/li>\n<li>\n<pre><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Windows Registry Editor Version 5.00<\/span><\/pre>\n<\/li>\n<li>\n<pre><span style=\"font-family: Calibri,sans-serif; font-size: small;\">[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Fonts]<\/span><\/pre>\n<\/li>\n<\/ul>\n<\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Copy the font TTF files to target\u2019s Fonts folder, and import the .reg file with REGEDIT \/S {Regfile}<\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Reboot the system<\/span><\/li>\n<\/ul>\n<\/div>\n<div align=\"center\">\n<hr align=\"center\" size=\"2\" width=\"100%\" \/>\n<\/div>\n<div><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Once you have your installer figured out, you can add the executable to the Windows Post Installation tool (WPI) found in the \\WindowsUpdates folder.<\/span><\/div>\n<div><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><b>\u00a0<\/b><\/span><\/div>\n<div><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><span style=\"font-family: Cambria,serif;\"><b>WPI and the collected installations:<\/b><\/span><\/span><\/div>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">After launching the WPI, click\u00a0<b>Config<\/b>, and find the application you\u2019re replacing, or updating.<\/span>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Make sure the description is reasonable (add version numbers if it makes sense)<\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Check\/Add the command line that you\u2019ve found with full path based on the steps you went through above<\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Set which category and configurations need this app (Utilities\/Base)<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Save\/Exit to go back to the main WPI screen<\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Select None, and check your new app only<\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Begin installation to test.<\/span><\/li>\n<li><\/li>\n<\/ul>\n<div><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><span style=\"font-family: Cambria,serif;\"><b>\u201cGotchas\u201d and Things To Watch Out For<\/b><\/span><\/span><\/div>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Always test your installations to find out what happens if there\u2019s already an old\/same version installed<\/span>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Eg: New version of Firefox installation that takes 4 seconds to install is\u00a0<b><i>good<\/i><\/b>\u00a0\u2013 but one that blows away your saved passwords and settings is\u00a0<b><i>bad.<\/i><\/b><\/span><\/li>\n<\/ul>\n<\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Run every app at least once to make sure it really did what you think it did \u2013 It may have completed installation successfully, but does it actually\u00a0<i>launch<\/i>\u00a0now?<\/span>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Also check for any first-run weirdness (like checks for updates, or registration, or plugins)<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<div>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">For some installers, re-running the setup on a system that already has the app will\u00a0<i>uninstall<\/i>\u00a0it from the machine, or change the installation<\/span>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Example: Office 2007 upgraded to Office 2010 can remove Access 2007, even if Office 2010 didn\u2019t include it.<\/span><\/li>\n<\/ul>\n<\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Also watch out for installers\/updates that forcibly reboot your system when completed silently.<\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">It\u2019s common for apps to quit if they detect that msiexec is already running, so sometimes you need to leave a few seconds pause to let one installation finish before launching the next one<\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Is the application installed for ALL users, or just the currently logged-in user\/admin?\u00a0 Google Chrome is a good example of this.<\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Printers are also not installed globally unless specifically added with the \/ga switch<\/span>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Type the following into the command prompt:<\/span>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><i>rundll32 printui.dll,PrintUIEntry \/ga \/n\\\\server\\printername<\/i><\/span><\/li>\n<\/ul>\n<\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">In other words, to add mylj03, the command line is:<\/span><\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\"><i>rundll32 printui.dll,PrintUIEntry \/ga \/n\\\\server\\mylj03<\/i><\/span><\/li>\n<\/ul>\n<\/li>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Try not to leave icons all over your user\u2019s desktop \u2013 collect them into a folder under c:\\users\\public\\desktop so they can\u2019t delete them, but can copy them out onto their own desktop or quicklaunch bar if they want to.<\/span>\n<ul>\n<li><span style=\"font-family: Calibri,sans-serif; font-size: small;\">Quick way is to move all *.lnk files at the end of your installation pass<\/span><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Wrote this up today for someone, and decided to clean this up a little and drop it here, since the few technical articles I post seem to get a lot of hits (compared to the rest of the blog).\u00a0 MSI (The Easy Way) In the case of MSI, this will almost always be your command [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[7],"tags":[],"class_list":["post-87614942","post","type-post","status-publish","format-standard","hentry","category-software"],"_links":{"self":[{"href":"http:\/\/www.geckotemple.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/87614942","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.geckotemple.com\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.geckotemple.com\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.geckotemple.com\/blog\/index.php?rest_route=\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"http:\/\/www.geckotemple.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=87614942"}],"version-history":[{"count":2,"href":"http:\/\/www.geckotemple.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/87614942\/revisions"}],"predecessor-version":[{"id":87615031,"href":"http:\/\/www.geckotemple.com\/blog\/index.php?rest_route=\/wp\/v2\/posts\/87614942\/revisions\/87615031"}],"wp:attachment":[{"href":"http:\/\/www.geckotemple.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=87614942"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.geckotemple.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=87614942"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.geckotemple.com\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=87614942"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}