Developing application as background service - Windows Mobile Development and Hacking General

Hi folks
I am kinda new at c# and have only previous experience in smaller applications in c# but much more experience in php.
I want to create an application running in the background and taking as little resources as possible. The application will be triggered by an event that doesnt happen too often, but when it does happen my application will prompt the user with a messagebox.
My question is: are there any "good implementation ways" of running an application as an service om wm device?
Thankfull for any help!

Related

New programmer on pocketPC... advice?

hey guys, I'm a career developer with tons of experience in a lot of things except PocketPC. I want to play around a bit with PPC, but would like to hear about the development platforms, languages, etc. that you're using and what you like about them. I don't know anybody personally that's even remotely interested.
I'm currently using VIsualStudio2005/C# for my day job, and am pondering whether that's a good fit for PPC. A lot of documentation exists for both managed and native PPC C# code. Managed code is more like the stuff I do all day.
What I've found so far is that managed code requires runtimes to be installed (already there on WM6 i hear), there's a noticeable delay when starting a managed program, and a lot of functions are missing from the .NetCF.
I'd probably be writing business apps (database stuff, web back-end client/server, etc.) as well as hacks like today plugins, utility programs, etc.
Should I just start right out with native coding, or try and hack away with managed code. What's your opinion?
roboHaxx,
As i'm sure you're already aware of, choice of language on this environment really depends on the application you're designing.
I tend to use Visual Studio/C# for applications that I need to develop rapidly where I'm not too concerned about load times. The .NetCF libraries really helps in ensuring things get done quicker but there's a tradeoff in speed and functionality but not by too much thanks to all the new spec devices that are coming out.
If I'm developing something that doesnt need to get done faster, and I need quick loading times (like today plugins for example), I tend to stick with C (evc4).
Personally I stay away from .NET and all related stuff like it was toxic waste.
As kunz wrote it is too slow for PPC (at least for now) and if you want to use the .NET CF 2 any user with a device prier to WM 6 (which is the majority for at least another year) will have to install 5MB worth of run time.
But there are some very nice apps made with CF already out there like Hitchhiker so it defiantly has its place.
One problem though: if you want to develop system components like today plugins, keyboards (SIP) or control panel applets you will need a component written in C / C++. All those are DLLs that the system expects to export certain functions. This can not be done with managed code, and as far as I know not at all in C#.
One final recommendation: look up all threads started by Vijay555.
He wrote a pretty good summary of programing tools and options for WM devices somewhere on this forum.
Thanks for the replies. I'm think I'm starting to get a grip on this platform.
Sounds like the same principles as programming on a PC. For business apps (like in my day job), the managed, quick-to-market environments like C#, .net and CF2 prevail. But for performance, versatility and access to everything, C is the way to go. C++ if you must.
by the way, I thnk you can create DLLs in any Visual Studio language. I do it all the time with C# and VB. Now whether these DLLs can export the functions that are needed in PPC, I don't know the answer to that.
kunz, you said
If I'm developing something that doesnt need to get done faster, and I need quick loading times (like today plugins for example), I tend to stick with C (evc4).
pardon the dumb question but, what is evc4? A compiler I presume. That was going to be my next question. Which compilers do you like?
eVC is eMbedded Visual C++ 4.0 its a free C++ IDE for Windows Mobile from Microsoft.
It is almost identical to VS 6 (if you are familiar with it).
It won't except WM 5 or 6 SDKs, but any program create on it (with WM 2003 SDKs) will run on any Smartphone or Pocket PC starting with WM 2003 through WM 6.
For older versions you will need eVC 3.
The following pages should provide some useful information:
http://channel9.msdn.com/wiki/default.aspx/MobileDeveloper.HomePage
http://www.pocketpcdn.com/tools/index.html
Enjoy!
Hi,
I am programmer but I'm new in mobile development too.
I have an ideal to write a program that can speak the caller number instead of ringtone. The problem is that I don't know how to get the receiving call events.
Can we solve this situation with .net compact framework?
Anyone have documents to share?
Thanks

Application programming for HTP P3300 (ARTEMIS) and a few questions

