Free Games Forum
Free Games Games Forums Music Forums TV Forums

  Free Games Forum Home FORUM
HOME
Search Posts SEARCH
POSTS
Who's Online WHO'S
ONLINE
Log in LOG
IN
Rules & FAQ RULES / FAQ
REPORT SPAM

Free Games Forum: Game Technology: C++:
C++???

 

 


Crazy Eye
Enthusiast

Sep 15, 2005, 9:05 AM

Post #1 of 8 (815 views)
Shortcut
C++??? Can't Post

ok, what type of c++ do you use, and are there sites to get it? cause i know of one, but i dont know if its the right one i need?



Jaymzanator
Enthusiast


Sep 29, 2005, 5:42 AM

Post #2 of 8 (786 views)
Shortcut
Re: [Crazy Eye] C++??? [In reply to] Can't Post

no C++ is expensive but u can get FREE 3rd party compilers for once uve done it on note pad

by the way buy a studio pack instead of individual things its alot cheaper ... £100 each £150 for the studio ... i think and heres an example of my install shield for a program i made ages ago...


Code
   
////////////////////////////////////////////////////////////////////////////////
//
// IIIIIII SSSSSS
// II SS InstallShield (R)
// II SSSSSS (c) 1996-1997, InstallShield Software Corporation
// II SS (c) 1990-1996, InstallShield Corporation
// IIIIIII SSSSSS All Rights Reserved.
//
//
//
// File Name: Setup.rul
//
// Description: InstallShield script
//
//
////////////////////////////////////////////////////////////////////////////////
// Include header file
#include "sdlang.h"
#include "sddialog.h"



////////////////////// string defines ////////////////////////////

#define UNINST_LOGFILE_NAME "Uninst.isu"

//////////////////// installation declarations ///////////////////

// ----- DLL prototypes -----


// your DLL prototypes




// ---- script prototypes -----



// generated
prototype ShowDialogs();
prototype MoveFileData();
prototype HandleMoveDataError( NUMBER );
prototype ProcessBeforeDataMove();
prototype ProcessAfterDataMove();
prototype SetupRegistry();
prototype SetupFolders();
prototype CleanUpInstall();
prototype SetupInstall();
prototype SetupScreen();
prototype CheckRequirements();
prototype DialogShowSdWelcome();
prototype DialogShowSdLicense();
prototype DialogShowSdShowInfoList();
prototype DialogShowSdRegisterUserEx();
prototype DialogShowSdAskDestPath();
prototype DialogShowSdSetupType();
prototype DialogShowSdComponentDialog2();
prototype DialogShowSdSelectFolder();
prototype DialogShowSdStartCopy();
prototype DialogShowSdFinishReboot();



// your prototypes


// ----- global variables ------



// generated
BOOL bWinNT, bIsShellExplorer, bInstallAborted, bIs32BitSetup;
STRING svDir;
STRING svName, svCompany, svSerial;
STRING szAppPath;
STRING svSetupType;
LIST listStartCopy;




// your global variables




///////////////////////////////////////////////////////////////////////////////
//
// MAIN PROGRAM
//
// The setup begins here by hiding the visible setup
// window. This is done to allow all the titles, images, etc. to
// be established before showing the main window. The following
// logic then performs the setup in a series of steps.
//
///////////////////////////////////////////////////////////////////////////////
program
Disable( BACKGROUND );



CheckRequirements();

SetupInstall();

SetupScreen();

if (ShowDialogs()<0) goto end_install;

if (ProcessBeforeDataMove()<0) goto end_install;

if (MoveFileData()<0) goto end_install;

if (ProcessAfterDataMove()<0) goto end_install;

if (SetupRegistry()<0) goto end_install;

if (SetupFolders()<0) goto end_install;


end_install:



CleanUpInstall();

// If an unrecoverable error occurred, clean up the partial installation.
// Otherwise, exit normally.



if (bInstallAborted) then
abort;
endif;



endprogram

///////////////////////////////////////////////////////////////////////////////
// //
// Function: ShowDialogs //
// //
// Purpose: This function manages the display and navigation //
// the standard dialogs that exist in a setup. //
// //
///////////////////////////////////////////////////////////////////////////////
function ShowDialogs()
NUMBER nResult;
begin



Dlg_Start:
// beginning of dialogs label



Dlg_SdWelcome:
nResult = DialogShowSdWelcome();
if (nResult = BACK) goto Dlg_Start;



Dlg_SdLicense:
nResult = DialogShowSdLicense();
if (nResult = BACK) goto Dlg_SdWelcome;



