Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Programming language in MSN/Y!/MS Office?

  1. Oct 20, 2011 #1
    My question is simple. And that is: How to find out the programming language used in creating the softwares that we use on our different platforms/architectures/instruction sets? Is there any method to find it? Is it necessary that all the windows based software use C/C++ to create softwares? Which language is preferred, in general?

    Thank you for replying.
    Last edited: Oct 20, 2011
  2. jcsd
  3. Oct 20, 2011 #2


    User Avatar
    Science Advisor

    Yes: write a polite e-mail to the publisher (although sometimes, it'll also be stated on their website). There are a multitude of compilers of various programming languages that target the Windows platform, and most have probably been used at some point to compile code. Windows (or any other OS) doesn't care what language a program was written in: just whether or not the binary code (compiled from the source code) works.
  4. Oct 20, 2011 #3
    No Java? Is it because java programs needs Java Run-time Environment(installed) to run the program that everybody gives preference to C/C++?
  5. Oct 20, 2011 #4


    User Avatar
    Science Advisor

    For development, if you are developing for something like windows, you have to understand the structure of the binary representation for programs, and then how to make calls to the various routines.

    In terms of developing for the windows platform, many of the platform functions exist in public Dynamic Link Libraries (DLL's). In fact this is the way it works for many windows programs.

    Then there are frameworks like the Component Object Model (COM) and the .NET platform. Again these have their own special representations as well as ways to interface the objects and make use of them.

    In terms of the language, you can pretty much use anything that is out there, just so long as it interfaces correctly with whatever you are trying to interface with.

    As an example of this look at the .NET platform. You can call any valid procedure from VB.NET, C#.NET, the C++.NET implementation and so on. They all reduce their code down to .NET intermediate representations, but never the less it does demonstrate what I said above.

    If you want to do some simple things within Office, you might want to use Visual Basic for Applications if that is still supported. VBA is basically Visual Basic, and with that you can do things like add functionality to spreadsheets, databases, or documents. If you know Visual Basic, then the big challenges are knowing what the states are, as well as the callbacks for the different document types.

    If you have a professional version of Office, you should be able to get access to the VBA backend if Office still has VBA support (I know it definitely used to in older versions, but I'm not sure about newer ones).
  6. Oct 21, 2011 #5


    User Avatar
    Science Advisor
    Homework Helper

    If you want to know what the source language was for a specific .exe or .dll file, try looking at it in a text editor. There are often some character strings identifying the software development system that created it.

    On unix systems, there is usually a program called "strings" which will filter out the printable characters from any file.
  7. Oct 23, 2011 #6
    Which text editor should I try?
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook