Wikipedia:Reference desk/Archives/Computing/2009 March 30

From Wikipedia, the free encyclopedia
Computing desk
< March 29 << Feb | March | Apr >> March 31 >
Welcome to the Wikipedia Computing Reference Desk Archives
The page you are currently viewing is an archive page. While you can leave answers for any questions shown below, please ask new questions on one of the current reference desk pages.


March 30[edit]

What's the most recommended ANSI/ISO C++ compiler for Windows Vista?[edit]

I'm a beginner C++ developer, I work on Windows Vista but I need to develop cross-platform application which compiler do you recommend for me?.. Are there free ones? thanks in advance Supersonic8 (talk) 00:05, 30 March 2009 (UTC)[reply]

I suspect there are more, but two come to mind.
  • Microsoft Visual Studio Express – Although well known for developing GUI and web applications, it can also be used to develop console applications.
  • The GNU Compiler Collection - This provides command line compile capabilities, but I believe there exist integrated development environments that can be used with GCC. Perhaps someone else can add recommendations.
I believe both of these compilers support various extensions to the ANSI/ISO C++ standard, but these can be disabled and standard compliance can be enforced with an option. Also, a few years back, I don't think any available compilers were 100% standard compliant, but the shortcomings involved some of the very technical implementation details for templates, partial specialization, and separate compilation. This may no longer be the case, but if it is, I suspect you will not notice the difference at the introductory or intermediate programming level. -- Tcncv (talk) 02:44, 30 March 2009 (UTC)[reply]
While I'm sure MSVC's strict-standards mode is fine, you might enjoy being able to use the exact same compiler on all your platforms, which you can probably do with GCC, but not MSVC. Also, you'll want to stay away from single-platform APIs and use Boost or PoCo or some other cross-platform library. --Sean 13:11, 30 March 2009 (UTC)[reply]
As mentioned, for cross-platform, I suggest GCC. If by "cross-platform" you mean "Windows Vista and Windows XP", then I suggest using Microsoft's compiler since it is optimized for Windows. -- kainaw 15:15, 30 March 2009 (UTC)[reply]
MSVC is pretty much Windows/XBox-only. If you really want cross-platform (by which I mean being able to compile everything from Windows to Linux to MacOS to OLPC to Sun workstations to Nintendo DS/GameBoy to Arduino to iPhone to AndroidPhone to Lego robots) - then GCC really is the only game in town...and it's free. If you plan to use is under Windows - I recommend downloading the 'CygWin' package - which includes a GCC setup. If you plan to use Linux - then GCC is likely to be installed already. SteveBaker (talk) 02:51, 31 March 2009 (UTC)[reply]
Does GCC support compiling apps as native Windows x64 yet? Nil Einne (talk) 06:05, 31 March 2009 (UTC)[reply]
I have no clue - from a quick search - I don't think so. But I don't think I've seen an actual, practical, working Windows machine running x64 yet! I mean - they obviously exist - but every Windows system I ever encounter is 32 bit. GCC certainly can compile 64 bit binaries (I've been running 64 bit Linux exclusively at home for a couple of years now - and GCC compiles every line of code for that without any problems) - but whether there is some Windows interface issues in 64 bit, I don't know. Certainly Cygwin doesn't run natively in 64 bit Windows yet - it has to use 32 bit "WOW" emulation. But whether you could compile for a 64 bit Windows target using cross-compilation under Linux or 32 bit Windows machine or something, I have absolutely no idea. SteveBaker (talk) 03:26, 1 April 2009 (UTC)[reply]
GCC will compile to x86-64 [1] [2] but not Itanium. Dog Day Today (talk) 10:10, 1 April 2009 (UTC)[reply]

I'm referring to internetcalls; the software where you pay money and can call some countries real cheap and others free. You can store phone numbers in this software so its just a matter of clicking the green phone once the desired phone number is on display. Once the green phone is clicked, the number on display is called; the other party will then respond. After thirty seconds, I want to disconnect the phone by clicking the red phone button (which is next to the green phone so you have to move your mouse). Then, within a short time, I again want to move my mouse to the green phone and call the number. Now the recipients are a real angry bunch so if there is no voice by the first call, the phone is kept engaged on their side. So if the green phone button is clicked again, you will get a engaged tone. Ensure that within 30 seconds of the call, you disconnect by moving the mouse to the red phone button and clicking it. Repeat this for the whole day. The recipients will eventually un-engage their phone (within an hour) so since you are continually calling them, they will eventually un-engage their phone and receive the call - they will then engage their phone again.

