Re: Error accessing my C# app from VBScript



Hi Nicholas,

Thanks for the information. Given that accessing a .NET app from VBScript
using GetObject is known as "accessing an out of process COM server", what
is the term for accessing it using CreateObject like it works currently?

Just trying to get my terminology straight...

Thanks again!



"Nicholas Paldino [.NET/C# MVP]" <mvp@xxxxxxxxxxxxxxxxxxxxxxxxxxx> wrote in
message news:%23HBoICMrFHA.2876@xxxxxxxxxxxxxxxxxxxxxxx
> Adam,
>
> Unfortunately, this is something you can not do with .NET. You can not
> create out-of-process COM servers with .NET. You are better off using VB6
> or another unmanaged language which will allow you to do this.
>
> Hope this helps.
>
>
> --
> - Nicholas Paldino [.NET/C# MVP]
> - mvp@xxxxxxxxxxxxxxxxxxxxxxxxxxx
>
> "AdamM" <nospam@xxxxxxxxxx> wrote in message
> news:Sf-dnQP0Qb1jXY_eRVn-vA@xxxxxxxxxxxxxx
>>I now have it working, partially.
>>
>> I can use CreateObject and create and then control the new instance of
>> the C# code with VBScript. However, I cannot use an already running
>> instance of the C# code using GetObject.
>>
>> What I am trying to do is the same as when you control an instance of MS
>> Word with VBScript using GetObject(,"Word.Application"). This command
>> doesn't actually start Word, but instead uses the instance that's already
>> open and running.
>>
>> What I changed to get it working this far was to use the
>> System.Runtime.InteropServices namspace, the
>> [InterfaceType(ComInterfaceType.InterfaceIsIDispatch)] and
>> [ClassInterface(ClassInterfaceType.None)] tags, and created a new
>> interface with the same name as the class and that begins with an
>> underscore (class interface) and did the regasm /tlb option.
>>
>> This is the last obstacle for me and I assume I am still doing something
>> wrong.
>>
>> Thanks in advance for any ideas.
>>
>> "AdamM" <nospam@xxxxxxxxxx> wrote in message
>> news:WvKdnVi1EuAxt4_eRVn-og@xxxxxxxxxxxxxx
>>> Hi all,
>>>
>>> When I run my VbScript, I get the error: "ActiveX component can't create
>>> object: 'getobject'. Error 800A01AD". Any ideas what I did wrong?
>>>
>>> Here's my VBScript:
>>> dim o
>>> set o=getobject(,"ConsoleApplication2.Program")
>>> msgbox o.TestString
>>>
>>> And here's my C# application that's running when I try to access it from
>>> VbScript:
>>> using System;
>>> using System.Collections.Generic;
>>> using System.Text;
>>> namespace ConsoleApplication2
>>> {
>>> public class Program
>>> {
>>> public string TestString = "testing 123";
>>> static void Main(string[] args)
>>> {
>>> Console.ReadLine();
>>> }
>>> }
>>> }
>>>
>>>
>>
>>
>
>


.



Relevant Pages

  • Re: VBScript component as server?
    ... a server (actX exe), but still, using getobject could be ... In order to use getobject, ... I'd like to write a VBScript that I can start with a double click, ...
    (microsoft.public.scripting.vbscript)
  • Re: can run javascript cant run vbscript - WHY
    ... client-side VBScript. ... >processing/formatting is done on the server, ... What you will need to do is set a "flag" on the client side, ...
    (microsoft.public.dotnet.languages.vb.controls)
  • Re: can run javascript cant run vbscript - WHY
    ... >> see any reasoning behind the posts, for that, I apologize. ... > about client-side VBScript. ... >>I think you are confusing my response with a response post later. ... > and during the server processing of the form's postback, ...
    (microsoft.public.dotnet.languages.vb.controls)
  • Re: can run javascript cant run vbscript - WHY
    ... It is part of the window object in the HTML DOM. ... >alert method from within a vbscript tagged script block. ... VBScript is client-side, ... and during the server processing of the form's postback, ...
    (microsoft.public.dotnet.languages.vb.controls)
  • Re: Launch batch file and pass control back to VBScript
    ... StartTime = Timer() ... This VBScript, configured to run when the server reboots, is designed ... How can I configure the VBScript or the batch file it launches to ...
    (microsoft.public.scripting.vbscript)