Jump to content

Sky Slate Blueberry Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate
Photo

Functions Compilation [Download] Updated March 9 2006


  • Please log in to reply
39 replies to this topic
Invalid User
  • Members
  • 447 posts
  • Last active: Mar 27 2012 01:04 PM
  • Joined: 14 Feb 2005
https://ahknet.autoh...r/Functions.zip


A large compilation of functions can be downloaded at the above link. I believe it is the largest here at the forum. Thanks to the authors of these fine functions. Enjoy.

Expect to see more array functions soon.

Here is an index of the function names:
--ARRAYS--
ArrayAdd
ArrayCreate
ArrayMin
ArrayMax
ArraySwap
ArraySwapPos
ArraySet
ArrayToString

--COMMANDS--
ControlGet
ControlGetFocus
ControlGetText
DriveGet
DriveStaceFree
FileGetAttrib
FileGetSize
FileGetVersion
FileRead
FileReadLine
FileSelectFile
FileSelectFolder
FormatTime
GetKeyState
GuiControlGet
ImageSearch_X
ImageSearch_Y
IniRead
Input
InputBox
MouseGetPosCtrl
MouseGetPosWin
MouseGetPos_X
MouseGetPos_Y
PixelGetColor
PixelSearch_X
PixelSearch_Y
Random
RegRead
Run
SoundGet
SoundGetWaveVolume
StatusBarGetText
StatusBarControlSupport
---SB_Segments
---SB_Icon
---SB_Text
StringGetPos
StringLeft
StringLen
StringLower
StringMid
StringReplace
StringRight
StringTrimLeft
StringTrimRight
StringUpper
SysGet
Transform
WinGet
WinGetActiveTitle
WinGetClass
WinGetText
WinGetTitle

--Conversions/Transform--
Abs
Asc
Asc_2
BinToTxt
Chr
FormatDate
FormatYear
Hex
HexToString
HTML
RGBtoHex
StringToHex
TxtToBin

--Encryption/Hash--
RC4

--FileManagement--
IniKeyGet
IniKeyGet2
IniSectionGet

--List Manipulation--
ListAdd
ListCut
ListItem
ListKeep
ListLen
ListMerge
ListMove
ListPart
ListPos
ListReloc
ListReplace
ListRemove
ListSort
_Sort
ListSort_B
ListSplit
ListUniq

--Math--
Ceil
CommonFactor
Cos
DegToRad
DexToHex
Div
EvenOdd
ExtractInteger
ExtractInteger_A
Floor
GCD
GetRelPos
InsertInteger
InsertInteger_A
LCD
Max
Mean
Median
Min
MixNum
Mod
Mode
Pow
PriComp
RadToDeg
RandomUniqNum
Round
Sin
Sqrt

--Misc--
AhkStructLib
ControlGetHWND
CRC32
GetBattLife
LeapYear
MemGetStats
Scruct_Update
Scruct_Enum
Scruct_Mod
Scruct_New
ScructTest
ScructTest_Draw
Web
WinInView


--Screen--
DispChangeSettings
FindMatrix
GetMatrix

--String--
ExtractNum
StringDelete
StringFlip
StringGetChar
StringInsert
StringReplaceChar
SwapValues
my lame sig :)

Chris
  • Administrators
  • 10727 posts
  • Last active:
  • Joined: 02 Mar 2004
Thanks for gathering them all into one place.

Tekl
  • Members
  • 814 posts
  • Last active: May 03 2009 03:28 PM
  • Joined: 24 Sep 2004
Hi,

it's not always good to use functions. I tried to check the performance with the following script:

setbatchlines, -1

time = %A_TickCount%
Loop, 200000
{
   Random, var1, 1, 100
   var1 := var1 * 100
}
time1 := A_TickCount - time

time = %A_TickCount%
Loop, 200000
{
   var1 := Random(1,100) * 100
}
time2 := A_TickCount - time

time = %A_TickCount%
Loop, 200000
{
   Random, var1, 1, 100
   var1 *= 100
}
time3 := A_TickCount - time

time = %A_TickCount%
Loop, 200000
{
   Random, var1, 1, 100
   EnvMult, var1, 100
}
time4 := A_TickCount - time

msgbox, direct: %time1% `nfunction: %time2% `nwithout expressions: %time3% `nwith EnvMult: %time4%

Return

Random(Min="", Max="")
{
   Random, OutputVar, % Min, % Max
   Return OutputVar
}

Interesting, that EnvMult is faster than *=
Tekl

Chris
  • Administrators
  • 10727 posts
  • Last active:
  • Joined: 02 Mar 2004
Interesting benchmark. EnvMult is slightly faster than *= because the optimizer fails to remove the spaces around *=.

Therefore, you can slightly speed up *= by omitting the spaces:
var1*=100

I'll improve the optimizer so that it won't matter in the next version.

Tekl
  • Members
  • 814 posts
  • Last active: May 03 2009 03:28 PM
  • Joined: 24 Sep 2004
Whoops, without the spaces *= is now faster than EnvMult ;-)
Tekl

Chris
  • Administrators
  • 10727 posts
  • Last active:
  • Joined: 02 Mar 2004
I thought for sure the difference in benchmarks was due to the spaces, but when I checked the code it seems that the spaces are already removed. Stranger still, I can no longer produce the difference in benchmark between EnvMult and *=. They're about the same now, even with older versions of AutoHotkey.

So I'm not sure what's going on; maybe it was a fluke. Do you still see var1 *= 100 being slower than EnvMult when you run the benchmark?

corrupt
  • Members
  • 2558 posts
  • Last active: Nov 01 2014 03:23 PM
  • Joined: 29 Dec 2004

Function Compilation [Download]


Looks great. Thanks :)

polyethene
  • Members
  • 5519 posts
  • Last active: May 17 2015 06:39 AM
  • Joined: 26 Oct 2012

https://ahknet.autoh...arget=Funcs.zip

This is the wrong URL, please use the URL from the 'Open URL' link in the file manager. The reason I'm telling you this is because I got a few emails from various people telling me that they couldn't access the file.

Invalid User
  • Members
  • 447 posts
  • Last active: Mar 27 2012 01:04 PM
  • Joined: 14 Feb 2005
the open link gave me a blank page everytime I used it, so I was never able to get a different url for it. How can I correct the problem?

...in addition, could you email me the user name and pw for the acct it was posted under? or..Feel free to post it here, I dont have anything to hide, and the pw is unique to that site(which is why I forgot it)
my lame sig :)

twhyman
  • Members
  • 348 posts
  • Last active: Sep 17 2014 01:55 AM
  • Joined: 07 Dec 2005
Hi,

i have an account on autohotkey.net and i can't download the file,

is there a way to post somewhere else?

thanks

Thalon
  • Members
  • 641 posts
  • Last active: Jan 02 2017 12:17 PM
  • Joined: 12 Jul 2005
I do not know how to access anything from others. Could someone give me a little tip? I do not see any option to do this.. :oops:

Thalon

toralf
  • Moderators
  • 4035 posts
  • Last active: Aug 20 2014 04:23 PM
  • Joined: 31 Jan 2005
Yes you can, I have a a picture hosted here
https://ahknet.autoh... ... idy_v7.jpg

The owner of the file can get the link from the "Open URL" link by copying the link into clipboard. (or following that link and copying the address from your browser address bar)
Ciao
toralf
 
I use the latest AHK version (1.1.15+)
Please ask questions in forum on ahkscript.org. Why?
For online reference please use these Docs.

not-logged-in-daonlyfreez
  • Guests
  • Last active:
  • Joined: --
For your convenience, I put a mirror of the Funcs.zip up here (latest modified date is 21-08-2005, so I'm not sure if this is the latest version)

polyethene
  • Members
  • 5519 posts
  • Last active: May 17 2015 06:39 AM
  • Joined: 26 Oct 2012

the open link gave me a blank page every time I used it, so I was never able to get a different url for it. How can I correct the problem?

It's supposed to give you a blank page beacause the zip is not a HTML formatted file that the browser can display. Right click on the 'Open URL' link and select 'Copy Link Location' (for Firefox) or 'Copy Shortcut' (for IE). toralf gave an example of how a URL should look like.

I do not know how to access anything from others. Could someone give me a little tip? I do not see any option to do this..

You were able to download my XMLReader scripts :roll:
Try to disable your download managers or firewalls to see if they cause the problem. Also, try using a better browser.

i have an account on autohotkey.net and i can't download the file

You do not need to have an account to download the file (like toralf kindly demonstrated). Invalid User needs to post the correct URL. I don't think I can go into his file manager account to retrieve it for him (all passwords are md5'd).

Thalon
  • Members
  • 641 posts
  • Last active: Jan 02 2017 12:17 PM
  • Joined: 12 Jul 2005
To access foreign data I have to have always a link, which is posted by the owner (or knowing it's exact position and writing the link by hand)?

You were able to download my XMLReader scripts Rolling Eyes
Try to disable your download managers or firewalls to see if they cause the problem. Also, try using a better browser.

In your case the script was directly shown in my browser (Mozilla Firefox ;) ) and not a file to download - that's maybe also a difference..

I downloaded it from daonlyfreez.net now..

Thalon