a tech twaddler..
Well, I was browsing through the samples that come with Windows Mobile SDK and was surprised to find that they provide a process viewer! You can find the sample at the following path: <WinMob6Std_InstallDir&g... I ran the sample on the emulator and it provided much more features than the process viewer I built in the previous posts. You can view information about the modules loaded by a particular process, information about all the threads running in the process ......
Let me paste the code for ProcessViewerDlgProc function, and then we will see how each part works. Here is the code: BOOL CALLBACK ProcessViewerDlgProc(HWND hDlg, UINT uMessage, WPARAM wParam, LPARAM lParam) { int wmID, wmEvent, procCount; PAINTSTRUCT ps; HDC hdc; switch(uMessage) { case WM_INITDIALOG: { SHINITDLGINFO shidi; SHMENUBARINFO mbi; memset(&shidi, 0, sizeof(shidi)); memset(&mbi, 0, sizeof(mbi)); shidi.dwMask = SHIDIM_FLAGS; shidi.dwFlags = SHIDIF_DONEBUTTON | SHIDIF_SIPDOWN | SHIDIF_SIZEDLGFULLSCREEN ......
In this series of posts lets go about creating a simple process viewer, as promised earlier. This post is basically based around a post by Bruce Eitman. We use Toolhelp32 api's to get information about the running processes and other info too, like the process id, number of threads running in the process's context etc. I recommend reading Bruce's post before proceeding here. That will save me time from explaining the backend stuff and I can concentrate on the UI. Ok, so lets go about creating the ......
/* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0in 5.4pt 0in 5.4pt; mso-para-margin:0in; mso-para-margin-bottom:.000... mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans... mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-... mso-fareast-font-family:"Times New Roman"; ......
You can learn about Windows Mobile managed application development with the new Windows Mobile RampUp. The RampUp consists of 7 levels covering various aspects of developing and debugging managed applications for Windows Mobile devices. You can access RampUp here. I guess they will be covering the topics using C# ......
I came across this wonderful post by Joel Spolsky on characters, character sets, ANSI, ASCII, UNICODE and much much more. I have to admit that till now I thought plain text is ASCII is ANSI, all within 8-bits. And anything that takes up 2-bytes was unicode. Well, I couldn't have been more wrong! Here are a few excerpts from his entry: "All that stuff about "plain text = ascii = characters are 8 bits" is not only wrong, it's hopelessly wrong, and if you're still programming that way, you're not much ......
A small UI application for Windows Mobile 6 professional device which shows all the current running processes in the system and other details about the process like its ID, number of threads it started, etc.
Here is another very useful video by Kurt Kennet of Microsoft, this one explains how a windows ce 6.0 system boots up. Go grab a view. Here is the link:
Windows CE system start-up.
In this series of posts I will show how we can create a basic UI application for a Windows Mobile Professional device from scratch, without having to go through all the hidden stuff that the wizard does to your application (the stdafx's). And there is another reason why I would want to create an application from scratch, while porting applications, which were built using VS2005, to a BSP (in a build environment) I have faced lot of annoying problems. It throws a lot of compilation errors, and its ......
Today I was working on an application with a colleague. The application contained many dialogs, well, it was a settings related app which let the user perform and view all sort of settings on the phone. The application was medium sized with the original code very badly written. And we were supposed to clean up the code and change the look and feel of the various Dialogs used in the app. And also make sure that the same code base worked on both Standard and Professional devices, when compiled with ......
Today at work, I was working on a small application with my colleague. We had dialog box with a button, an edit control and a static control. What we wanted to do was show the status of the program on the static control once the button was pressed. And the code looked something like this: case WM_COMMAND: { wmID = LOWORD(wParam); wmEvent = HIWORD(wParam); switch(wmID) { case IDM_BUTTON_GMC: { SetWindowText(GetDlgItem(hDlg, IDC_STATIC_STATUS), L"In progress.."); /* Do some work */ SetWindowText(GetDlgItem(hDlg, ......