Accessing native functions - Windows Mobile Development and Hacking General

How hard accessing native functions is for developers?
I mean, accessing camera, bluetooth, phone functions, messaging, serial communication with PC, microphone... I guess it can be done in c++, but what about other languages?
And, are there different security restrictions about native access, among WM5 and WM6?
I come from Symbian, and passing from 8.0 to 9.0, tons of security constraints have been added to the system, making virtually impossible to freeware developers to access phone functions!

Related

Disable Functions

I have a asp.net application that runs in pocket IE.
I need to deny the users access to anything but this site and also disable all other functions (apart from phone)
Can this be done ?
How ??
Ta
ASP.NET is only server technology which render pure html. Behavior of PDA client cannot be changed from server.
Although You can write application in C++ for blocking undesirable user activities on PDA, but I think that advanced user always break your protection, because of lack of native protection support in OS layer.
Is there no registry keys that can be played with ?
A competitor (and O2 partner) has told my boss that they can lock out functions.
Could they be talking crap ????
maybe they can lock from the normal user but few things can be locked from pro users
look for SPB kiosk program. http://www.spbsoftwarehouse.com/products/kioskengine/?en

Extracting ROM files for third-party development?

Now that bal666's awesome utility gives us the ability to decrypt/encrypt the NBF file, we can view and/or extract the ROM files that are normally not available to us otherwise.
One big hoopla that Windows Mobile 5.0 was supposed to have was the native ability to access the camera through their APIs, so that third-party developers could create applications without having to deal with each and every different type of camera technology in different Pocket PC and Smartphone devices.
Of course, it's apparent that HTC has still used their own software and drivers and has not given access to anyone outside of HTC. Not like Microsoft had their own Camera application (I don't know if there ever was one, but there isn't a Microsoft one on the Universal).
Developers such as ComVu with their neat PocketCaster software, are having such a difficult time making a single Windows Mobile 5.0-ready application, and have resorted to making different versions for different devices.
So... where am I going with this? Simple. Let's dump out the contents of the NK.NBF file and see if we can make our own applications with the APIs and drivers that HTC has embedded in the ROM.
I, for one, am looking forward to a internet-based videoconferencing application, much like Microsoft Portrait. Skype also announced video calls on PCs with the new version 2.0. Perhaps someone could send them some code to get video capability on the Universal?
That front-facing camera is beckoning to be used...
On a sidenote, PPL: Pocket Programming Language, allows you to easily create applications (self-contained EXE files, as a matter of fact), and also allows direct access to DLLs and APIs...
Put these two concepts together, and you can see the potential.
Create an application to...
... toggle the camera flashlight.
... do internet videoconferencing.
... do face recognition security.
Create your own camera app, phone app, game using images from the camera, etc. etc.
Another thing, though I'm not sure, but perhaps it's possible to rebuild your own ROM... remove Voice Speed Dial? Embed Voice Command, Resco Explorer, remove stupid applications or unused portions? etc. etc.
What does anyone else think about this?
BtT,
This sounds great, even having only a magician which will likely not being supported in projects like this. I still want to create my own rom with at least all the patches installed in rom. Camera & Album are taking at least 1Mb from my precious storage & apps like resco explorer are indeed must haves.
So I'm looking rorward to progress & tips in this thread & when I succeed with simple magician rom cooking I'll let you know. Don't expect any new camera apps from me, no time & no development for anymore .
Regards, M
http://research.microsoft.com/workshops/FS2005/presentations/FacultySummit_2005_Lieberman.ppt
I just realized that Windows Mobile 5 SDK contains a "common camera API" which is likely the method that third-party developers will take (or have taken) to access the camera. I have emailed Skype to see if their new 2.0 desktop version that has Video Calling can be somehow implemented on the Pocket PC, now that it is technically feasible.
I'm surprised the guys behind Microsoft Portrait haven't jumped on this yet.

HELP: Do WM5 and WM6 apps *have* to be signed?