Now this is a lot of work - to spend the whole day calling again and again. Is it possible to design something, so the procedure just designed happens automatically? I'm just interested to know whether it is possible to get the computer to do this automatically. I mean, I could have some device which presses the mouse so that the green button is pressed and the call continues - but remember, I want to call and disconnect the phone within 30 seconds of the call (to minimise money loss). Therefore, the mouse would have to move to the red phone button and back but you've also got to keep the timing in mind - the mouse has to move back and forth every 30 seconds. Does anyone know of some intelligent method to achieve it (not that I want to do it, of course, but it is some strange idea that I thought off and wondered whether it could work). No human can be at the computer. Thanks for the help and great respect for anyone who can think of a practical way to achieve this. —Preceding unsigned comment added by 58.161.138.117 (talk) 05:07, 30 March 2009 (UTC)[reply]

Could someone please inform me on this? I was interested to know if such a thing could be done (i.e basically moving and clicking the mouse automatically). I just gave an example from a particular source. —Preceding unsigned comment added by 58.161.138.117 (talk) 09:53, 30 March 2009 (UTC)[reply]
Yes, it's doable. A practical solution for this wouldn't involve the mouse at all -- it'd be accomplished with a script program. And for the record, it'd be an idiotic crime, as tracking down the culprit wouldn't be very difficult -- you'd pretty much be guaranteed to get caught. -- Captain Disdain (talk) 10:05, 30 March 2009 (UTC)[reply]
Thanks. As I said, I don't plan to do it, but just wondered whether such a prank could be accomplished. By the way, how could you do this using a script program? (What is a script program?). —Preceding unsigned comment added by 58.161.138.117 (talk) 10:45, 30 March 2009 (UTC)[reply]
In this context, a script program is basically a list of commands for a specific piece of software. In this instance, the commands would be along the lines of "dial number, wait until answer, disconnect, start the script all over again after thirty seconds". I believe Skype supports scripts, for example. In practice, the script would need to be more complex than that, of course, but you get the idea. -- Captain Disdain (talk) 12:45, 30 March 2009 (UTC)[reply]
(digressing discussion removed – 74  16:08, 31 March 2009 (UTC))[reply]

convert text to numbers[edit]

Is there any formula or facility to convert number in figures to number in words(ie. 112 should be converted to one hundred and twelve)in word or excel?. (There is a formula to convert normal numbers to roman numbers in excel.) thank you 124.43.42.154 (talk) 06:59, 30 March 2009 (UTC)[reply]

There's a site here (http://www.ozgrid.com/VBA/CurrencyToWords.htm) that shows you how through a bit of code, depends on how good you are at editing code but seems simple enough 194.221.133.226 (talk) 08:33, 30 March 2009 (UTC)[reply]

The trick is to work backwards. Start with an easier number: 123. Your output begins as "". The last 3 becomes "three". Then, the 2 is in the tens place, so you add "twenty" to make it all "twenty three". Then, the 1 is in the hundreds place, so you add "one hundred" to make it "one hundred twenty three". There are special cases to account for, such as your example of 112. Initially, the 2 will make your output "two". When you see the 1 in the tens place, you don't append to the output, you overwrite it with "twelve". Then, add "one hundred" to it to make "one hundred twelve". -- kainaw 14:15, 30 March 2009 (UTC)[reply]
I forgot to mention the use of functions in this. Consider 123456. After doing 456, you will have "four hundred fifty six". Now, you have 123 to work with. The function that you used to turn 456 into text is called again with 123. It will return "one hundred twenty three". You stick "thousand" on the end of that and append it to your output to get "one hundred twenty three thousand four hundred fifty six". -- kainaw 14:17, 30 March 2009 (UTC)[reply]
Basically - you have to get it to work reliably for 1, 2 or 3 digits - then chop your number into groups of three (starting at the right) then insert the appropriate "trillion"/"billion"/"million"/"thousand" words between each group. However, if you want to get fancy, you can turn 1,300 into either "one thousand, three hundred" or - if you are clever: "thirteen-hundred". SteveBaker (talk) 02:40, 31 March 2009 (UTC)[reply]

Help me with some download things?[edit]

