{"id":1685,"date":"2017-01-23T03:31:11","date_gmt":"2017-01-23T03:31:11","guid":{"rendered":"http:\/\/elbsolutions.com\/projects\/?p=1685"},"modified":"2022-02-03T11:24:31","modified_gmt":"2022-02-03T17:24:31","slug":"register-tlb-file-vba-use-destination-machine-vsto-running-success","status":"publish","type":"post","link":"https:\/\/elbsolutions.com\/projects\/register-tlb-file-vba-use-destination-machine-vsto-running-success\/","title":{"rendered":"How to register your tlb file for VBA use on a destination machine AND have VSTO running. SUCCESS."},"content":{"rendered":"<p>It took HOURs to figure all this out and the answer!? (<a href=\"http:\/\/elbsolutions.com\/projects\/get-com-enabled-vba-compatible-vsto-project-work-using-installer\/\" target=\"_blank\" rel=\"noopener noreferrer\">see older post<\/a>) The issue\u00a0that we are having is that\u00a0 the VSTO would work initated from the ribbon,\u00a0but the VBA when you added a &#8220;reference&#8221; to the .tlb file would tell you that it could not create an ActiveX object or other message saying &#8220;what!?&#8221;. <strong>Solution:\u00a0 to run from the command line: \u00a0<\/strong><\/p>\n<pre class=\"brush: cpp; title: ; notranslate\" title=\"\">regasm \/codebase &amp;amp;amp;amp;amp;lt;pathToMyDll&amp;amp;amp;amp;amp;gt; \/tlb:&amp;amp;amp;amp;amp;lt;pathToMyTlb&amp;amp;amp;amp;amp;gt;<\/pre>\n<p>But\u00a0that command\u00a0too could not &#8220;just run&#8221;. <a href=\"http:\/\/elbsolutions.com\/projects\/wp-admin\/post.php?post=1685&amp;action=edit\" target=\"_blank\" rel=\"noopener noreferrer\">Here is a guy doing the exact same thing as me, except I found this article last &#8211; or at least I stopped looking. It is the key<\/a>. Making VSTO things and wanting to use them in the &#8220;old world&#8221; and the new. This confirms all I have learned. Lots of links at the bottom about CLSID&#8217;s, regasm etc. COM====ActiveX in case you run into ActiveX &#8211; it is 100% the same. I used <a href=\"http:\/\/elbsolutions.com\/projects\/registry-comparing-tool\/\" target=\"_blank\" rel=\"noopener noreferrer\">RegShot to see the registry items<\/a> to learn what to google next<\/p>\n<p><!--more-->Microsoft has set up MASSIVE hoops to jump through yet again.\u00a0You have to sign your project with a strong name and to learn how to do that &#8230; follow the links under the section How to Make a Strong Name &#8230; or cheat like I did.<\/p>\n<ul>\n<li>go to your project&#8217;s Properties and click on Signing.<\/li>\n<li>On the bottom section: check &#8220;Sign the Assembly&#8221;\n<ul>\n<li>in the pulldown &#8211; choose &lt;new&gt;<\/li>\n<li>Make a good file name and end it with &#8220;0&#8221;\n<ul>\n<li>and assign a password<\/li>\n<\/ul>\n<\/li>\n<li>Make ANOTHER one and give it the same file name and end it with &#8220;1&#8221; (same password is handy)<\/li>\n<\/ul>\n<\/li>\n<li>In the top section &#8211; click &#8220;Select from file&#8221; and choose the name ending with the 0 after entering the password<\/li>\n<li>Make sure your version control software (I am using git) allows the .pfx files to be stored. This whole excercise is to get a unique ID &#8211; not for security so the password I chose was super simple<\/li>\n<li><a href=\"http:\/\/stackoverflow.com\/a\/12530230\" target=\"_blank\" rel=\"noopener noreferrer\">Settle down the random GUID generation for your COM Class and Interface (do this to reduce mayhem)<\/a><\/li>\n<\/ul>\n<p>Then, to make the regasm command above easy I added it as a step in the InstallShield wizard &#8211; but to do that &#8230; it has to be a cscript or wscript file. I made a .vbs script file and ironically had to run it with cscript as I used a library that only cscript would use. Here is the code. Making an exe might have been easier.<\/p>\n<pre class=\"brush: vb; title: ; notranslate\" title=\"\">&amp;amp;amp;amp;lt;\/pre&amp;amp;amp;amp;gt;\r\n' bind a variabe to WScript.Shell\r\nSet WshShell = CreateObject(&quot;WScript.Shell&quot;)\r\n\r\n' define the path to the regasm.exe file\r\nRegAsmPath = &quot;c:\\Windows\\Microsoft.NET\\Framework\\v4.0.30319\\RegAsm.exe&quot;\r\nProgramDir = &quot;elbsolutions\\xladdinTest1&quot;\r\nDllFile = &quot;HplAddinAGSL.dll&quot;\r\nTlbFile = &quot;HplAddinAGSL.tlb&quot;\r\n\r\n' register the dll\r\nTotalCommand = &quot;cmd \/c &quot; &amp;amp;amp;amp;amp; RegAsmPath &amp;amp;amp;amp;amp; &quot; &quot;&quot;%ProgramFiles%\\&quot; &amp;amp;amp;amp;amp; ProgramDir&amp;amp;amp;amp;nbsp; &amp;amp;amp;amp;amp; &quot;\\&quot;&amp;amp;amp;amp;nbsp; &amp;amp;amp;amp;amp; DllFile &amp;amp;amp;amp;amp;&amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;nbsp; &quot;&quot;&quot; \/codebase \/tlb:&quot;&quot;%ProgramFiles%\\&quot; &amp;amp;amp;amp;amp; ProgramDir&amp;amp;amp;amp;nbsp; &amp;amp;amp;amp;amp; &quot;\\&quot;&amp;amp;amp;amp;nbsp; &amp;amp;amp;amp;amp; TlbFile &amp;amp;amp;amp;amp;&amp;amp;amp;amp;nbsp; &quot;&quot;&quot; 1&amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;2&amp;amp;amp;amp;gt;&quot;&quot;%ProgramFiles%\\&quot; &amp;amp;amp;amp;amp; ProgramDir&amp;amp;amp;amp;nbsp; &amp;amp;amp;amp;amp; &quot;\\registerResults.txt&quot;&quot;&quot;\r\nWshShell.run TotalCommand, 0, True\r\nSet objStdOut = WScript.StdOut\r\nWscript.StdOut.WriteLine TotalCommand\r\n\r\nSet objFS = CreateObject(&quot;Scripting.FileSystemObject&quot;)\r\nstrFile = &quot;%ProgramFiles%\\&quot; &amp;amp;amp;amp;amp; ProgramDir&amp;amp;amp;amp;nbsp; &amp;amp;amp;amp;amp; &quot;\\registerResults.txt&quot;\r\nstrFile = WshShell.ExpandEnvironmentStrings(strFile )\r\nWscript.StdOut.WriteLine strFile\r\nSet objFile = objFS.GetFile(strFile)\r\n\r\nSet ts = objFile.OpenAsTextStream(1,-2)\r\n\r\nDo Until ts.AtEndOfStream\r\nstrLine = ts.ReadLine\r\n' do something with strLine\r\nWscript.StdOut.WriteLine strLine\r\nLoop\r\n\r\nts.Close\r\n&amp;amp;amp;amp;lt;pre&amp;amp;amp;amp;gt;<\/pre>\n<h2>How to Make a Strong Name &#8211; the list of hoops<\/h2>\n<p><a href=\"https:\/\/msdn.microsoft.com\/en-us\/library\/tzat5yw6(v=vs.110).aspx\" target=\"_blank\" rel=\"noopener noreferrer\">Regasm.exe (Assembly Registration Tool)<\/a><\/p>\n<ul>\n<li><a href=\"https:\/\/msdn.microsoft.com\/en-us\/library\/wd40t7ad(v=vs.110).aspx\" target=\"_blank\" rel=\"noopener noreferrer\">Strong-Named Assemblies<\/a>\n<ul>\n<li><a href=\"https:\/\/msdn.microsoft.com\/en-us\/library\/xc31ft41(v=vs.110).aspx\" target=\"_blank\" rel=\"noopener noreferrer\">How to: Sign an Assembly with a Strong Name<\/a>\n<ul>\n<li><a href=\"https:\/\/msdn.microsoft.com\/en-us\/library\/6f05ezxy(v=vs.110).aspx\" target=\"_blank\" rel=\"noopener noreferrer\">How to: Create a Public\/Private Key Pair<\/a>\n<ul>\n<li><a href=\"https:\/\/msdn.microsoft.com\/en-us\/library\/k5b5tt23(v=vs.110).aspx\" target=\"_blank\" rel=\"noopener noreferrer\">Sn.exe (Strong Name Tool)<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2>Other Links for learning about Registry Keys and COM (or ActiveX)<\/h2>\n<ul>\n<li><a href=\"http:\/\/bettersolutions.com\/csharp\/tools\/regasm.htm\" target=\"_blank\" rel=\"noopener noreferrer\">create and register tab with regasm<\/a><\/li>\n<li><a href=\"http:\/\/digital.ni.com\/public.nsf\/allkb\/4F811A9B23F1D46E862566F700615B7A\" target=\"_blank\" rel=\"noopener noreferrer\">register .tlb<\/a><\/li>\n<li>Talk <a href=\"http:\/\/mariusbancila.ro\/blog\/2010\/06\/01\/com-and-registry\/\">about CLSID entries<\/a> , <a href=\"http:\/\/www.ewall.org\/tech\/msi\/com-registration\" target=\"_blank\" rel=\"noopener noreferrer\">and another article<\/a><\/li>\n<li><a href=\"https:\/\/msdn.microsoft.com\/en-us\/library\/windows\/desktop\/ms686589(v=vs.85).aspx\" target=\"_blank\" rel=\"noopener noreferrer\">Registering a Class at Install<\/a><\/li>\n<li><a href=\"https:\/\/msdn.microsoft.com\/en-us\/library\/windows\/desktop\/ms678477(v=vs.85).aspx\" target=\"_blank\" rel=\"noopener noreferrer\">COM Registry Keys<\/a><\/li>\n<li><a href=\"https:\/\/www.simple-talk.com\/dotnet\/visual-studio\/build-and-deploy-a-net-com-assembly\/\" target=\"_blank\" rel=\"noopener noreferrer\">COM Registry items from VS<\/a><\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>It took HOURs to figure all this out and the answer!? (see older post) The issue\u00a0that we are having is that\u00a0 the VSTO would work initated from the ribbon,\u00a0but the VBA when you added a &#8220;reference&#8221; to the .tlb file would tell you that it could not create an ActiveX object or other message saying [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1685","post","type-post","status-publish","format-standard","hentry","category-general"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How to register your tlb file for VBA use on a destination machine AND have VSTO running. SUCCESS. - ELB Solutions.com Inc.<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/elbsolutions.com\/projects\/register-tlb-file-vba-use-destination-machine-vsto-running-success\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to register your tlb file for VBA use on a destination machine AND have VSTO running. SUCCESS. - ELB Solutions.com Inc.\" \/>\n<meta property=\"og:description\" content=\"It took HOURs to figure all this out and the answer!? (see older post) The issue\u00a0that we are having is that\u00a0 the VSTO would work initated from the ribbon,\u00a0but the VBA when you added a &#8220;reference&#8221; to the .tlb file would tell you that it could not create an ActiveX object or other message saying [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/elbsolutions.com\/projects\/register-tlb-file-vba-use-destination-machine-vsto-running-success\/\" \/>\n<meta property=\"og:site_name\" content=\"ELB Solutions.com Inc.\" \/>\n<meta property=\"article:published_time\" content=\"2017-01-23T03:31:11+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-02-03T17:24:31+00:00\" \/>\n<meta name=\"author\" content=\"Etienne Bley\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Etienne Bley\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/elbsolutions.com\\\/projects\\\/register-tlb-file-vba-use-destination-machine-vsto-running-success\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/elbsolutions.com\\\/projects\\\/register-tlb-file-vba-use-destination-machine-vsto-running-success\\\/\"},\"author\":{\"name\":\"Etienne Bley\",\"@id\":\"https:\\\/\\\/elbsolutions.com\\\/projects\\\/#\\\/schema\\\/person\\\/51e717c68f4f5917c63baf88f0896c39\"},\"headline\":\"How to register your tlb file for VBA use on a destination machine AND have VSTO running. SUCCESS.\",\"datePublished\":\"2017-01-23T03:31:11+00:00\",\"dateModified\":\"2022-02-03T17:24:31+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/elbsolutions.com\\\/projects\\\/register-tlb-file-vba-use-destination-machine-vsto-running-success\\\/\"},\"wordCount\":843,\"articleSection\":[\"General\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/elbsolutions.com\\\/projects\\\/register-tlb-file-vba-use-destination-machine-vsto-running-success\\\/\",\"url\":\"https:\\\/\\\/elbsolutions.com\\\/projects\\\/register-tlb-file-vba-use-destination-machine-vsto-running-success\\\/\",\"name\":\"How to register your tlb file for VBA use on a destination machine AND have VSTO running. SUCCESS. - ELB Solutions.com Inc.\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/elbsolutions.com\\\/projects\\\/#website\"},\"datePublished\":\"2017-01-23T03:31:11+00:00\",\"dateModified\":\"2022-02-03T17:24:31+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/elbsolutions.com\\\/projects\\\/#\\\/schema\\\/person\\\/51e717c68f4f5917c63baf88f0896c39\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/elbsolutions.com\\\/projects\\\/register-tlb-file-vba-use-destination-machine-vsto-running-success\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/elbsolutions.com\\\/projects\\\/register-tlb-file-vba-use-destination-machine-vsto-running-success\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/elbsolutions.com\\\/projects\\\/register-tlb-file-vba-use-destination-machine-vsto-running-success\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/elbsolutions.com\\\/projects\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to register your tlb file for VBA use on a destination machine AND have VSTO running. SUCCESS.\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/elbsolutions.com\\\/projects\\\/#website\",\"url\":\"https:\\\/\\\/elbsolutions.com\\\/projects\\\/\",\"name\":\"ELB Solutions.com Inc.\",\"description\":\"Bringing all your IT Pieces together\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/elbsolutions.com\\\/projects\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/elbsolutions.com\\\/projects\\\/#\\\/schema\\\/person\\\/51e717c68f4f5917c63baf88f0896c39\",\"name\":\"Etienne Bley\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f8971dfb65b25b768415568f83247df4057f15d037137e386928a804e2c997b9?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f8971dfb65b25b768415568f83247df4057f15d037137e386928a804e2c997b9?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f8971dfb65b25b768415568f83247df4057f15d037137e386928a804e2c997b9?s=96&d=mm&r=g\",\"caption\":\"Etienne Bley\"},\"url\":\"https:\\\/\\\/elbsolutions.com\\\/projects\\\/author\\\/etienne-bley\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to register your tlb file for VBA use on a destination machine AND have VSTO running. SUCCESS. - ELB Solutions.com Inc.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/elbsolutions.com\/projects\/register-tlb-file-vba-use-destination-machine-vsto-running-success\/","og_locale":"en_US","og_type":"article","og_title":"How to register your tlb file for VBA use on a destination machine AND have VSTO running. SUCCESS. - ELB Solutions.com Inc.","og_description":"It took HOURs to figure all this out and the answer!? (see older post) The issue\u00a0that we are having is that\u00a0 the VSTO would work initated from the ribbon,\u00a0but the VBA when you added a &#8220;reference&#8221; to the .tlb file would tell you that it could not create an ActiveX object or other message saying [&hellip;]","og_url":"https:\/\/elbsolutions.com\/projects\/register-tlb-file-vba-use-destination-machine-vsto-running-success\/","og_site_name":"ELB Solutions.com Inc.","article_published_time":"2017-01-23T03:31:11+00:00","article_modified_time":"2022-02-03T17:24:31+00:00","author":"Etienne Bley","twitter_misc":{"Written by":"Etienne Bley","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/elbsolutions.com\/projects\/register-tlb-file-vba-use-destination-machine-vsto-running-success\/#article","isPartOf":{"@id":"https:\/\/elbsolutions.com\/projects\/register-tlb-file-vba-use-destination-machine-vsto-running-success\/"},"author":{"name":"Etienne Bley","@id":"https:\/\/elbsolutions.com\/projects\/#\/schema\/person\/51e717c68f4f5917c63baf88f0896c39"},"headline":"How to register your tlb file for VBA use on a destination machine AND have VSTO running. SUCCESS.","datePublished":"2017-01-23T03:31:11+00:00","dateModified":"2022-02-03T17:24:31+00:00","mainEntityOfPage":{"@id":"https:\/\/elbsolutions.com\/projects\/register-tlb-file-vba-use-destination-machine-vsto-running-success\/"},"wordCount":843,"articleSection":["General"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/elbsolutions.com\/projects\/register-tlb-file-vba-use-destination-machine-vsto-running-success\/","url":"https:\/\/elbsolutions.com\/projects\/register-tlb-file-vba-use-destination-machine-vsto-running-success\/","name":"How to register your tlb file for VBA use on a destination machine AND have VSTO running. SUCCESS. - ELB Solutions.com Inc.","isPartOf":{"@id":"https:\/\/elbsolutions.com\/projects\/#website"},"datePublished":"2017-01-23T03:31:11+00:00","dateModified":"2022-02-03T17:24:31+00:00","author":{"@id":"https:\/\/elbsolutions.com\/projects\/#\/schema\/person\/51e717c68f4f5917c63baf88f0896c39"},"breadcrumb":{"@id":"https:\/\/elbsolutions.com\/projects\/register-tlb-file-vba-use-destination-machine-vsto-running-success\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/elbsolutions.com\/projects\/register-tlb-file-vba-use-destination-machine-vsto-running-success\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/elbsolutions.com\/projects\/register-tlb-file-vba-use-destination-machine-vsto-running-success\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/elbsolutions.com\/projects\/"},{"@type":"ListItem","position":2,"name":"How to register your tlb file for VBA use on a destination machine AND have VSTO running. SUCCESS."}]},{"@type":"WebSite","@id":"https:\/\/elbsolutions.com\/projects\/#website","url":"https:\/\/elbsolutions.com\/projects\/","name":"ELB Solutions.com Inc.","description":"Bringing all your IT Pieces together","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/elbsolutions.com\/projects\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/elbsolutions.com\/projects\/#\/schema\/person\/51e717c68f4f5917c63baf88f0896c39","name":"Etienne Bley","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/f8971dfb65b25b768415568f83247df4057f15d037137e386928a804e2c997b9?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/f8971dfb65b25b768415568f83247df4057f15d037137e386928a804e2c997b9?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f8971dfb65b25b768415568f83247df4057f15d037137e386928a804e2c997b9?s=96&d=mm&r=g","caption":"Etienne Bley"},"url":"https:\/\/elbsolutions.com\/projects\/author\/etienne-bley\/"}]}},"_links":{"self":[{"href":"https:\/\/elbsolutions.com\/projects\/wp-json\/wp\/v2\/posts\/1685","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/elbsolutions.com\/projects\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/elbsolutions.com\/projects\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/elbsolutions.com\/projects\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/elbsolutions.com\/projects\/wp-json\/wp\/v2\/comments?post=1685"}],"version-history":[{"count":13,"href":"https:\/\/elbsolutions.com\/projects\/wp-json\/wp\/v2\/posts\/1685\/revisions"}],"predecessor-version":[{"id":2684,"href":"https:\/\/elbsolutions.com\/projects\/wp-json\/wp\/v2\/posts\/1685\/revisions\/2684"}],"wp:attachment":[{"href":"https:\/\/elbsolutions.com\/projects\/wp-json\/wp\/v2\/media?parent=1685"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/elbsolutions.com\/projects\/wp-json\/wp\/v2\/categories?post=1685"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/elbsolutions.com\/projects\/wp-json\/wp\/v2\/tags?post=1685"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}