Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "Memory Scanner.h"
- INT_PTR CALLBACK ScannerCallback( HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam ) {
- switch( uMsg ) {
- case WM_INITDIALOG: {
- TCHAR* arrNames[] = { _T("Address"), _T("Value") };
- int arrColLens[] = { 120, 0 };
- CreateListViewColumns( hwndDlg, IDC_ADDRESSES, arrNames, arrColLens, 2 );
- break;
- }
- case WM_COMMAND: {
- switch( LOWORD( wParam ) ) {
- case IDC_VALUE: {
- switch( HIWORD( wParam ) ) {
- case EN_UPDATE:
- if( Button_GetCheck( GetDlgItem( hwndDlg, IDC_HEXCHECK ) ) == BST_CHECKED ) {
- TCHAR lpch[16] = {0};
- int nTextLen = Edit_GetText( ( HWND )lParam, lpch, _countof( lpch ) );
- if( nTextLen == 0 ) {
- Edit_SetText( ( HWND )lParam, NULL );
- } else {
- for( int i = 0; i < nTextLen; i++ ) {
- if( !isxdigit( lpch[i] ) ) {
- Edit_Undo( ( HWND )lParam );
- }
- }
- }
- } else {
- // CheckSize
- }
- break;
- default:
- return false;
- }
- return true;
- }
- case IDC_HEXCHECK: {
- switch( HIWORD( wParam ) ) {
- case BN_CLICKED: {
- LONG_PTR lala = GetWindowLongPtr( ( HWND )lParam, GWL_STYLE );
- LONG_PTR returnval = SetWindowLongPtr( ( HWND )lParam, GWL_STYLE, lala ^ ES_NUMBER );
- lala = 123;
- }
- default:
- return false;
- }
- return true;
- }
- case IDC_FIRSTSCAN:
- // FirstScan()
- EnableWindow( GetDlgItem( hwndDlg, IDC_FIRSTSCAN ), false );
- break;
- case IDC_NEXTSCAN:
- EnableWindow( GetDlgItem( hwndDlg, IDC_NEXTSCAN ), false );
- break;
- default:
- return false;
- }
- return true;
- }
- case WM_READY:
- EnableWindow( GetDlgItem( hwndDlg, IDC_NEXTSCAN ), true );
- break;
- case WM_CLOSE:
- EndDialog( hwndDlg, 0 );
- break;
- default:
- return false;
- }
- return true;
- }
- void init( HMODULE hLibModule ) {
- INITCOMMONCONTROLSEX iccex = {0};
- iccex.dwSize = sizeof iccex;
- iccex.dwICC = ICC_WIN95_CLASSES | ICC_LISTVIEW_CLASSES;
- if( !InitCommonControlsEx( &iccex ) ) {
- MessageBox( NULL, _T("Error registering classes from comctl32.lib"), NULL, MB_OK );
- } else if( DialogBox( hLibModule, MAKEINTRESOURCE( IDD_MEMSCANNER ), NULL, ScannerCallback ) == -1 ) {
- MessageBox( NULL, _T("Error creating main window"), NULL, MB_OK );
- }
- FreeLibraryAndExitThread( hLibModule, 0 );
- }
- BOOL WINAPI DllMain( HANDLE hinstDLL, DWORD dwReason, LPVOID lpvReserved ) {
- switch( dwReason ) {
- case DLL_PROCESS_ATTACH: {
- HANDLE hThread;
- if( hThread = CreateThread( NULL, NULL, ( LPTHREAD_START_ROUTINE )init, hinstDLL, NULL, NULL ) ) {
- CloseHandle( hThread );
- } else {
- MessageBox( NULL, _T("Error creating initial thread"), NULL, MB_OK );
- }
- break;
- }
- default:
- break;
- }
- return true;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement