Click here to Skip to main content
6,595,444 members and growing! (16,688 online)
Email Password   helpLost your password?
Platforms, Frameworks & Libraries » Mobile Development » General     Intermediate

Control your PC with Mobile Phone

By rasheed1979

Shutdown your PC from anywhere in this universe using mobile phone, with lesser cost.
C++, VB 6, Win Mobile, Mobile, Win2K, WinXP, Win2003, Dev
Posted:4 Jun 2004
Updated:5 Aug 2004
Views:164,349
Bookmarked:100 times
Announcements
Loading...
 
Search    
Advanced Search
Add to IE Search
printPrint   add Share
      Discuss Discuss   Broken Article?Report  
46 votes for this article.
Popularity: 5.72 Rating: 3.44 out of 5
8 votes, 17.4%
1

2
1 vote, 2.2%
3
7 votes, 15.2%
4
30 votes, 65.2%
5

Introduction

This time something different but related to mobile phone. Some times I think �can I control my PC with my mobile phone!�. After thinking for a few days I come to know that I can. This is a simple example to control your PC with your mobile phone.

I dreamed to control my PC like shutting down, sending mails, sending files, starting or stopping services etc. from any where from this universe using my mobile phone with lesser cost. Finally I did it with simple logic.

Logic behind the scene

I am having a mobile phone and I can send SMS to my mail id. My mobile phone service provider allows me to send Mail through SMS service. I will send message to my mail Id like �SHUTDOWN� (Command to shutdown machine). Assume my system is switched on and opened Outlook 2000 (I did not tried with other versions). I set Outlook to check my mail account every 60 seconds

I have written a listener application in VB. This application will be running in my system. This listener will check if any new mail is arrived to my inbox. If any new mail received then it will open the mail and check is the message is sent from my mobile phone. If it is sent from my mobile phone then it will read the command, which I sent. If the command is �SHUTDOWN� then it will fire shutdown event to the Operating system and the Operating System will shout down the PC.

Using the code

I am used Outlook as my mail client. Create an outlook application object. From that getting name space of my inbox. After that checking each unread mail is it sent from my mobile phone. If it so then it parse the message and sent it to API function.

Here is the code to parse mail

Private Function ParseMail() As String
�.
�.
  'Lets iterate through an each mail

  For Each oMails In oNpc.GetDefaultFolder(olFolderInbox).Items
    If oMails.UnRead Then
      sParam = ""
      'Change the Subject comparition string 

      'based on your service provider message

      If UCase(oMails.Subject) = UCase(Trim(txtSubject.Text)) Then
        sCommand = Mid(oMails.Body, 1, InStr(1, oMails.Body, Chr(13)) - 1)
        If InStr(1, sCommand, "~") <> 0 Then
          ParseMail =  


     
   Mid(sCommand, 1, InStr(1, sCommand,
    "~") - 1)
      sParam = 
          Mid(sCommand, InStr(1, sCommand,
      "~") +  1) Else
        ParseMail =     
           sCommand  End If
          oMails.UnRead =   False End If ' If

          Send  Unread mail Header is checked then
        send
          info  to
        mobile If
        chkUnReadMail.Value = 
       
            
       1  Then If
        UCase(oMails.Subject) <>  UCase(Trim(txtSubject.Text)) Then
          If InStr(1, sAlertedMails, Trim(oMails.EntryID)) = 0 Then
            sAlertedMails = sAlertedMails & Trim(oMails.EntryID) & ","
            sMsgHead = "From: " & oMails.SenderName & vbCrLf
            sMsgHead = sMsgHead & "Sub: " & oMails.Subject & vbCrLf
            sMsgHead = sMsgHead & "DT: " & oMails.SentOn & vbCrLf
            sMsgHead = sMsgHead & "MSGID: " & oMails.EntryID & "~"
            SendSMS sMsgHead
          End If
        End If
      End If
    End If
  Next oMails
�.
�.
End Function

I used more API functions and you can find it in www.allapi.net.

Using this application we can send commands to the system and also the system will report the status.

For example I like to know is there any new mail in my inbox then I will send command like CHECKMAIL. When the Listener receives this information then it will check count of unread mails and sends it to my mobile as SMS. Here is the code to parse mail

I thank http://www.spicesms.com Team for providing special SMS service for doing this application. I used XMLHTTP to pass the information as SMS to my Mobile.

Private Sub SendSMS(sMessage As String, 
  Optional sFrom As String = "rasheedsys")
�
�
Dim oXml As New MSXML2.XMLHTTP
    Call oXml.Open("POST", "http://www.spicesms.com/abc.asp?from=" 
      & sFrom & "&msg=" & sMessage & "~") 
        'Cange your vendor URL appropriately

  Call oXml.setRequestHeader("Content-Type", "text/xml")
  Call oXml.Send
    txtLog = txtLog & "Status of: " & "http://www.spicesms.com/abc.asp?from=" 
      & sFrom & "&msg=" & sMessage & "~" & vbCrLf
  txtLog = txtLog & oXml.responseText & vbCrLf
�
�
End Sub

Here is the Command list and it�s functionality

SHUTDOWN

If we send SMS as SHUTDOWN then the machine will get shout downed

FILELIST~Folder Path~email Id

This command receives two parameters, Folder path and email Id to which we have to send the file list.

If we know the filename and file path we can use SENDFILE command to send a file from the machine to any email Id. In case we do not know the file name and path we can use FILELIST command. This command will get list of files, which is in the particular folder or Drive.

Example

FILELIST~C:\temp~rasheed1979@hotmail.com
When this message reaches my inbox then it search Temp folder in C drive and builds file list. The same is sent to the specified email id. In our example this file will be sent to rasheed1979@hotmail.com

SENDFILE~File Name With Path~email Id

This command used to send a specific file from my system to specific email Id.

Example

SENDFILE~C:\myfile.txt~rasheed1979@hotmail.com
The file myfile.txt will be sent to the mail id rasheed1979@hotmail.com

WHO

This command used to find the user who currently logged in the machine

NETSEND~System name~Message to send

Using this command we can send message from one machine to another machine without physical presence.

Example

NETSEND~SYS1~Hi
A message Hi will be sent to the machine named SYS1

CHECKMAIL

This command used to check number of unread mails in inbox. This command counts number unread mails in inbox and sends SMS to your mobile device (I used www.spicesms.com service)

READMAILHEADER

This command used to check important information about the mail like from whom the message received, subject, Date time and message id (Used to read message).Read mail header info like From, Subject and Message id

READMSG~msgid

We can get message important detail using READMAILHEADER function. This function will returns message id. If we pass that message id like READMSG~adwerv354yjgh5fgrweg then the content of mail is sent to your mobile phone.

Using the application

You need VB runtime in your machine. I am not used any additional component in this application. You need MSXML 3.0 parser in your machine. You can find it in www.microsot.com download section

When you compile and run this application an icon will be displayed in the system tray

Right click on it to get setup screen

Click on Setup menu to view the listener configuration screen. Click on Exit to close the listener

Conclusion

We all know that we can control a PC from another PC. This is an initial approach to control PC using mobile phone. Not only controlling a PC we can get report from PC, File list, PC status, any other information stored in PC and much more. It is a beginning�

History

  • Initial version 0.1.0
  • Version 0.1.1
    • Commands Added

    • FILELIST
    • SENDFILE
    • WHO
    • NETSEND
    • CHECKMAIL
    • READMAILHEADER
    • READMSG

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here

About the Author

rasheed1979


Member
Called as Rasheed. Completed Master of Computer science. Working as Senior Consultant in Chennai, India.

Try to achive in different stream
Location: India India

Other popular Mobile Development articles:

  • Writing Your Own GPS Applications: Part 2
    In part two of the series, the author of "GPS.NET" teaches developers how to write GPS applications suitable for the real world by mastering GPS precision concepts. Source code includes a working NMEA interpreter and sample high-precision application in C# and VB.NET.
  • Writing Your Own GPS Applications: Part I
    What is it that GPS applications need to be good enough to use for in-car navigation? Also, how does the process of interpreting GPS data actually work? In this three-part series, I will cover both topics and give you the skills you need to write a commercial-grade GPS application.
  • Learn How to Find GPS Location on Any SmartPhone, and Then Make it Relevant
    A step by step tutorial for getting GPS from any SmartPhone, even without GPS built in, and then making location useful.
  • iPhone UI in Windows Mobile
    It's an interface that works with transparency effects. As a sample I used an interface just like the iPhone one. In this tutorial I am explaining how simple is working with transparency on Windows Mobile.
  • Pocket 1945 - A C# .NET CF Shooter
    An article on Pocket PC game development
Article Top
You must Sign In to use this message board.
FAQ FAQ 
 
Noise Tolerance  Layout  Per page   
 Msgs 1 to 25 of 132 (Total in Forum: 132) (Refresh)FirstPrevNext
Generalsms project Pinmemberkalaikathiravan21:47 20 Oct '09  
Generalurgent!!!!!!!!!!!!!!!!! Pinmemberkshiti kaushik5:33 7 Oct '09  
Generali have question PinmembervbEndUser23:59 18 Sep '09  
Generalproject Pinmemberamol8919:34 7 Sep '09  
Generalvery very urgent Pinmemberprathyush885:17 29 Aug '09  
GeneralRe: very very urgent Pinmemberrasheed197923:19 29 Aug '09  
GeneralRe: very very urgent Pinmemberprathyush8810:36 5 Sep '09  
GeneralRe: very very urgent Pinmemberrasheed197919:38 6 Sep '09  
Questionproject related queries(urgent) Pinmembermadhvi_0311:33 7 Aug '09  
GeneralGreat! PinmemberTomFeng21:27 30 Jul '09  
GeneralRe: Great! Pinmemberrasheed197919:43 2 Aug '09  
Questionhey! PinmemberCheri 20090:07 23 Jun '09  
AnswerRe: hey! Pinmemberrasheed197920:14 23 Jun '09  
GeneralRe: hey! PinmemberCheri 200918:57 26 Jun '09  
GeneralRe: hey! Pinmemberrasheed197919:44 28 Jun '09  
Generalplzzz [modified] Pinmembergeraia7:34 17 Jun '09  
GeneralRe: plzzz Pinmemberrasheed197920:09 23 Jun '09  
QuestionPlease help me in my project... PinmemberFiMoJa4:14 16 Jun '09  
AnswerRe: Please help me in my project... Pinmemberrasheed197920:08 23 Jun '09  
GeneralRe: Please help me in my project... PinmemberFiMoJa5:09 10 Jul '09  
GeneralRe: Please help me in my project... Pinmemberrasheed19798:04 10 Jul '09  
Generalunable to run source code.. Pinmemberanujchetan22:38 24 Apr '09  
GeneralRe: unable to run source code.. Pinmemberrasheed197923:32 28 Apr '09  
QuestionControl your pc with a mobile phone project PinmemberWassajja Kayemba Kenneth5:15 10 Mar '09  
Generalcontrol pc using mobile Pinmemberabhishek brahma18:42 28 Jan '09  

General General    News News    Question Question    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

PermaLink | Privacy | Terms of Use
Last Updated: 5 Aug 2004
Editor: Nishant Sivakumar
Copyright 2004 by rasheed1979
Everything else Copyright © CodeProject, 1999-2009
Web18 | Advertise on the Code Project