Dlg_SdShowInfoList:
nResult = DialogShowSdShowInfoList();
if (nResult = BACK) goto Dlg_SdLicense;



Dlg_SdRegisterUserEx:
nResult = DialogShowSdRegisterUserEx();
if (nResult = BACK) goto Dlg_SdShowInfoList;



Dlg_SdAskDestPath:
nResult = DialogShowSdAskDestPath();
if (nResult = BACK) goto Dlg_SdRegisterUserEx;



Dlg_SdSetupType:
nResult = DialogShowSdSetupType();
if (nResult = BACK) goto Dlg_SdAskDestPath;



Dlg_SdComponentDialog2:
if ((nResult = BACK) && (svSetupType != "Custom") && (svSetupType != "")) then
goto Dlg_SdSetupType;
endif;
nResult = DialogShowSdComponentDialog2();
if (nResult = BACK) goto Dlg_SdSetupType;



Dlg_SdSelectFolder:
nResult = DialogShowSdSelectFolder();
if (nResult = BACK) goto Dlg_SdComponentDialog2;



Dlg_SdStartCopy:
nResult = DialogShowSdStartCopy();
if (nResult = BACK) goto Dlg_SdSelectFolder;



return 0;

end;

///////////////////////////////////////////////////////////////////////////////
// //
// Function: ProcessBeforeDataMove //
// //
// Purpose: This function performs any necessary operations prior to the //
// actual data move operation. //
// //
///////////////////////////////////////////////////////////////////////////////
function ProcessBeforeDataMove()
STRING svLogFile;
NUMBER nResult;
begin



InstallationInfo( @COMPANY_NAME, @PRODUCT_NAME, @PRODUCT_VERSION, @PRODUCT_KEY );

svLogFile = UNINST_LOGFILE_NAME;

nResult = DeinstallStart( svDir, svLogFile, @UNINST_KEY, 0 );
if (nResult < 0) then
MessageBox( @ERROR_UNINSTSETUP, WARNING );
endif;



szAppPath = TARGETDIR; // TODO : if your application .exe is in a subdir of TARGETDIR then add subdir

if ((bIs32BitSetup) && (bIsShellExplorer)) then
RegDBSetItem( REGDB_APPPATH, szAppPath );
RegDBSetItem( REGDB_APPPATH_DEFAULT, szAppPath ^ @PRODUCT_KEY );
RegDBSetItem( REGDB_UNINSTALL_NAME, @UNINST_DISPLAY_NAME );
endif;



// TODO : update any items you want to process before moving the data
//



return 0;
end;



///////////////////////////////////////////////////////////////////////////////
// //
// Function: MoveFileData //
// //
// Purpose: This function handles the data movement for //
// the setup. //
// //
///////////////////////////////////////////////////////////////////////////////
function MoveFileData()
NUMBER nResult, nDisk;
begin



nDisk = 1;
SetStatusWindow( 0, "" );
Disable( DIALOGCACHE );
Enable( STATUS );
StatusUpdate( ON, 100 );
nResult = ComponentMoveData( MEDIA, nDisk, 0 );



HandleMoveDataError( nResult );

Disable( STATUS );

return nResult;

end;


///////////////////////////////////////////////////////////////////////////////
// //
// Function: HandleMoveDataError //
// //
// Purpose: This function handles the error (if any) during the move data //
// operation. //
// //
///////////////////////////////////////////////////////////////////////////////
function HandleMoveDataError( nResult )
STRING szErrMsg, svComponent , svFileGroup , svFile;
begin



svComponent = "";
svFileGroup = "";
svFile = "";



switch (nResult)
case 0:
return 0;
default:
ComponentError ( MEDIA , svComponent , svFileGroup , svFile , nResult );
szErrMsg = @ERROR_MOVEDATA + "\n\n" +
@ERROR_COMPONENT + " " + svComponent + "\n" +
@ERROR_FILEGROUP + " " + svFileGroup + "\n" +
@ERROR_FILE + " " + svFile;
SprintfBox( SEVERE, @TITLE_CAPTIONBAR, szErrMsg, nResult );
bInstallAborted = TRUE;
return nResult;
endswitch;



end;

///////////////////////////////////////////////////////////////////////////////
// //
// Function: ProcessAfterDataMove //
// //
// Purpose: This function performs any necessary operations needed after //
// all data has been moved. //
// //
///////////////////////////////////////////////////////////////////////////////
function ProcessAfterDataMove()
begin



// TODO : update self-registered files and other processes that
// should be performed after the data has been moved.




