That's weird because isn't the process name devenv.exe? From: Jamal Mazrui [mailto:[email protected]] Sent: Saturday, May 05, 2012 8:37 AM To: [email protected] Cc: RicksPlace Subject: Re: Visual Studio Express Accessibility
Hi Rick, I think the DTE object you mention is part of the VS DOM, which is only available to commercial versions of Visual Studio. UIA, however, is independent of the DOM, so works on the Express versions as well. I think the DOM and UIA are independent of each other. UIA (and MSAA) does include the ability to click, or perform the default action, on an automation object, such as a button. I'm not understanding the need to shut down processes other than your VB.NET app. Doesn't the .NET Application.Exit() method work to shut down the app? If a user launches VS, wouldn't the user be the one to close that application? Why would a Window-Eyes app be launching VS? I thought the app just gets loaded once Window-Eyes notices that VS (msenv.exe) has been launched. Jamal On 5/5/2012 8:06 AM, RicksPlace wrote: Actually the Kill process I was thinking of was for an External Script, not the IDE itself but it may pose the same problems if any processes are started due to any context or content required by the OS or compiler unknown to me. Jamal has a couple of VBS scripts that work with App Manager which may offer a conceptual solution to stop my script programatically if I can understand the technicals. The Reload Script would seem to interact with ScriptManager so it may provide the underlying technicals to click the Stop Button programatically or using a global WE Hot Key. If you know of another script that pushes a button in the ScriptManager let me know for additional research. Jamal, if you are out there, is this feasible? Rick USA ----- Original Message ----- From: RicksPlace<mailto:[email protected]> To: [email protected]<mailto:[email protected]> Sent: Saturday, May 05, 2012 6:43 AM Subject: Visual Studio Express Accessibility Hi: I was looking into shutting down a Process from within VB.net Express. To ensure all Child-processes are shut down it appears folks usually use something called the EnvDTE object. This object also gives access to the running Process so you can do things like click a button or change text in a TextBox from another Process like a WindowEyes Script. According to a member of the Microsoft Staff, a posting in a Blog, the Express Versions do not expose the EnvDTE Object to third party applications like a WindowEyes script. This was a quote Business decission on the part of Microsoft. This hampers using UIA, MSAA or any other method I know of to make the Express versions of Visual Studio much more accessible than they are already. It also has thrown a monkey wrench into my plan to Kill the running Process since Visual Studio, and I assume the Express versions, spawn other processes that may be left hanging and running if the Main Process is Killed without due process to the child processes if I read it correctly. I can still make some things much more readable with UIA, MSAA and the WE Object Model but not do much, if anything, that requires information from the Underlying Visual Studio controls or any interaction with them via a script. At least that is my understanding of the problem so far. Since Application.Exit doesnt work, it handles clean up and shut down messages while kill doesn't,perhaps the shut down of a dummy form will work as Aaron used in his original example. I either have to find a way to work around a focus problem using a dummy window if I can, figure out why Application.Exit doesn't work or find another method of shutting the script down ensuring no objects or processes are left hanging. I hope Microsoft knows this decission sucks for blind users of their free Express Versions of Visual Studio that work extremely well for sighted users. Later and I will be able to do a few things even without this missing feature in the Visual Studio Express versions. Rick USA
