[Q] Write DLL Resource file in Visual Studio - Windows Mobile Development and Hacking General

Hi,
I have Visual Studio 2005 and i want to create a DLL that includes resources like Icons and bitmaps, so i made one and tried to compile and create the DLL (Used C++) and it gives me the error error LNK2001:.....
I thought that i must use ARM Platform or Pocket PC, because on the Project Properties is Win32 set as Platform!
Sorry i never used Visual Studio ;-)

yes if you want to compile it for pocket pc, you got to change the platform
if you only got win32, maybe you didn't install the windows mobile SDK (you will find it in microsoft website, wm6 is the lastest i think)
you got to install it, then you choose the WM platform before compile

Related

Genius 0.19

Dear All,
I have developed my first PocketPC game (see attached). It is similar to Master Mind but using numbers. This is the way we play it in Iraq
I would like some help in making an installation that automatically create a shortcut in Windows\Start Menu\Programs\Games. I am planning to publish the game as a freeware.
I am using VB .NET 2005 (.NET FX 2.0) so if I can include the re-distribution libraries that would make it easier for users, else I may need to point them at a link.
I used 2 different installtion builders but both only copy the CAB file to the Program Files but not make a shortcut for it. I have an *.inf file and haven't used the command line setup builder yet unless I have to.
Any easier way please?
ThanQ.

Visual Studio 2005 help

I am trying to reference Microsoft.windowsmobile.pocketoutlook.dll, but cannot Find it in the reference dialog . do i have to download any SDK? please help.
You need the WM 5.0 SDK .. Both SP or PPC version will work ... then you'll find the dll in the directory where the SDK is installed... normally this would be i.e.:
C:\Program files\Windows CE Tools\wce500\Windows Mobile 5.0 Pocket PC SDK\Designtimereferences
So ... just "add reference"->"Browse" ... and you'll find it at the given location
Thank you sashje

Existing dll modification in WM6/6.1

I'm starting this because (so far) I have been unable to locate enough information to allow me to try modding dll's that exist (either compiled or decompiled modules) in WM6.
I've known some users have tweaked dll's (such as the phcanoverbmp.dll as an already built or the keybddr.dll as a decompiled) and would like to gain this knowledge and have a better understanding of the steps needed to get "into" the files.
I'd like to learn more about customizing them to either add embedded images, change image paths, touch screen mapping, etc.
I've tried reverse compilers and such, but so far have been unsuccessful in my attempts.
I'm running Visual Studio 2k8 Team Suite with the Mobile 6 Pro SDK on XP SP2.
use RESHACK (freeware) to open up any exe or dll file

[Q] Decompiling exe (reverse engineer)

So i'm not familiar with creating programs at all.
I can create cabs using WinCE Cab manager that can add/edit/move/rename files and registry entries.
I found a cab and i want to know exactly what it does before i install it. I asked the author and he keeps dodging my request. I opened up the cab with WinCE Cab Manager and it installed a file (exe) and created a shortcut.
I've extracted that exe from the cab and now i want to know whats the next step i take.
I've googled and come up with 2 microsoft sites about programming for windows mobile. One utilizes .net the other visual studio.
I'm probably gonna need visual studio right? I'm having trouble downloading a trial right now from microsofts site but is my assumption correct that i'll need to use visual studio?
Any pointers would be great.
Sorry,
Wrong post.
Dear admin, please remove this post.
Thanks.

Disassemble or Reverse Engineer WM 6.5 dll