Hi,
I asked this question over on another mobile phone forum and a user directed me here, so here goes:
Is it necessary for apps developed for Windows Mobile 5 and 6 (PPC) to be "signed" in any way in order to be installed and run? Similar to the way newer Symbian OS apps must be signed? Or can they just be developed and flat-out installed without any hassle or complication, the same way apps for regular desktop Windows PC's can be?
As a programmer/developer and also a Symbian user, I absolutely HATE the need for signing or certifying anything for it to be able to run. If it's not necessary on a laptop or desktop, it shouldn't be necessary on a phone. I am considering switching over from Symbian to WM6, but ONLY if the platform is completely free of the need for anything resembling certificates and signing.
At the very least, is there the option for the end WM6/5 user to easily change a setting within the OS so as to allow the full installation of non-signed apps? I'd settle for that. With Symbian, both developers and users are completely imprisoned by certificates and cannot do anything without the permission of the OS fascists.
Thanks for any help on this..
on WM5 default, when you try and uninstall something unsigned, you just have to tap the "yes" button to run the application, after that it remembers it for that app.
so basically for my setup (wm5/wm6) i can run anything, signed or unsigned. And there is a fix somewhere to disable the notification warning
hope that helps
and
come to the light side
Pocket PC's for the win
Thanks for your reply.. it's certainly encouraging to hear that WM5/6 is not restricted by the absolute necessity for signed certificates like Symbian is. As a programmer I completely refuse to bother developing software for a platform that handcuffs both developer and end user so mercilessly. If I can write programs in Visual Basic that will comple to an EXE and run hassle-free on any Windows PC, I don't see why I should have any less freedom when writing programs for a mobile device.
SymbianSigned and its locked OS is a deal-breaker for me. In looking through this forum though, it seems that there are in fact some components of WM that absolutely must be signed to be installed? Like skins for example? Are there any other components that fall into that category?
Still hoping to get a defnitive answer on what components of WM require mandatory signing and which ones are totally non-restrictive optional. So far my understanding is that under no circumstances do any applications ever have to be signed in order to be installed and run, no matter what kind of advanced access and functions they involve. Correct? Whereas fully integrated keyboard skins do need to be signed, for some reason. Correct?
Any other categories not covered above that do or don't require signing?
Thanks!
As far as I know the worse case scenario for signing is that you must also install your own cert. All that happens when you do this is again a warning.
As for the merits of the whole signing thing. Although I agree symbian goes too far, I think some kind of signing procedure, that is more robust should be required for windows mobile.
My preferred solution would be to have restricted functions that on install warn the user of exactly what capabilities the SW has, and allows the user to allow or restrict certain capabilities.
Simply an I trust this or that is useless as everyone ends up trusting everything as you have little choice. But given that it is easy to write SW using the RIL functions that completely unknown to the user can call expensive pay lines, download ridiculous amounts of data over gprs, or even send me personal information from your device, some security should definitely be required.
The truth is because of the ability to make expensive phone calls directly to people who will have direct financial benefit, I would argue security for a phone is at least if not more important than on the PC.
my 2 cents
WM5/WM6 editions for touch-screen devices generally come with "relaxed" security which means that third party apps don't have to be signed to execute once somebody answers yes to a first-time warning dialog box. ROM cookers here generally relax this requirement even more by setting a registry value HKLM\Security\Policies\Policies\0000101A to a 1. This disables the first-time warning message also.
However, services and device drivers generally need to be signed because they are executed before these relaxed settings take effect. Application developers generally can work around this too by starting the service/device driver themselves with a little program placed in \windows\startup
WM6/WM5 editions for devices without touch-screens generally have a higher security setting that disallows execution of any application unless it is signed.

Ways to programmatically wipe & secure a Blackberry?

