Thanks! I am getting the more excited as I go about in this, and in December when I get off college for the Winter, I have so much of this to play around with since I am learning C# for more reasons than one (WE scripting only one and more for the purposes of employment in that I can impress my potential employer in order that I can tell him/her that I solve my own accessibility problems so that discrimination will be lessened and the more likely I'll get hired). My mother too thinks it a good idea.
-----Original Message----- From: RicksPlace [mailto:[email protected]] Sent: Tuesday, November 29, 2011 11:59 AM To: [email protected] Subject: Re: how to know what to reclass controls as when encountered Hi: I'm not sure I said CSharp is obtuse but I don't have that in front of me and it isn't relevant anyway to your plan. OK: So you have the VS IDE working well enough to find your way around some of it, good. You have created a few Console type programs, ok but unless you have mucked about with Events and Event handlers you are missing critical knowledge to using WE in a VS program. When you create a Windows Project it has a default form. You can then go into that form and set a few properties in the Properties window. I usually set the size to 1000, 700 pixels, background to black and foreground to white. Then I Back Tab to the Tool Bar, still in the Properties Window, and right cursor to the Events button and click it. This gives you a list of events you can put programming code into that will get executed when that event occurs. I usually cursor to the Load Event and hit enter on it. I am placed in the Language Editor, CSharp in your case, inside a Subroutine that will get executed just before the form is displayed. So, you can put code into that event you want to execute before the form is displayed. You might put a MessageBox in there and watch it pop up before the form is displayed and when you click the OK button on the messagebox and processing will continue and the form displayed. Of course you run the project first. I go back into theForms Designer and Properties Window for the Form and navigate to the Events button and cursor to FormClosing and hit enter. Again I am placed into the Subroutine that gets executed before the Form is closed and all the objects like TextBoxes, ComboBoxes etc... are destroyed. Again I can put a message box in here and when I run the project, hit alt-f4 to close the form I see the MessageBox pop up before the Form goes away. The Load Event and FormClosing events are an example of how OOP Event Driven programming works. There are many other events and other objects have their own events you can tap into to accomplish things. More importantly a Class you build can be defined as having events related with it and this is how you will interface with WE from within a VS DotNet Program. This is an important concept in event processing and you will use this or another method to create events in your class or module that will interface with WindowEyes. Check out your books looking for the "WithEvents" Keyword or Clause. This is more advanced but you will see some methods of how you might set up a module or class with events that you can use to watch for WindowEyes events to occur so you can respond to them in your DotNet program. In the Form, the Default Form, you see they used the Handles clause to tie a block of code to the load and the FormClosing events. There are other methods and each has it's benefits and drawbacks which I can't remember at the moment - too many gray brain cells along with gray hair I guess. Anyway, build a Windows Forms Project, muck about with the Forms Designer and the Properties for the Form, a Button and perhaps a TextBox or other UI control where you can muck about with their events. The Button Control has the Click event that will be executed when you hit enter on the button when the project is run and so on and so on. Anyway, I hope this helps give you a little direction in the otherwise tangled forest. Later and good hunting Kate: Rick USA ----- Original Message ----- From: "Katherine Moss" <[email protected]> To: <[email protected]> Sent: Tuesday, November 29, 2011 10:43 AM Subject: RE: how to know what to reclass controls as when encountered I think I'm well on my way to learning right now as I have about ten to twelve working demos at the moment, and I have books and such (about 80 or so of them), helping me with all of this (com interop included). I have VS 2010 set up right now, and I haven't had trouble learning to grasp it yet considering the books include much detail about the IDE as well as the language. Now you say that C# is an obtuse language. Why do you say that? I think that once you understand what each phrasing means, it's not hard at all. But that's compared to other languages such as C++ and VB, which I find make less sense to me. But I'm learning how to do console apps at the moment moving toward forms applications. And I will learn VBS, but the problem with that is that the only resources I can find are from 2004. I need to learn that as well for another and totally unrelated thing anyway. -----Original Message----- From: RicksPlace [mailto:[email protected]] Sent: Tuesday, November 29, 2011 4:52 AM To: [email protected] Subject: Re: how to know what to reclass controls as when encountered Hi Kate: I understand your plight. The learning curve for the VS IDE and it's thousand or so windows and wizards and designers is quite a task. Add to that learning a language as obtuse as CSharp and just building coherrent logic structures, Event Driven Modular and OOP programming concepts and, oh ya, throw into the mix the very complex and hard to debug COM design and implementation requirements along with system message processing, threading and all that jazz and just this targeted path is more than can be picked up all at once in my opinion. That is without turning your hair gray and taking an AntiDepressent or two frequently. Oops, dont forget about learning how to use the WindowEyes Scripting Technicals to create the bones of a COM script and all the WE objects, properties and events and only reference documentation for the most part to work from. There are existing scripts created in VBS but that is a major diference from say a VB.net or CSharp program running under the Managed DotNet environment. If you want to get into this arena I recommend doing the following: Get your version of Visual Studio or one of the Express versions up and running: Set it up as much as you can in a static mode for easier learning of the IDE operations via the Tools>Options menu item I think it is: Create some simple programs with and without a form and, or, generate your own form utilizing the Load and some other events like FormClosing etc... You may not want to use a form in a WindowEyes script but it is the best way to break into using event processing. Next You would want to understand how to attach and process events within a class that is not a Form so you can understand the first level of a VB, or C#, COM interface like WE uses. Once you can create programs with and without forms, use events and event handlers in one of the several fashons available, you will understand how to create a module and class with events that is required as the first step in a DotNet, or other environment,script other than VBS or JavaScript. If you get this far you will want to use a simple Message Processing technique to send messages to your program and ensure it works. At this point you might consider looking at COM and how it works and after playing with it for awhile you might be ready to handle WE Scripting from within a DotNet environment if they have all the buggs worked out. Rick USA ----- Original Message ----- From: "Katherine Moss" <[email protected]> To: <[email protected]> Sent: Monday, November 28, 2011 11:19 PM Subject: RE: how to know what to reclass controls as when encountered You see, guys, the issue is that I'm leaning everywhere, and C# is just the tip of the iceburg. -----Original Message----- From: Chip Orange [mailto:[email protected]] Sent: Monday, November 28, 2011 8:23 PM To: [email protected] Subject: RE: how to know what to reclass controls as when encountered Katherine, ok; I don't believe COM interoperability is that much to learn, and there are plenty of examples and info, easily googled, and Rick has mentioned he's done this, and would probably be willing to answer your questions. The com part of scripting in .net would, in my guess, be the least of all the things you''ll need to learn; and my experience has always been, just start doing something, and you'll be surprise 6 months or a year later, how much you've learned, how much you've accomplished in that last time period. Personally, I'd appreciate someone trying out iron.com and giving us some examples of using the .net framework from VBScript if you're leaning that way. If you're interested in Python, I believe there are some apps written using it (such as the audio toolkit written by Steve Clower). I can't remember if anyone mentioned it, but there are articles in the GW wiki at http://gwmicro.com/wiki which are also designed to cover various scripting topics. hth, Chip hth, Chip -----Original Message----- From: Katherine Moss [mailto:[email protected]] Sent: Monday, November 28, 2011 7:56 PM To: [email protected] Subject: RE: how to know what to reclass controls as when encountered What I'm saying is that I'm trying to use a .net language. -----Original Message----- From: Chip Orange [mailto:[email protected]] Sent: Monday, November 28, 2011 7:51 PM To: [email protected] Subject: RE: how to know what to reclass controls as when encountered Hi again Katherine, I'm not really clear what it is you want to do; but, if you want to use the dot net framework, without the bother and overhead of using a dot net language and it's com interface to window-eyes, you could check out a app from Jamal Mazrui named IronCom demo. It allows you to use the dot net framework from VBScript, or if not allows you to do so, then demos how you go about it. hth, Chip -----Original Message----- From: Katherine Moss [mailto:[email protected]] Sent: Monday, November 28, 2011 9:25 AM To: [email protected] Subject: RE: how to know what to reclass controls as when encountered I'm not afraid of doing that since my goal is to dabble in all of the .net framework I can reach before Microsoft kills it. -----Original Message----- From: RicksPlace [mailto:[email protected]] Sent: Monday, November 28, 2011 3:31 AM To: [email protected] Subject: Re: how to know what to reclass controls as when encountered Hi Kate: If you are going to try and use a DotNet language like CSharp or VB.net or any language other than VBS or JScript COM should be something you should at least be familiar with since you will be mucking about trying to interface with WindowEyes COM objects. I tried to get a VB.net app working and did to a small extent but had message processing problems I couldn't resolve at that time. So, long story short, you should understand COM and how a CSharp Program would interface with the WE COM object so you can understand the required hooks necessary in your application and how to use the browser to find info on WE InterOp objects. Rick USA