As I'm new in this forum: Hi everybody!
I have been programming Windows CE-based devices for many years, but no experience yet with the HTC ARTEMIS (P3300). Therefore, I've a few questions and hope to get answers from this forum:
- I assume, it is possible to program visual-C++ based applications for the programme. SDK for Windows Mobile should be available at Microsoft. Is that correct?
All further questions are based on the assumption that visual-C++ (or embedded VC) is used for application development.
1. Is it possible to direclty receive incoming Short Messages (SMS) via the application? (Any keyword on how this works would also be welcome)
2. Is it possible to query the battery status from the device?
3. Can the GSM module easily be accessed and can Cell-IDs or carrier IDs be read from the device? (In particular, I want to identify the home country of the current mobile carrier) - If yes, how does it work?
4. Is it possible to restrict the appearance of the ARTEMIS. I.e., the user should only be able to access "my" application and mobile phone (voice) features. All other applications and system functions shall be hidden to the user.
Thanks in advance and kind regards,
ma_gu
yeah the stk can be downloaded and accessed from visual studio
1. i would asume so even if it had to be don with a dll hook
2. yeah many 3th party applications can display it asume there is an api call to get it
3. yeah there is an api forget the name searching in this forum should give some hits
4. yeah but if they hardreset or reflash the device it would be more troublesome
Hi Rudegar,
thanks for your fast reply. That sounds good and I think, I'll be able to find the regarding API calls (anyway, if somebody could provide some keywords, it would be very welcome).
But I have never restricted the appearance of any Windows-CE based device (question #4). How can this be done? At the beginning, I assumed that this needs rebuilding of the operating system via a system builder, but that's obviously not the case. Can you give me some hints on how to do this?
Kind regards,
ma_gu
http://forum.xda-developers.com/showthread.php?t=256646&highlight=programming
the api is called ril
depend on who you wanna develop really
1 option is making pure arm code (kinda skipping the ce) using gcc compiler for arm
2 option is the high lvl c# .net or c++ .net path but it's not that fast and dont have as much os access as pure win32 stk and even microMFC
3 option microMFC old ms class lib for c++ oop the granddad of .net you might say
4 pure win32 stk you handle the msg loop and everything more work but more power where many developrs who do today items and programs end up
if you can live with .net it's the easy path
if you want more then starting with microMFC and moving on to pure win32stk is prob the thing
java is not that well supported by wm imho
oooh yeah and you dont use platform builders and stuff like that
unless you are building roms from scratch and got access to all drivers for spc devices
you start a new project in embedded visual stuio or visual stuio 200X
and pick your path as in .net or the likes
and then you can debug using a simulator or directly on the device
it use activesync to get the exe there
otherwise you can normaly activesync the exe file to your device and run it directly
or copy it to a sd card and run it from there

starting a process on incoming call and stopping when the call is answered

Hi,
I am trying to write a small application for my WM6 phone device.
What I intend to do is :
- write the application in c#
- it will be a background application (daemon)
- starting to blink leds of my phone (I have a dll which I know how to call from within a C# app)
- stopping this process when the call is answered or the ringing state is passed
- no forms will be used (as it will be a background application which will only play with leds)
- when the exe is called a second time , it should disable itself
Unfortunately, I could not succeed a few months ago as seen here :
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2454023&SiteID=1
Then , I had some other issues to deal with and left the project. Now I want to start over, fresh...
However, I am not sure of what is the most acceptable solution for this.
As I do not want to load the CPU or memory with unneccessary processes, I want to be able to do it correctly.
Could someone show me the path ?
Please take a look at the thread that I gave the URL above. At that time we discussed this but I couldn't achieve it.
Thanks for any help, comments...
SystemState class seems to only work if you have a form based application. Which is silly I know. Basically the only solution is do dump the daemon idea and have a form based app but hide the form.
thanks for your reply.
what do you mean by "dump the daemon idea" ? do you mean I shouldn't use it ?
if I create a form based app and hide the form, which method should I use to start the process when phone starts ringing ?
p.s : english is not my native language so I may misunderstand some phrases.
yes he means forget the daemon..and i recommend using C++ as it uses less system resources plus its fast .. im currently developing my first Kitchen in C++ if u want i can work with you also
I agree with you; of course c++ is faster but it's not as easy as c#.
what do you mean by kitchen ?
I would like to work with you but my intention is just creating a simple application. This is not my job, you see ?
A kitchen is a place where you can cook your OWN ROM for your Windows Mobile Device..currently its for Himalaya Only ..check it out here
http://forum.xda-developers.com/showthread.php?t=378498
for me its not a JOB also its just my hobby ..im also a student in 12th grade
thanks for your kind offer. however, I wouldn't like to take your time for my very simple application
If you tell me the correct and easiest method to invoke my application and start its process, I can write the application. I'd just consult you if I'm stuck.
If you are also interested in this app. I can always send you the source code.
sure sure..send me the source....i am not doing much at the moment any way..except for re-writing the tools in C++..i have another useful suggestion..u can use MortScript to this but then it will be different
if you pm me your email address , I can send you the current source code.
But I am not sure if what I wrote is the best way of doing it.
by "best" I mean least cpu power used.
ather90,
did you receive my email ?
yeah i got the source..but there is a problem..you have built this on WM6 Pro SDK..not on WM5..i dnt have WM6 SDK..so i couldnt work yet..but will download it today..its better if you can switch it to WM5 SDK ( it will be same for WM6/6.1 i guess).
I don't know how to convert it to WM5 SDK.
If you tell me I can switch...
NO probs..the SDK is almost downloaded..i figured i might as well download the SDK caz i will need later
ok; waiting for your update...
any updates ?

Programming a database-driven application

Hey guys,
I've been contracted to write software for a company who is looking to have their Windows mobile phones access data on a company database. We are starting this system brand new, so the server has not been purchase, we have not decided on a DBMS, and even the programming language has not been determined (leaning towards .NET). We are in the first planning stages.
I will be using Visual Studio 2005 because they will be using Crystal Reports and because I figure it might be a little easier developing for the WM6 environment.
I would like to know if there are certain types of databases that are easier to program for WM6 .NET. We won't be implementing this feature until the rest of the system is up and running, but we want to make sure that once the company is ready, we can go ahead and write the software.
So, what type of database does everyone recommend to use for WM6 programming? Also, how exactly does the phone connect to the database? I don't suppose there's some sort of ODBC settings?
I've never programmed for WinMo before, so I appreciate everyone's help and patience!

Please help,where should I start to learn programing for android?

Hello XDA forum members.I want to be able to make my own Android applications that could work via internet.I would like to create small and simple social network with some simple functions.I'm starting with learning of programing in C++ because I always wanted to know to program in that language.But first I would like to create an application that would be used in Android.So I'm willing to learn an additional language just so I could make this idea that I have and I'm sure that I will use this knowledge in future.
So my question is in what program do you code applications for Android smartphones,what is the best way to learn it and when I learn it I want to be able to make application like Badoo(social,meeting application) Badoo is the best example of what I'm trying to do because it is downloadable application that connects to their website.Because this idea that I have will have similar interface and similar features.Please help me with your advice so I don't loose time on mistakes and trying on different languages.Thank you in advance.
Try Aide
From google play it teaches you how you can create applications.
Press thanks
Regards
banerjeeayan1996
Hello
the native language to learn for Android app is java but you should have OO notions before, like with C# (very similar) or C++.

Categories

Resources