Sign in to follow this  
Followers 0
kestrel

"Manipulating" powershell or command prompt

13 posts in this topic

Does anyone use AutoIt with PowerShell?

I'm a somewhat experienced but still newb autoit user and what I'm thinking of doing, is just creating input fields and add some buttons to an AutoIt GUI, and then make it send commands into an open Powershell window in order to manipulate it.

Does anyone else do this with powershell? or command prompt perhaps? Is it a bad practice?

Share this post


Link to post
Share on other sites



#2 ·  Posted (edited)

The question I would ask is why mingle languages if you do not have to? You have to decide what it is you're doing in PowerShell that you cannot accomplish natively in AutoIt.

Edited by JLogan3o13

√-1 2^3 ∑ π, and it was delicious!

Share this post


Link to post
Share on other sites

I often make small applications that get used in other peoples batch files, such as SMTP from the command line.

And visa versa you can do something like:

clipput($whatever)

winactivate($hCMDwindow)

send(!{space}ep}

Share this post


Link to post
Share on other sites

#4 ·  Posted (edited)

The question I would ask is why mingle languages if you do not have to?

In my case, some coworkers refuse to learn autoit, and sometimes batch files are simply faster to put together.

Edited by DicatoroftheUSA

Share this post


Link to post
Share on other sites

In my case, some coworkers refuse to learn autoit, and sometimes batch files are simply faster to put together.

Why would your co-workers need to have any knowledge of AutoIt to run your scripts? Also, it's faster for me to cobble together an AutoIt script than a batch file, mainly because I haven't used batch files in a long time except for very basic tasks.

The point JLogan was asking was, why use 2 languages to do something that one can do all on it's own?

1 person likes this

If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

Share this post


Link to post
Share on other sites

I only used PowerShell from AutoIt once to create an Exchange mailbox. I take the input from the user, create the complete command line and execute it. This way it's easier to catch the output from PowerShell and check the result.

From what I have seen I wouldn't recommend PowerShell. It's slow, uses a lot of memory and is too complex.

Just my 0.02 $.


My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites

#7 ·  Posted (edited)

Why would your co-workers need to have any knowledge of AutoIt to run your scripts?

Because I am not the only guy who works here. Batch files are universally known here. So instead of me writing absolutely every script, I will write the scripts/tools that are not feasible from batch files for other people.

I don't know power-shell so I can't answer why you would ever use it. Honestly only the Exchange admin is the only guy who uses them, and he says it is because "he has too". I don't know enough about it to argue with him.

Edited by DicatoroftheUSA

Share this post


Link to post
Share on other sites

Sorry I forgot to mention, I use Powershell mostly for Active Directory and Microsoft Exchange 2010 tasks. Many types of things I do in PowerShell such as, updating user account/Employee fields, setting up/updating AD group permissions, granting Full Mailbox Access/SendAs permissions, getting group membership information, etc.

Instead of editing ps1 files and csv files that I import, I could just throw the values into variables in an AutoIt GUI and then have it string the commands together and send over to PowerShell.

So in an AutoIt window I could have two input boxes: 1)Employee Username and 2) Employee ID. Then a button.

I put in "JSmith" into Employee Username box, then "100101" into Employee ID, and then AutoIt would send to a Powershell window the command "Set-ADUser "JSmith" -EmployeeID "100101"

That's just a basic example but you can see how it can save time from typing in PowerShell.

As to how AutoIt can do everything PowerShell can, I do not know, but I suspect it's a little more difficult to shoehorn such functions in... I searched around but didn't find anything I could understand more easily.

Share this post


Link to post
Share on other sites

There is an and it probably uses the methods under that hood as power-shell.

Thanks, I'll experiment with this in the lab.

Share this post


Link to post
Share on other sites

So in an AutoIt window I could have two input boxes: 1)Employee Username and 2) Employee ID. Then a button.

I put in "JSmith" into Employee Username box, then "100101" into Employee ID, and then AutoIt would send to a Powershell window the command "Set-ADUser "JSmith" -EmployeeID "100101"

With my Active Directory UDF (for download please see my signature) this would be as easy as:
_AD_Open()
_AD_ModifyAttribute($sUsername, "<the name of the attribute to modify>", $sValue)
_AD_Close()

My UDFs and Tutorials:

Spoiler

UDFs:
Active Directory (NEW 2017-04-18 - Version 1.4.8.0) - Download - General Help & Support - Example Scripts - Wiki
OutlookEX (NEW 2017-02-27 - Version 1.3.1.0) - Download - General Help & Support - Example Scripts - Wiki
ExcelChart (2015-04-01 - Version 0.4.0.0) - Download - General Help & Support - Example Scripts
Excel - Example Scripts - Wiki
Word - Wiki
PowerPoint (2015-06-06 - Version 0.0.5.0) - Download - General Help & Support

Tutorials:
ADO - Wiki

 

Share this post


Link to post
Share on other sites

It would also be handy for Sharepoint automation [and manipulating SP from an autoit script].

William

Share this post


Link to post
Share on other sites

With my Active Directory UDF (for download please see my signature) this would be as easy as:

_AD_Open()
_AD_ModifyAttribute($sUsername, "<the name of the attribute to modify>", $sValue)
_AD_Close()

As opposed to the PowerShell command (modify attributes to add someone to my Chicago office):

Get-ADUser -Filter {Office -eq "Chicago"} | Set-ADUser -StreetAddress "8888 Chicago Lane City" -City "Chicago" -State "IL" -PostalCode "60066" -Country "US"

Personally, I use Water's AD UDF over Powershell every day, and have yet to find anything I can't accomplish with it.


√-1 2^3 ∑ π, and it was delicious!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0