|
View unanswered posts | View active topics
|
Page 1 of 1
|
[ 6 posts ] |
|
The Evolution of a Programmer
| Author |
Message |
|
DP-NiSh
Webmaster
Joined: July 30th, 2005, 5:42 pm Posts: 1469 Location: Mumbai, India Friend Code: 176288381960
|
 The Evolution of a Programmer
The Evolution of a Programmer
High School/Jr.High
First year in CollegeSenior year in CollegeNew professionalSeasoned professionalMaster Programmer |  |  |  | Code: [ uuid(2573F8F4-CFEE-101A-9A9F-00AA00342820) ] library LHello { // bring in the master library importlib("actimp.tlb"); importlib("actexp.tlb");
// bring in my interfaces #include " pshlo.idl"
[ uuid(2573F8F5-CFEE-101A-9A9F-00AA00342820) ] cotype THello { interface IHello; interface IPersistFile; }; };
[ exe, uuid(2573F890-CFEE-101A-9A9F-00AA00342820) ] module CHelloLib {
// some code related header files importheader(<windows.h>); importheader(<ole2.h>); importheader(<except.hxx>); importheader(" pshlo.h"); importheader("shlo.hxx"); importheader("mycls.hxx");
// needed typelibs importlib("actimp.tlb"); importlib("actexp.tlb"); importlib("thlo.tlb");
[ uuid(2573F891-CFEE-101A-9A9F-00AA00342820), aggregatable ] coclass CHello { cotype THello; }; };
#include "ipfix.hxx"
extern HANDLE hEvent;
class CHello : public CHelloBase { public: IPFIX(CLSID_CHello);
CHello(IUnknown *pUnk); ~CHello();
HRESULT __stdcall PrintSz(LPWSTR pwszString);
private: static int cObjRef; };
#include <windows.h> #include <ole2.h> #include <stdio.h> #include <stdlib.h> #include " thlo.h" #include "pshlo.h" #include "shlo.hxx" #include "mycls.hxx"
int CHello::cObjRef = 0;
CHello::CHello(IUnknown *pUnk) : CHelloBase(pUnk) { cObjRef++; return; }
HRESULT __stdcall CHello::PrintSz(LPWSTR pwszString) { printf("%ws\n", pwszString); return(ResultFromScode(S_OK)); }
CHello::~CHello(void) {
// when the object count goes to zero, stop the server cObjRef--; if( cObjRef == 0 ) PulseEvent(hEvent);
return; }
#include <windows.h> #include <ole2.h> #include " pshlo.h" #include " shlo.hxx" #include "mycls.hxx"
HANDLE hEvent;
int _cdecl main( int argc, char * argv[] ) { ULONG ulRef; DWORD dwRegistration; CHelloCF *pCF = new CHelloCF();
hEvent = CreateEvent(NULL, FALSE, FALSE, NULL);
// Initialize the OLE libraries CoInitializeEx(NULL, COINIT_MULTITHREADED);
CoRegisterClassObject(CLSID_CHello, pCF, CLSCTX_LOCAL_SERVER, REGCLS_MULTIPLEUSE, &dwRegistration);
// wait on an event to stop WaitForSingleObject(hEvent, INFINITE);
// revoke and release the class object CoRevokeClassObject(dwRegistration); ulRef = pCF->Release();
// Tell OLE we are going away. CoUninitialize();
return(0); }
extern CLSID CLSID_CHello; extern UUID LIBID_CHelloLib;
CLSID CLSID_CHello = { /* 2573F891-CFEE-101A-9A9F-00AA00342820 */ 0x2573F891, 0xCFEE, 0x101A, { 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 } };
UUID LIBID_CHelloLib = { /* 2573F890-CFEE-101A-9A9F-00AA00342820 */ 0x2573F890, 0xCFEE, 0x101A, { 0x9A, 0x9F, 0x00, 0xAA, 0x00, 0x34, 0x28, 0x20 } };
#include <windows.h> #include < ole2.h> #include <stdlib.h> #include <string.h> #include <stdio.h> #include " pshlo.h" #include "shlo.hxx" #include "clsid.h"
int _cdecl main( int argc, char * argv[] ) { HRESULT hRslt; IHello *pHello; ULONG ulCnt; IMoniker * pmk; WCHAR wcsT[_MAX_PATH]; WCHAR wcsPath[2 * _MAX_PATH];
// get object path wcsPath[0] = '\0'; wcsT[0] = '\0'; if( argc > 1) { mbstowcs(wcsPath, argv[1], strlen(argv[1]) + 1); wcsupr(wcsPath); } else { fprintf(stderr, "Object path must be specified\n"); return(1); }
// get print string if(argc > 2) mbstowcs(wcsT, argv[2], strlen(argv[2]) + 1); else wcscpy(wcsT, L"Hello World");
printf("Linking to object %ws\n", wcsPath); printf("Text String %ws\n", wcsT);
// Initialize the OLE libraries hRslt = CoInitializeEx(NULL, COINIT_MULTITHREADED);
if(SUCCEEDED(hRslt)) {
hRslt = CreateFileMoniker(wcsPath, &pmk); if(SUCCEEDED(hRslt)) hRslt = BindMoniker(pmk, 0, IID_IHello, (void **)&pHello);
if(SUCCEEDED(hRslt)) {
// print a string out pHello->PrintSz(wcsT);
Sleep(2000); ulCnt = pHello->Release(); } else printf("Failure to connect, status: %lx", hRslt);
// Tell OLE we are going away. CoUninitialize(); }
return(0); } |  |  |  |  |
Believe it or not, all these give the same output "Hello World"
_________________
.:.DP-NiSh.:.Admin/Webmaster, DeSiPokemon.com
|
| July 12th, 2006, 7:34 pm |
|
 |
|
Queen Rayquaza
Moderator
Joined: December 13th, 2005, 9:02 pm Posts: 221 Location: Nagpur, India
|
wwwwwwooooooowwwwwwwww!!!!!!!!!!............ thats interesting.... 
_________________
 
|
| July 12th, 2006, 9:51 pm |
|
 |
|
Apoorv Upreti
Moderator
Joined: June 2nd, 2006, 9:15 pm Posts: 244
|
Hmmm................ i saw this over the net sumwhere but i cant remember ........
Anyways  i didnt know that they all gave the same result 
_________________
|
| July 12th, 2006, 10:09 pm |
|
 |
|
DP-NiSh
Webmaster
Joined: July 30th, 2005, 5:42 pm Posts: 1469 Location: Mumbai, India Friend Code: 176288381960
|
Lol yea... the last few programs were filled with unnecessary variables and declarations not necessary. U can still have that output in 4-5 lines of code in all the cases, unless u fill it up that way. The New Professional program was written in C language, whereas the other following in C++ which is an advanced version of C with different operational commands
_________________
.:.DP-NiSh.:.Admin/Webmaster, DeSiPokemon.com
|
| July 13th, 2006, 9:20 pm |
|
 |
|
DP-NiSh
Webmaster
Joined: July 30th, 2005, 5:42 pm Posts: 1469 Location: Mumbai, India Friend Code: 176288381960
|
 Re: The Evolution of a Programmer
*cough cough.... This is a hell lot more interesting lol..
List of Hello World Programs
.... looks interesting  I'll see if I come across that assembly level lang program sumtime Lol, since I'm learning it..
_________________
.:.DP-NiSh.:.Admin/Webmaster, DeSiPokemon.com
|
| August 28th, 2006, 8:46 pm |
|
 |
|
Queen Rayquaza
Moderator
Joined: December 13th, 2005, 9:02 pm Posts: 221 Location: Nagpur, India
|
 Re: The Evolution of a Programmer
wow... now dat souinds interesting... 
_________________
 
|
| August 30th, 2006, 3:58 pm |
|
|
|
Page 1 of 1
|
[ 6 posts ] |
|
Who is online |
Users browsing this forum: No registered users |
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot post attachments in this forum
|
|