return 0;
end;



///////////////////////////////////////////////////////////////////////////////
// //
// Function: SetupRegistry //
// //
// Purpose: This function makes the registry entries for this setup. //
// //
///////////////////////////////////////////////////////////////////////////////
function SetupRegistry()
NUMBER nResult;



begin

// TODO : Add all your registry entry keys here
//
//
// RegDBCreateKeyEx, RegDBSetKeyValueEx....
//



nResult = CreateRegistrySet( "" );

return nResult;
end;



///////////////////////////////////////////////////////////////////////////////
//
// Function: SetupFolders
//
// Purpose: This function creates all the folders and shortcuts for the
// setup. This includes program groups and items for Windows 3.1.
//
///////////////////////////////////////////////////////////////////////////////
function SetupFolders()
NUMBER nResult;



begin


// TODO : Add all your folder (program group) along with shortcuts (program items)
//
//
// CreateProgramFolder, AddFolderIcon....
//



nResult = CreateShellObjects( "" );

return nResult;
end;



///////////////////////////////////////////////////////////////////////////////
// //
// Function: CleanUpInstall //
// //
// Purpose: This cleans up the setup. Anything that should //
// be released or deleted at the end of the setup should //
// be done here. //
// //
///////////////////////////////////////////////////////////////////////////////
function CleanUpInstall()
begin



ListDestroy( listStartCopy );

if (bInstallAborted) then
return 0;
endif;



DialogShowSdFinishReboot();

if (BATCH_INSTALL) then // ensure locked files are properly written
CommitSharedFiles(0);
endif;



return 0;
end;



///////////////////////////////////////////////////////////////////////////////
// //
// Function: SetupInstall //
// //
// Purpose: This will setup the installation. Any general initialization //
// needed for the installation should be performed here. //
// //
///////////////////////////////////////////////////////////////////////////////
function SetupInstall()
begin



Enable( CORECOMPONENTHANDLING );

bInstallAborted = FALSE;

listStartCopy = ListCreate(STRINGLIST);

ListAddString( listStartCopy, "Place the summary here.", AFTER );

if (bIs32BitSetup) then
svDir = PROGRAMFILES ^ @COMPANY_NAME ^ @PRODUCT_NAME;
else
svDir = PROGRAMFILES ^ @COMPANY_NAME16 ^ @PRODUCT_NAME16; // use shorten names
endif;



TARGETDIR = svDir;

SdProductName( @PRODUCT_NAME );

Enable( DIALOGCACHE );

return 0;
end;



///////////////////////////////////////////////////////////////////////////////
// //
// Function: SetupScreen //
// //
// Purpose: This function establishes the screen look. This includes //
// colors, fonts, and text to be displayed. //
// //
///////////////////////////////////////////////////////////////////////////////
function SetupScreen()
begin



Enable( FULLWINDOWMODE );
Enable( INDVFILESTATUS );
SetTitle( @TITLE_MAIN, 24, WHITE );



SetTitle( @TITLE_CAPTIONBAR, 0, BACKGROUNDCAPTION ); // Caption bar text.

Enable( BACKGROUND );

Delay( 1 );
end;



///////////////////////////////////////////////////////////////////////////////
// //
// Function: CheckRequirements //
// //
// Purpose: This function checks all minimum requirements for the //
// application being installed. If any fail, then the user //
// is informed and the setup is terminated. //
// //
///////////////////////////////////////////////////////////////////////////////
function CheckRequirements()
NUMBER nvDx, nvDy, nvResult;
STRING svResult;



begin

bWinNT = FALSE;
bIsShellExplorer = FALSE;



// Check screen resolution.
GetExtents( nvDx, nvDy );



if (nvDy < 480) then
MessageBox( @ERROR_VGARESOLUTION, WARNING );
abort;
endif;



// set 'setup' operation mode
bIs32BitSetup = TRUE;
GetSystemInfo( ISTYPE, nvResult, svResult );
if (nvResult = 16) then
bIs32BitSetup = FALSE; // running 16-bit setup
return 0; // no additional information required
endif;



// --- 32-bit testing after this point ---

// Determine the target system's operating system.
GetSystemInfo( OS, nvResult, svResult );



if (nvResult = IS_WINDOWSNT) then
// Running Windows NT.
bWinNT = TRUE;



// Check to see if the shell being used is EXPLORER shell.
if (GetSystemInfo( OSMAJOR, nvResult, svResult ) = 0) then
if (nvResult >= 4) then
bIsShellExplorer = TRUE;
endif;
endif;



elseif (nvResult = IS_WINDOWS95 ) then
bIsShellExplorer = TRUE;



endif;

end;


///////////////////////////////////////////////////////////////////////////////
// //
// Function: DialogShowSdWelcome //
// //
// Purpose: This function handles the standard welcome dialog. //
// //
// //
///////////////////////////////////////////////////////////////////////////////
function DialogShowSdWelcome()
NUMBER nResult;
STRING szTitle, szMsg;
begin



szTitle = "";
szMsg = "";
nResult = SdWelcome( szTitle, szMsg );



return nResult;
end;




///////////////////////////////////////////////////////////////////////////////
// //
// Function: DialogShowSdLicense //
// //
// Purpose: This function displays the license agreement dialog. //
// //
// //
///////////////////////////////////////////////////////////////////////////////
function DialogShowSdLicense()
NUMBER nResult;
STRING szTitle, szMsg, szQuestion, szLicenseFile;
begin



szLicenseFile = SUPPORTDIR ^ "license.txt";
szTitle = "";
szMsg = "";
szQuestion = "";
nResult = SdLicense( szTitle, szMsg, szQuestion, szLicenseFile );



return nResult;
end;




///////////////////////////////////////////////////////////////////////////////
// //
// Function: DialogShowSdShowInfoList //
// //
// Purpose: This function displays the general information list dialog. //
// //
// //
///////////////////////////////////////////////////////////////////////////////
function DialogShowSdShowInfoList()
NUMBER nResult;
LIST list;
STRING szTitle, szMsg, szFile;
begin



szFile = SUPPORTDIR ^ "infolist.txt";

list = ListCreate( STRINGLIST );
ListReadFromFile( list, szFile );
szTitle = "";
szMsg = " ";
nResult = SdShowInfoList( szTitle, szMsg, list );



ListDestroy( list );

return nResult;
end;




///////////////////////////////////////////////////////////////////////////////
// //
// Function: DialogShowSdRegisterUserEx //
// //
// Purpose: This function displays the user registration dialog. //
// //
// //
///////////////////////////////////////////////////////////////////////////////
function DialogShowSdRegisterUserEx()
NUMBER nResult;
STRING szTitle, szMsg;
begin




svName = "";
svCompany = "";



szTitle = "";
szMsg = "";
nResult = SdRegisterUserEx( szTitle, szMsg, svName, svCompany, svSerial );



return nResult;
end;




///////////////////////////////////////////////////////////////////////////////
// //
// Function: DialogShowSdAskDestPath //
// //
// Purpose: This function asks the user for the destination directory. //
// //
///////////////////////////////////////////////////////////////////////////////
function DialogShowSdAskDestPath()
NUMBER nResult;
STRING szTitle, szMsg;
begin



szTitle = "";
szMsg = "";
nResult = SdAskDestPath( szTitle, szMsg, svDir, 0 );



TARGETDIR = svDir;

return nResult;
end;




///////////////////////////////////////////////////////////////////////////////
// //
// Function: DialogShowSdSetupType //
// //
// Purpose: This function displays the standard setup type dialog. //
// //
///////////////////////////////////////////////////////////////////////////////
function DialogShowSdSetupType()
NUMBER nResult;
STRING szTitle, szMsg;
begin



if (svSetupType = "") then
svSetupType = "Typical";
endif;



szTitle = "";
szMsg = "";
nResult = SdSetupTypeEx( szTitle, szMsg, "", svSetupType, 0 );



return nResult;
end;




///////////////////////////////////////////////////////////////////////////////
// //
// Function: DialogShowSdComponentDialog2 //
// //
// Purpose: This function displays the custom component dialog. //
// //
// //
///////////////////////////////////////////////////////////////////////////////
function DialogShowSdComponentDialog2()
NUMBER nResult;
STRING szTitle, szMsg;
begin



if ((svSetupType != "Custom") && (svSetupType != "")) then
return 0;
endif;



szTitle = "";
szMsg = "";
nResult = SdComponentDialog2( szTitle, szMsg, svDir, "" );



return nResult;
end;




///////////////////////////////////////////////////////////////////////////////
// //
// Function: DialogShowSdSelectFolder //
// //
// Purpose: This function displays the standard folder selection dialog. //
// //
// //
///////////////////////////////////////////////////////////////////////////////
function DialogShowSdSelectFolder()
NUMBER nResult;
STRING szTitle, szMsg;
begin



if (SHELL_OBJECT_FOLDER = "") then
SHELL_OBJECT_FOLDER = @FOLDER_NAME;
endif;



