Skip to content

Commit

Permalink
Merged AutoHotkey64 - COM support and x64 compatibility
Browse files Browse the repository at this point in the history
x64:
 - Re-enable GetProcAddress optimisation for DllCall.
 - Fix floating-point return values for DllCall.
 - Fix exception handling for DllCall.
 - Fix RegEx callouts.
 - Optionally compress with mpress.

COM:
 - Allow ComObjParameter to wrap 64-bit values in 32-bit builds.
 - Implement more standard ref counting conventions in ComObjActive.
 - Prevent extraneous AddRef for new ComObjects in certain cases.
 - Don't treat pdispVal == NULL return value from Invoke as an error.
 - Fail more predictably when given wrong type of object.
 - Require explicit second param in ComObjType, don't assume "IID".
 - Free local vars after ComEvent calls a function.
 - Remove pVarResult param from ComEvent; use return value instead.
 - Pass the original wrapper ComObject in each ComEvent call.
 - Add context to ComError dialog; let the buttons make more sense.

Implement common base class for Object::Enumerator/ComEnum. This covers
  syntax validation for both. Allows only Enum.Next(...) and Enum[...],
  but now allows all parameters to be omitted.

Make "Ptr" type signed again for maximum flexibility and consistency.
  Note it can't be unsigned in 64-bit builds since we don't support
  unsigned 64-bit integers.  Leave the default for NumPut/Get unsigned
  in 32-bit builds for backward-compatibility.  Seems best to make the
  default in 64-bit builds "Ptr", even though it can't be unsigned and
  therefore might seem inconsistent.
  • Loading branch information
Lexikos committed Aug 7, 2010
1 parent c3d844e commit ea860df
Show file tree
Hide file tree
Showing 48 changed files with 1,740 additions and 3,272 deletions.
43 changes: 0 additions & 43 deletions AutoHotkey.sln

This file was deleted.

Loading

0 comments on commit ea860df

Please sign in to comment.