ATTENTION: You are viewing a page formatted for mobile devices; to view the full web page, click HERE.

Main Area and Open Discussion > General Software Discussion

looking for programming language

<< < (2/3) > >>

f0dder:
How come you use those two statements related in 1 message? Or did I misunderstand and are you now looking for a more powerful language than jscript? 8)-Ath (October 10, 2011, 01:36 AM)
--- End quote ---
Ummm, JavaScript actually is pretty darn powerful (if also pretty quirky and imho not super suitable for everything) as a language - just because you normally only see it in webbrowsers with a limited standard library doesn't mean the language itself isn't powerful :)

MilesAhead:
If you want to manipulate controls on Windows apps, use database etc.. I would recommend AutoIt3.  Esp. if you are new to programming.  The syntax is very much like the Basic language. It's designed to send macros/keystrokes to windows and controls on windows.  It has SQLite library for db stuff.

http://www.autoitscript.com/site/autoit-script-editor/downloads/

Forums to get help
http://www.autoitscript.com/forum/


The weakest element may be web page interaction.  But I haven't explored that area.

Here's a "hello world" program that demonstrates displaying a messagebox and also using a For Next loop


--- ---
For $x = 1 To 3
MsgBox(0,"Hello World Program","Hello World! #" & $x & " of 3")
Next

The language and tools are free.  Also available are customized versions of SciTE editor.  You can use any editor, but the SciTE is set up to run and compile right out of the editor. Also has "intellisense" for auto completion of keywords and functions.  Functions that aren't built in or available as 3rd party scripts, such as Windows API calls that haven't been wrapped in AutoIt code, can be called using DllCall.

As example, to see if Aero Glass is enabled on Vista or Windows Seven DllCall is employed in this function


--- ---;returns non 0 if Glass is enabled on Vista/W7
Func _GlassEnabled()
$retValue = DllCall("dwmapi.dll", "int", "DwmIsCompositionEnabled", "int*", "")
If @error Then Return 0
Return $retValue[1]
EndFunc   ;==>_GlassEnabled


AutoIt3 is Windows platform only.  It requires XP or later. It also has COM Object support.  Anything you see on MS site for using stuff like Shell.Application or Scripting.Dictionary you should also be able to do easily in AutoIt3.

widgewunner:
I would second the motion recommending JavaScript (which is and will remain _everywhere_). To learn it proper-like, get and study Flanagan's The Definitive Guide. The recently released 6th edition covers the most recent JavaScript version (ECMAScript5) and all the cool new HTML5 stuff that will soon be running the net. One great thing about JavaScript is that to get started, all you need is a browser and a text editor.

That said, there's also lots of really smart folks who like Python.

Renegade:
The weakest element may be web page interaction.  But I haven't explored that area.
-MilesAhead (October 10, 2011, 03:27 PM)
--- End quote ---

If it can hook into typical C++ APIs, then it can do it. However, a lot of that stuff gets EXTREMELY messy with the shdocvw.dll and mshtml.dll/tlb. Another browser engine is likely better to use unless you know what you're doing. Again, you need to be able to hook into typical C/C++/.NET APIs/SDKs/components.

For web browser automation, I'd recommend starting with .NET and the WebBrowser in Visual Studio. It's very easy to get started with, and the .NET interface is relatively clean there. Still, it can get very messy if you need to start doing some complex things. Check my blog at RenegadeMinds.com or Cynic.me and search for "browser" as I've written a fair bit about it in the past.

kalos:
as for interacting with other GUI's, is there anything more than a Windows info tool, like http://msdn.microsoft.com/en-us/library/ms727247.aspx, that will give more information?
any language or something? for the text in controls that you see, but you cannot reveal it in your windows info tool, etc

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version