Jason Hood 33ba31ad3c Remove dependence on the CRT; import DLL; fixes
Windows 10's MSVCRT will only work if the Win32 version in the header is
0 or 10.  Some PE's use it for something else, so when the DLL is
injected the process fails.  Provide custom routines for the C functions
used, so the DLL only depends on KERNEL32.

With the DLL independent of the CRT that would mean the exe would either
also need to be independent, or the source files would need to be built
twice (or just remove a linker warning).  Another option is to export
the functions from the DLL and have the exe import them, which turned
out to simplify things quite nicely.

A process that has a really long command line would not log properly, so
double the heap to accommodate it.

If ANSICON_DEF could not be parsed the default attribute would be zero
(black on black).  Use 7 or -7 instead.
2018-05-08 12:21:28 +10:00
2010-11-15 21:51:38 +10:00
2011-03-03 17:23:45 +10:00
2017-11-29 11:42:47 +10:00
2017-11-21 11:46:58 +10:00
2017-12-30 11:13:03 +10:00
2017-12-23 22:04:44 +10:00
2017-12-30 11:13:03 +10:00
2018-04-26 10:02:58 +10:00

ANSICON Latest release

ANSICON provides ANSI escape sequences for Windows console programs. It provides much the same functionality as ANSI.SYS does for MS-DOS.

Requirements

  • 32-bit: Windows 2000 Professional and later (it won't work with NT or 9X).
  • 64-bit: AMD64 (it won't work with IA64).

How it Works

ANSICON injects a DLL into a process, hooking its functions.

Injection

One of three methods is used to inject the DLL.

  • LoadLibrary via CreateRemoteThread for a running process.

  • LdrLoadDll via CreateRemoteThread for a 64-bit .NET AnyCPU process.

  • Adding the DLL directly to the import table, otherwise.

Hooking

Hooking is achieved by modifying import addresses, or the return value of GetProcAddress.

Description
No description provided
Readme 522 KiB
v1.89 Latest
2025-01-21 16:37:28 +08:00
Languages
C 99.7%
Batchfile 0.3%