I'm new to mobile device development and would like to learn more about securing mobile devices. I'd like to create an application that runs on my Blackberry pearl mobile device that can audit itpolicy security settings, lock/unlock the screen, disable bluetooth and perform a wipe of personal info without using a BES.
From what I've researched, the only applications that can be written for Blackberry are in Java. I've been reading through the api docs (http://www.blackberry.com/developers...api/index.html) to see what capabilities are possible, but it appears that there are limitations in the available api's that make it difficult to write such an application.
It appears that security settings can only be read via the net.rim.device.api.itpolicy. It seems that the only way to make changes to the security settings is via event injection class, which is unreliable since sending a series of key presses is necessary and the position of program icons can change. Does anyone have other ideas on how to make policy or settings changes on a blackberry?
I've seen ads for other software apps (e.g Roblock) that can wipe a blackberry when sms text messages are received, so I know that this is possible. Any ideas that can lead me down the right path?
sdb1031 said:
I'm new to mobile device development and would like to learn more about securing mobile devices. I'd like to create an application that runs on my Blackberry pearl mobile device that can audit itpolicy security settings, lock/unlock the screen, disable bluetooth and perform a wipe of personal info without using a BES.
From what I've researched, the only applications that can be written for Blackberry are in Java. I've been reading through the api docs (http://www.blackberry.com/developers...api/index.html) to see what capabilities are possible, but it appears that there are limitations in the available api's that make it difficult to write such an application.
It appears that security settings can only be read via the net.rim.device.api.itpolicy. It seems that the only way to make changes to the security settings is via event injection class, which is unreliable since sending a series of key presses is necessary and the position of program icons can change. Does anyone have other ideas on how to make policy or settings changes on a blackberry?
I've seen ads for other software apps (e.g Roblock) that can wipe a blackberry when sms text messages are received, so I know that this is possible. Any ideas that can lead me down the right path?
Click to expand...
Click to collapse
Unfortunately, you are in the wrong place. We only deal with Windows Mobile especially XDA (HTC) devices. Maybe you can jump ship, ditch the "suckberry" and crossover to where the "grass is greener"
djide said:
Unfortunately, you are in the wrong place. We only deal with Windows Mobile especially XDA (HTC) devices. Maybe you can jump ship, ditch the "suckberry" and crossover to where the "grass is greener"
Click to expand...
Click to collapse
Not everyone can use WM devices where they work. While this post was an attack, it does have a point. You are better off asking the question on crackberry.com's forums.
I like blackberry jam on my peanut butter and jelly sandwiches.
... or even better blackberry cobbler.... yummmy!
Just a warning to all blow-berry users
"Superstition in the UK holds that blackberries should not be picked after Michaelmas (29 September) as the devil has claimed them, having left a mark on the leaves by urinating on them. There is some value behind this legend as after this date wetter and cooler weather often allows the fruit to become infected by various molds such as Botryotinia which give the fruit an unpleasant look and may be toxic."
hehehe i love wikipedia
LOL... So your saying that after Sept 29th the blackberry grows mold and becomes deformed?!? It wasn't very usable before that either.

[Q] [Android Core] - Handling multiple data-based applications

Hi All,
I want to know how Android handles multiple applications which are data-based simultaneously. For example, one of the Android Applications might be an IM, one e-mail application, one SNS client(like Facebook client, Twitter client), but all of them can run simultaneously in Android without any hiccups. May I know how this situation is handled in Android stack?
If yes, then since Android is open-source, any pointers to suitable portion of the platform code which handles this would be perfect.
Please excuse me if I was not clear enough on my question and let me know. I'll try to explain it yet once again in a better fashion.
Thanks,
Pritam.
I really don't understand your question. Are you asking about how the OS multitasks? How the TCP/IP stack handles multiple connections? Something else?
Yes, you are right. I believe the TCP/IP stack implementation is part of the Android Stack Code. I want to know with so many Applications using data services simultaneously, how does Android keep track of the sessions and everything? A suitable pointer/reference to Android Code would be simply great.
Thanks,
Pritam.
The android is based on linux and this is all part of the core kernel networking drivers. TCP/IP on linux has been around for ever. Somehow, I think we're talking past each other.

Categories

Resources