szTitle = "";
szMsg = "";
nResult = SdSelectFolder( szTitle, szMsg, SHELL_OBJECT_FOLDER );



return nResult;
end;




///////////////////////////////////////////////////////////////////////////////
// //
// Function: DialogShowSdStartCopy //
// //
// Purpose: This function displays the dialog preceding the start of the //
// file copying process. //
// //
///////////////////////////////////////////////////////////////////////////////
function DialogShowSdStartCopy()
NUMBER nResult;
STRING szTitle, szMsg;
begin



szTitle = "";
szMsg = "";
nResult = SdStartCopy( szTitle, szMsg, listStartCopy );



return nResult;
end;




///////////////////////////////////////////////////////////////////////////////
// //
// Function: DialogShowSdFinishReboot //
// //
// Purpose: This function will show the last dialog of the product. //
// It will allow the user to reboot and/or show some readme text. //
// //
///////////////////////////////////////////////////////////////////////////////
function DialogShowSdFinishReboot()
NUMBER nResult, nDefOptions;
STRING szTitle, szMsg1, szMsg2, szOption1, szOption2;
NUMBER bOpt1, bOpt2;
begin



if (!BATCH_INSTALL) then
bOpt1 = FALSE;
bOpt2 = FALSE;
szMsg1 = "";
szMsg2 = "";
szOption1 = "";
szOption2 = "";
nResult = SdFinish( szTitle, szMsg1, szMsg2, szOption1, szOption2, bOpt1, bOpt2 );
return 0;
endif;



nDefOptions = SYS_BOOTMACHINE;
szTitle = "";
szMsg1 = "";
szMsg2 = "";
nResult = SdFinishReboot( szTitle, szMsg1, nDefOptions, szMsg2, 0 );



return nResult;
end;



// --- include script file section ---

#include "sddialog.rul"



(17:20) Taz:
and tazg is lol'in at you all the way from canada
(17:21) James:
lol canadians

(This post was edited by Jaymzanator on Sep 29, 2005, 5:44 AM)


suamo
Newbie

Jan 28, 2006, 9:37 PM

Post #3 of 8 (655 views)
Shortcut
Re: [Crazy Eye] C++??? [In reply to] Can't Post


In Reply To
ok, what type of c++ do you use, and are there sites to get it? cause i know of one, but i dont know if its the right one i need?







What do you mean "What type of C++ do you use"?There is only one type of the C++ Language.

If you mean a compiler, I use Borland C++ Builder 2006 and Dev C++. Dev C++ can be downloaded from www.bloodshed.net

Borland C++ Builder 2006 can be bought from www.borland.com, although theres a FREE trial on it.


yourpursemaam
Member


Feb 10, 2006, 7:41 PM

Post #4 of 8 (632 views)
Shortcut
Re: [Crazy Eye] C++??? [In reply to] Can't Post

c++... thats my grades!


---------------------------------------------------------------------------
Xbox live name, MeantNormal


bl00d_D43m0n
Enthusiast

Feb 15, 2006, 10:55 AM

Post #5 of 8 (625 views)
Shortcut
Re: [suamo] C++??? [In reply to] Can't Post

THIS POST IS 4 MONTHS OLD, dont bump it mmmmk


hahahahahahahahahhahahahahahahahahahahah
Im using the internett!!!!111!!!!


ecardica
Newbie

Feb 22, 2006, 10:42 AM

Post #6 of 8 (612 views)
Shortcut
Re: [bl00d_D43m0n] C++??? [In reply to] Can't Post

I use Bloodshed C++, I just can't stand the Microsoft compiler way to bloated for my liking.


eCardica.com - FREE eCards


Anthrax
Member


Mar 2, 2006, 7:46 AM

Post #7 of 8 (604 views)
Shortcut
Re: [Crazy Eye] C++??? [In reply to] Can't Post

lmfao lol AHAHA so funny



Click here.



-yag si em tub enoyreve-



Cruel__Machine
Senior Member


Mar 2, 2006, 6:03 PM

Post #8 of 8 (600 views)
Shortcut
Re: [Anthrax] C++??? [In reply to] Can't Post


In Reply To
lmfao lol AHAHA so funny

ROFL! Wow.... you guys crack me up!!!!

Wait... what the [Expletive Deleted] are you laughing at again? -_-


EOP
___________________________
"If evolution were true, I'd have a self-lubricating hand."

Programmers: http://Cruels.net

 
 
 


Search for (options) Web Design by Web Ideas - Page loaded in: 0.26 s on (CGI/1.1)