Hi Ron: Why would I need to call anything other than the Application Class if that is a property defined under that class? If you are saying that you set the value from within another class and that that value needs to be set you should return null or an empty string or something that is a valid return that the OS will recognize. Also, That is wierd programming. The Getter and Setter, or Letter, as the case may be if you are using them correctly, should be in the class where the Property is defined and that class and property should include the requsit validation on that property prior to sending it out. A default value would do this. As it now stands you require a user to access the methods and properties of classes you define as Private. I am not sure this is a standard Com programming technique. If my understanding of the situation is correct let me know so I do not spend allot of time trying to do something WE is not set up to do under the Microsoft Framework. I am not a Software Engineer and do not know how to use more than the basic features of the languages and Framework of the Windows Operating System.
Rick USA
----- Original Message ----- From: "Ron Parker" <r...@gwmicro.com>
To: <gw-scripting@gwmicro.com>
Sent: Friday, March 13, 2009 8:41 AM
Subject: Re: Seeking help with VB.NET program



You didn't call ClientIdentify, or if you did you passed it some value it didn't understand. The ClientInformation property will return E_FAIL in that case.

We should probably add a custom error code and return that instead, so as to make this case easier to diagnose.

Ricks Place wrote:
Hi: Could you tell me why the following returns the error I detailed?

Note that I use only the Active connection to the Application Object and It's own properties in the following statement to try and get your value, it should require no further definition within my application.

What value do you return if the property has no definition or is blank, empty or whatever?

Here is the statement in question, it is used in context below:

Dim myString As String = _

WEApp.ClientInformation.ScriptFileName.ToString()

Here is the Module:

Imports System

Imports System.Runtime.InteropServices

Imports Windoweyes

Imports System.Diagnostics

Module Module1

Sub Main()

Dim WEApp As New Windoweyes.ApplicationClass()

Dim myProcess As System.Diagnostics.Process = _

System.Diagnostics.Process.GetCurrentProcess()

Dim MyIntId As Integer = myProcess.Id

Dim MyId As Object = CObj( MyIntId )

WEApp.ClientIdentify( MyIntId )

Dim myString As String = _

WEApp.ClientInformation.ScriptFileName.ToString()

Logger.WriteLine( "My String is " & myString)

End Sub

End Module

Rick USA
----- Original Message ----- From: "Ricks Place" <ofbgm...@mi.rr.com>
To: <gw-scripting@gwmicro.com>
Sent: Thursday, March 12, 2009 8:37 PM
Subject: Re: Seeking help with VB.NET program


Ron, I did try and get them from the application object as I detailed in my post. I received the runtime error I also detailed in that post. I still do not have any better idea about what the cause of that error might have been. Tomorrow I will try some other things. I will attempt to assign the ClientInformation and MSAAEventSource Objects from the Application Object to a General Object type. Then I will attempt to simply read one of each objects properties. If that works great. Otherwise I will contact Jamal, I think he was having a similar problem, to find out if he had any success trying to fudge a solution using late binding.
But, thank you for your time and thoughtful response.
Rick USA




Reply via email to