I am at college and behind a proxy that does not allow me to download executables, but my personal hard drive (we get one each to use) has a virus on it which Sophos (the colleges chosen virus protection) cannot remove. I would like to download Hijack This ( [3] ) and Spybot Search and Destroy ( [4] ) to figure out what is causing it, but as I previously mentioned I cannot download exe files. I can however run them just fine and have full admin rights on the OS. Could someone please help me by downloading these two programs, putting them in a zip file (I don't have winrar), renaming the zip file, and uploading them to somewhere like Mediafire. This would be much appreceated. Gunrun (talk) 08:59, 30 March 2009 (UTC)[reply]

With our (stupid) school proxy I can simply append ?random-stuff-goes-here to the URL. As you know those are treated as parameters and are ignored by the web server (as far as I'm concerned). --wj32 t/c 09:45, 30 March 2009 (UTC)[reply]
OK, here's HijackThis: [5] --wj32 t/c 09:47, 30 March 2009 (UTC)[reply]

Much thanks Wj32. Worked like a charm although it didn't turn up anything out of the ordinary, which is worrying, as I'm almost certain I DO have a virus or something. Gunrun (talk) 10:06, 30 March 2009 (UTC)[reply]

In case you need Spybot: [6] (I couldn't use Mediafire for some reason). I'm also curious as to why HijackThis would help you. If you have a virus on your removable hard drive HijackThis wouldn't find anything because it only scans the local system configuration. Plus, it's an anti-spyware tool, not an anti-virus tool. --wj32 t/c 10:11, 30 March 2009 (UTC)[reply]
It's not a removable hard drive. I have a drive with its own OS on it, in a caddy that I place in the front of the PC. However I forgot to take the drive out one day and someone else used the PC. I use the word Virus to just mean something I don't want on the computer, adware, virus, worm, or spyware. But thankyou for Spybot. If I can't find this I will borrow a teachers install of AVG or something, but since a teacher isn't here right now I figure I'd try this first. Gunrun (talk) 10:23, 30 March 2009 (UTC)[reply]
To use the word "virus" to refer in general to any sort of threat can cause confusion. Use the term malware instead. :)--Xp54321 (Hello!Contribs) 18:28, 31 March 2009 (UTC)[reply]

monochrome TV transmitter and reciever[edit]

please help me with the block diagram and description of a monochrome TV transmitter and reciever —Preceding unsigned comment added by 117.206.32.67 (talk) 12:33, 30 March 2009 (UTC)[reply]

This looks a hell of a lot like a homework questions. If so, the correct answer is based heavily on how much detail the teacher expects. Just saying "block diagram" isn't helpful. Do you need to explain exactly how the picture is interlaced? Do you need to explain how the sync is added? Do you need to discuss the tuner on the receiver side? Because it is such a general question, I have to assume the textbook and class lecture provided the boundaries for the question. -- kainaw 14:11, 30 March 2009 (UTC)[reply]


radio waves

    – 74  16:58, 30 March 2009 (UTC)[reply]
This same question was asked in the science desk and in the help desk. Please don't do that Nil Einne (talk) 04:56, 31 March 2009 (UTC)[reply]

capital "I" in MS Word 2007[edit]

hi,

basically when I type an "I" on MS word 2007 on vista it doesn't go straight to a capital "I" when I press space. How do I fix it?

thanks, --84.69.32.176 (talk) 18:24, 30 March 2009 (UTC)[reply]

Click the Office logo in the top-left of the window > Word Options > Proofing > AutoCorrect options... > Replace i with I > Add > OK > OK — Matt Eason (Talk &#149; Contribs) 18:29, 30 March 2009 (UTC)[reply]
You should not need to do this manually (although it should work fine). Perhaps you simply has changed your language from English to another language? "i" is only replaced by "I" if the current text is in English. --Andreas Rejbrand (talk) 19:23, 30 March 2009 (UTC)[reply]

remote desktop[edit]

I need some advice on setting up a remote desktop system. I have a computer at home which I would like to be able to control via the internet from another computer. I would like to be able to see and run programs just as I would if I were at home. How can I go about this? My home computer has a dynamic ip address, and the second computer from which I would be controlling the first does not have administrate rights, if that makes any difference. Thank you for your help —Preceding unsigned comment added by 82.43.88.87 (talk) 19:20, 30 March 2009 (UTC)[reply]

VNC seems to be the first choice for Windows and Linux. Accessing your home computer remotely is complicated by the dynamic IP address, but a services like DynDNS gives us a useful target for remote access. My fave VNC client for Windows is (TightVNC, but I stick to static IPs and have not used DynDNS. / edg 19:50, 30 March 2009 (UTC)[reply]
Comparison of remote desktop software might be useful. I have used RealVNC and switched to the Remote Desktop feature of Windows for reasons that had nothing to do with performance. They're both excellent. You'll have to open some holes in your router firewall to let yourself in. Tempshill (talk) 20:30, 30 March 2009 (UTC)[reply]

Simple OSS[edit]

Through reading books I have learned the basics of C and C++ however there's only so much I can learn from books and I would therefore like to start looking at open source code to learn good programming practices etc. However another problem is finding an open source project which is isn't too complicated for me to understand at this point. So can anyone tell me about any relatively simple open source software I can look into? Thanks --212.120.248.41 (talk) 19:45, 30 March 2009 (UTC)[reply]

What you actually need to do is start writing code. That is the only way to learn; you will never learn by studying it (whether it's in books or reading source code). You can get a free version of Visual C++ at this link (or Visual C#, which I would recommend for beginners). Tempshill (talk) 20:27, 30 March 2009 (UTC)[reply]

Need to set up a generic printer but I don't have a driver[edit]

I was gifted with a dell pentium(?) running win98se. I did not receive any disks with it. I would like to set up a generic printer so that I can print to "FILE", but the machine keeps on asking me for the original disk. I can't "go to the printers manufacturers site to get an updated driver", because there is no manufacturer, and microsoft won't deign to support a legacy machine. The file I need is TTY.DRV, but I can't find it. the other files it asks for (dll and hlp files) would be nice, but I can ignore them. I've beeen looking all over the net for TTY.DRV, but I can;t find it. Any ideas? Phil_burnstein (talk) 20:13, 30 March 2009 (UTC)[reply]

CutePDF Writer is a free Windows printer driver compatible with Windows 98 and newer, which outputs PDF files. I bet it will suit your needs. You'll also need to find and install Ghostscript for it to work. Tempshill (talk) 20:51, 30 March 2009 (UTC)[reply]
Usually *any* printer driver will work (though a PostScript driver might provide more useful output). So just pretend you have an HP whatever-jet, download some PostScript drivers for it, and insist that Windows installs them despite the fact that the printer cannot be found. – 74  01:55, 31 March 2009 (UTC)[reply]


I also suggest you consider a PDF writer printer driver.
From previous experiments, I've found the "Generic / Text only" printer driver is designed for dot-matrix printers and is really only suitable for printing plain text documents. It will not print any images or graphics. Most programs aren't designed to cope with text-only printers: The proportional-spaced fonts on the screen are then poorly converted into monospaced printer text by printing letters on top of each other.
The output file is really a very simple set of printer commands and is unsuitable as a text document. (The output file may contain FF characters to start a new page, solo CR characters to return to the beginning of the current line for overprinting, and solo LF characters to go down a line without going to the beginning of the line. These control characters will work as intended when the file is transferred to a dot-matrix printer, but will have different effects in text editors.)
--Bavi H (talk) 07:11, 31 March 2009 (UTC)[reply]
PostScript is a standardized language used for all sorts of things (including printing). The resultant printer file from a PostScript driver can later be sent to most any PostScript printer, converted to a PDF, or opened in several image processing applications. I have personally used this method in the past and it works. (A PDF writer would also work, of course.) – 74  16:28, 31 March 2009 (UTC)[reply]

World Tour / Rock Band Instrument Compatibility[edit]

Hello, is there anyone out there using these instruments with the alternative game in Europe, specifically the UK. I am aware that there is a patch about to do this, I have seen joystiq's handy chart, but I heard someone moaning that it was a US patch only. Is this true?

Merci FreeMorpheme (talk) 20:21, 30 March 2009 (UTC)[reply]

Cloud Computing Confusion[edit]

Hello. I've been trying to figure out the whole Cloud Computing business, but there's something I still can't get my head around. As I understand it, all you basically need in order to use services from "The Cloud" is a web browser. If that's the case, then you could use your browser to "emulate" just about anything the "Cloud" will let you, like a game console (e.g. OnLive.com). Does this mean that html is able to "emulate" anything, as long as you have the computing power of the Cloud (not to mention a ridiculously fast Internet connection)? How is this possible? Aren't there limits to what html (or a web browser) can or cannot do? Also, is it really completely independent of the device you're using your web browser on? Does that mean that I could use, say, extremely old computers to do what even cutting-edge computers can't, thanks to the Cloud? I'm sure my questions sound pretty silly to you, but that's basically my confusion. I hope to get answers I can understand... :P Thanks in advance, Kreachure (talk) 23:09, 30 March 2009 (UTC)[reply]

The browser can only do browser things. That means HTML, Javascript, and plug-ins (Flash, etc.). So no—a browser can't emulate everything, at least, it wouldn't be able to without some heavy-duty plug-ins that spoke to it in browser-speak. --98.217.14.211 (talk) 00:27, 31 March 2009 (UTC)[reply]
There are many things that can be accomplished with HTML, javascript, and flash; and many of the things that cannot be accomplished are of questionable value in the first place (advanced 3D graphics, transparent interfaces, etc.). Keep in mind, however, that the more complex tricks in javascript and flash will require moderate processing power to run on your local machine. But the idea is that the "cloud" (a.k.a. server) provides the entirety of the functionality—no installation is required and "applications", "documents", and "sessions" can be shared across multiple machines, users, and connections. It might be considered the ultimate extension of "thin client" computing. Because resource requirements are limited, older computers and new lower-powered netbooks are quite capable of keeping up with advancements in "The Cloud" (and a true "cloud" computer could dispense with many of the costs and problems of modern computers). Ideally, when you are required to upgrade your "cloud" computer it would be as simple as pulling a new one out of a box and plugging it in—all your programs, documents, sessions, etc. on the "cloud" would be available automatically on the new computer. Such an environment would allow true commoditization of the personal computer. – 74  01:36, 31 March 2009 (UTC)[reply]
This doesn't sound like "the ultimate extension of thin client computing", it just sounds like ordinary thin client computing to me. This kind of thing has been around forever; the IBM 3270 is another example. The problem is that the user experience is almost always improved by pushing as much of the logic as possible to the client side. The latency and bandwidth limitations of real-world broadband connections are such that there's not much that benefits from being offloaded to a server, no matter how underpowered the client (except of course for big shared databases like Google's or Wikipedia's). I suspect that the appeal of this setup for companies like OnLive has to do with the fact that it's essentially an unbreakable form of DRM. You can't crack or copy software that's never present on your machine in the first place. -- BenRG (talk) 18:13, 31 March 2009 (UTC)[reply]
By "ultimate extesion of thin client computing" I meant that it's hard to get more abstract than connecting to a "cloud" of servers. Your "improved user experience" includes viruses, malware, crashes, slowdowns, a complicated upgrade cycle, and significant costs – I have no doubt that some users wouldn't feel that was an improvement. I don't think cloud computing will suit everyone (I personally would not use it) but it does provide significant advantages to a large portion of the population who want a computer that "just works" like a TV. – 74  18:28, 31 March 2009 (UTC)[reply]
It's not just bandwidth that's important but in some instances latency. OnLive in particular which has been treated with scepticism with many people asking whether it will work or latency will be too great an issue for most action games. Latency arises from two areas, one is from the connection, one is from the cloud computers and the processing (including compression in the case of OnLive) they have to do. However while many cloud computing apps do just use a web browser and normal plug ins, others e.g. OnLive will I'm pretty sure use specialised (but I presume multiplatform and open source and obviously free) software or plugins (What is the OnLive Game Service?. Nil Einne (talk) 04:53, 31 March 2009 (UTC)[reply]
Off topic, but why do you assume OnLive will open-source any of their software? They're a dot-com that claims to have 5,000 pages of patent filings. Tempshill (talk) 16:31, 31 March 2009 (UTC)[reply]
I'm a game developer - and while I can see where these guys are coming from - that latency issue is a severe and insurmountable problem. The speed of light is a harsh mistress. For 'twitch response' games - this flat out isn't going to work. Doubtless there are some clever tricks - like motion compensation done locally - that'll help with some classes of game - but I'm deeply skeptical. Also, when you see the number of computers and the bandwidth bill that YouTube need to keep all of those custom movies streaming more-or-less efficiently - and consider that these guys need to get all of that AND actually run game-quality graphics for thousand to hundreds of thousands of people simultaneously...it's a tough call. Then we have to consider resolution...I want my 1600x1200 60Hz display - I don't 640x480 - I don't want compression artifacts - I don't want lower frame rates or fuzzier images. I'd really like to use multiple monitors - or true-3D displays. I want "ClickBoom!" shooting - not "Click"...wait...wait..."Boom!". SteveBaker (talk) 02:58, 1 April 2009 (UTC)[reply]