I am writting a program to programmatically change the 2nd monitor(a LCD TV connected via HDMI) to extended display. So I've had a lot of experience with doing it non-programmatically lately lol. The program is a pain in the ass but almost there.
In Windows 7 you go to Control Panel -> Appearance & Personalisation -> Display -> Click 'Change Display Settings' on the left menu -> In the 'Multiple Displays' dropdown menu select 'Duplicate these displays' to show your laptop. If you click 'Extend these displays' it will extend your desktop window so its wider and when you drag your mouse to the far right of the screen(off screen) it will appear on your TV. Extend is good for playing movies on the TV whilst doing work on your laptop.
FYI if you want to change the display programmatically and are on Windows 7 or up you can easily do it using these functions:
I would recommend learning how to make Mobile Applications, if you know how to code in C++ and have dabbled using Game API's then you will find Mobile programming easy as. You wouldn't believe how many small businesses want an app about their business, usually its nothing tricky or complex but just something that is an advertising mechanism, almost a mobile version of their website. They mostly care about the look and a feature that allows them to send users updates and information about their business. But they always want it to work on iOS and Android(sometimes Windows Mobile aswell) so its good to learn a Cross-Platform Mobile API like Mosync(which is in C++). That API was young when I used it, and compiling & distributing to iOS was intensly difficult but the API has matured and its a con I am willing to deal with if I can write one app that works on multiple platforms.
If you were to create flyers that say "I can make your small business a Smart Phone App thats looks great, is Cross-Platform and customisable" and distribute those flyers to small businesses around your area or in business parks I guarantee you will get people calling you up and you will be able to charge in the order of thosands of dollars for the app development, whereas online freelance sites you have people out for something that will take the user to Mars and only costs a couple of hundred dollars.
Distribute your flyers to cafes, clothing distributers, small trading firms, etc. I guarantee that you will get someone who has been thinking about making an app for their business but haven't acted on it yet, and most of the time the app functionality is superficial, ie nothing complex but just a good looking, interactive advertisement. I would go down this path rather than online freelance sites because you are competing with Indian Programming Firms that bid very low and IMO are produced by code monkeys. You are also dealing with people who give you a vague description of what they want, dont want to liase and meet(Skype) because they are busy and just want it done. Whereas by contacting local small businesses you can meet with them, understand what they want and build relationships where they may want you to make other programs for them(like inventory management applications). Also look into paid internships, in Australia we have something called the Australian Computing Society that advertises paid internships but they are looking for people who are currently doing university in a IT degree so if ur in high school that may not work.
The goal is to detect when a tv is connected to the computer. So I check the class guid of a newly connected device and compare it to the generic monitor guid. Maybe there's an easier way though, any ideas?