Can anyone suggest tools/utilities that would allow me to disassemble a WM 6.5 dll to reveal it's methods and parameters? In .net desktop world I can use tools like Reflector to do this, but I seem to be having difficulty doing this on WM apps.
Unregister dll - EDiT - Register dll
Here two threads discussing Developer tools & Kitchen Utilities for (ROM) Chef's;
Kitchen Utensils
60 Universal Tutorials for Customizing any Device and Cooking
Have fun, develop something nice for free and please do it here on xda-developers
There are a lot of ifs and buts to this but here goes:
If the dll was created as a .NET app, then reflector should be able to list the code within it, as it will contain the MSIL code within it. If it has been run through an obfuscator when it was built, this can mangle some of the internals and give Reflector a bit of a hard time.
Otherwise it will be a Win32/MFC/ATL object containing ARM object code. A DLL file is the same format as an exe file i.e. Microsoft's PE (Portable Executable) format. Microsoft's DUMPBIN, part of Visual Studio, (run it from the VS Command Prompt), is able to dump out the EXPORT table which lists the public functions visible in it.
There is a freeware ARM dissassembler , CHARMED, which can run on your device which can display the ARM assembly code, but to make any sense out of it, you will require a pretty good knowledge of the ARM instruction set and basic knowledge of how compilers work. If you don't know what a stack frame is, you'll struggle.
Providing a link to chARMed and C/P from that page
stephj said:
There is a freeware ARM dissassembler , CHARMED, which can run on your device which can display the ARM assembly code, but to make any sense out of it, you will require a pretty good knowledge of the ARM instruction set and basic knowledge of how compilers work. If you don't know what a stack frame is, you'll struggle.
Click to expand...
Click to collapse
Here is the link for this nice freeware ARM dissassembler;
http://sites.google.com/site/naphos/software
Requirements: Windows 98,Me,2000,XP Size: 246kb Description: ABOUT ChARMeD:
ChARMeD is a Windows Mobile / Pocket PC / Win CE (for ARM CPUs) Disassembler and Assembler
The name ChARMeD stands for:
Carolo's Hexadecimal ARM Editor and Disassembler
FEATURES:
· Disassemble a Windows CE Executable for ARM CPUs.
· Assemble instructions in ARM Assembler.
· Upload modified file to Windows CE Device.
· View MZ and PE Headers of executable.
· View Import Table of executable.
ASSEMBLER:
· Added NOP instruction 0x90909090, which is not part of the ARM instruction set, but nevertheless works because it is an undefined instruction.
· Supports all no operand instructions, Branches (Jumps) and instructions with two registers as operands.
DISASSEMBLER:
· Recognises 0x90909090 as NOP (see ASSEMBLER above)
· Supports all no operand instructions, Branches (Jumps) and double operand instructions.
ARM Classic Processors
ARM Infocenter
I think IDA is standard for this kinda reversing. If you can find a location where the DLL is called from in another app, you should be able to quickly identify at least the number and format of the parameters. Obviously you can also refer to the import/export tables for this.
V
Awsome bits of info to get me started ... thanks!!
Is a DLL signed?
And if it is, how does one know it? I use a tool from sysinternals called Sigcheck
Sigcheck
Verify that images are digitally signed and dump version information with this simple command-line utility.
One way to use the tool is to check for unsigned files in your \Windows\System32 directories with this command:
Code:
sigcheck -u -e c:\windows\system32
Though there are way more options than the example above.
As all reverse engineers/hackers or cooks you too should investigate the purpose of any files that are not signed.
Besides some nice sysinternals standard utilities, there's also;
SystemInternals_Suite
For obvious reasons I'm using not a direct link to the Suite. Therefore you need to click on it (on the left) yourself. There's a load of useful utilities there waiting to be downloaded by (would be) developers, power users and system / network administrators (are we not all).
If it is signed with a signature; you need to unsign it before editing it!
It's dead easy.
1) Copy your DLL from your phone to your PC. You may need to use ROMExtractor to do this if you have problems.
2) Unsign it using Unsigner. To do this download Unsigner and the Unsigner batch file here. Copy Unsigner, the Batch file and the dll from the phone to one directory and run the .bat file. It should tell you that the certificate has been removed.
3) Download Reshack
4) Open the dll from the phone using Reshack or the better not free PE Explorer
5) Do your editing.
6) Click Compile String at the top and then save the file.
7) Download Ssigner. Launch it and use Select File to select the DLL file you've just modified. Click Start Sign Process! When it's done check the text file that's created to make sure it signed properly.
8) Copy the file back to the Windows directory on the device using for PPC/handheld/CE free Total Commander. If necessary Reboot.
Kitchen Utils Reviewed gives links to programs a developer / cook needs!
Have fun edtinig, vewinig ,bwroisng, assilimating, copamirng and itengaritng your files,
o/~

Categories

Resources