Proc::Memory - Peek/Poke into processes' address spaces
use Proc::Memory; my $mem = Proc::Memory->new(pid => $$); my $byte = $mem->peek(0x1000); my $u32 = $mem->read(0x1000, 4); $mem->poke(0x1000, 'L') = 12;
PEEK/POKE are a BASIC programming language extension for reading/writing memory at a specified address. This module brings similiar capability to Perl.
Eventually, Memory searching capability will also be added.
The module is a Perlish wrapper for Alien::libvas and doesn't expose any extra functionality. libvas currently supports Win32, macOS and Linux.
Constructs a new Proc::Memory instance.
Peeks at the given memory address. pack-string defaults to 'C' (A single byte)
pack-string
'C'
Pokes a given memory address. If no pack-string is given, the rvalue is written as is
Reads size bytes from given memory address.
Writes buf to addr
buf
addr
Returns a tied variable which can be used like any other variable. To be implemented
To be implemented when libvas provides it
http://github.com/athreef/Proc-Memory
libvas Alien::libvas
Ahmad Fatoum <athreef@cpan.org>, http://a3f.at
<athreef@cpan.org>
Copyright (C) 2016 Ahmad Fatoum
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
To install Proc::Memory, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Proc::Memory
CPAN shell
perl -MCPAN -e shell install Proc::Memory
For more information on module installation, please visit the detailed CPAN module installation guide.