title: How to reference type library in vbscript (typically with xshell library )
body: <p>I want to use the xshell library in vbscript , but when I used createObject() to create object it failed, how could I create an Object from the type library provided by the Xshell application?</p>
  <p>The xshell could be registered to system well, I guess, because I can add a reference in the excel vba project by 'tools-&gt;reference-&gt;&quot;Xshell 1.0 Type Library&quot;, then I can use dim xshell as xshell.ScriptHost and I can find the Xshell info from the object browser.</p>
  <p><a href="https://i.stack.imgur.com/Sy1JY.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/Sy1JY.png" alt="enter image description here" /></a></p>
  <p>I have tried oleviwer to find some information about the Xshell 1.0 Type Library, but actually I can't find the ProgID of xshell.</p>
  <p><a href="https://i.stack.imgur.com/5eWjt.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/5eWjt.png" alt="enter image description here" /></a>
  <a href="https://i.stack.imgur.com/6Znpd.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/6Znpd.png" alt="enter image description here" /></a></p>
  <p>I turn to exeScope ,and do i find something interesting
  <a href="https://i.stack.imgur.com/nNQtA.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/nNQtA.png" alt="enter image description here" /></a></p>
  <p>in the right window we can see &quot;ForceRemove {xxxx-xxxxxxxx-xxxx} = s'ScriptHost Class ....{ProgID=s'Xshell.ScriptHost.1'.... ForceRemove 'Programmable' ....}</p>
  <p>how could i cancel the force remove ?</p>
  <pre class="lang-vb prettyprint-override"><code>dim xshell 
  set xshell=CreateObject(&quot;C:\Program Files (x86)\Common Files\NetSarang\XshellCore.tlb&quot;)
  MsgBox &quot;success&quot;
  </code></pre>
  <blockquote>
  <p>run error with error code &quot;800A01AD&quot;</p>
  <p>ActiveX component could not create object</p>
  </blockquote>