Jump to content

n4gix

Moderators
  • Posts

    336
  • Joined

Everything posted by n4gix

  1. Check your addon's ..\panel folder to make certain that it really IS using the default fs9gps.cab file. Putting it another way, it simply is not possible for it to not work, providing it really is the same gauge... :D
  2. FSX only for certain. I can only test using SP2/Acceleration, as I don't have any SP1 installation any longer. Someone with only SP1 installed will have to test and verify... ;)
  3. It doesn't hurt, although FS will automatically follow this sequence when searching for an XML gauge script: 1. the aircraft's ..\panel folder for a ..\folder name 2. the aircraft's ..\panel folder for a .CAB name 3. the default ..\Gauges folder for a ..\folder name 4. the default ..\Gauges folder for a .CAB name BTW, you might like to see the new Sticky regarding how to add a "traffic display" to the G500 GPS. :cool:
  4. Continuing from the previous post regarding , we can add a "Traffic" display to the G500 quite easily as well*: *Note: This modification will only work with FSX + SP2 or + Acceleration installed! [size=2][color=#0000ff][size=2][color=#0000ff][/color][/size][/color][/size][size=2]True[/size][size=2][color=#0000ff][size=2][color=#0000ff][/color][/size][/color][/size][size=2][color=#800000][size=2][color=#800000]TerrainShadow[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]>[/color][/size][/color][/size] [size=2][color=#0000ff][size=2][color=#0000ff][/color][/size][/color][/size] [color=#0000ff][/color][/size][/color][/size][size=2]1[/size][size=2][color=#0000ff][size=2][color=#0000ff][/color][/size][/color][/size][size=2][color=#800000][size=2][color=#800000]LayerVehicles[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]>[/color][/size][/color][/size] [size=2][color=#0000ff][size=2][color=#0000ff][/color][/size][/color][/size][size=2]True[/size][size=2][color=#0000ff][size=2][color=#0000ff][/color][/size][/color][/size][size=2][color=#800000][size=2][color=#800000]DetailLayerVehicles[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]>[/color][/size] [size=2][color=#0000ff][/color][/size][/color][/size][size=2]True[/size][size=2][color=#0000ff][size=2][color=#0000ff][/color][/size][/color][/size][size=2][color=#800000][size=2][color=#800000]TextDetailLayerVehicles[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]>[/color][/size] [size=2][color=#0000ff][/color][/size][/color][/size][size=2]0x05[/size][size=2][color=#0000ff][size=2][color=#0000ff][/color][/size][/color][/size][size=2][color=#800000][size=2][color=#800000]ObjectDetailLayerVehicles[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]>[/color][/size] [size=2][color=#0000ff][/color][/size][/color][/size][size=2](@g:setup_ColorTerrain) 1 == if{ 0x006666 } els{ 0x44ffff }[/size][size=2][color=#0000ff][size=2][color=#0000ff][/color][/size][/color][/size][size=2][color=#800000][size=2][color=#800000]ColorLayerVehicles[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]>[/color][/size] [size=2][color=#0000ff][/color][/size][/color][/size][size=2][color=#800000][size=2][color=#800000]CustomDraw[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]>[/color][/size] [/color][/size] There are quite a few different options available per the FSX SDK2/Acceleration document. [/color][/size][/color][/size] -1 default 0 off 1 Realistic (normal TCAS symbols) 2 Detailed (large 'diamonds' with track arrow) [/color][/size][/color][/size] -1 default 0 none 0x01 Track line 0x02 Ground vehicles 0x04 Airborne vehicles 0x08 Racing vehicles (Acceleration only) The above entry is "additive," meaning that you add the hex numbers together to get a combined result. Note that I've used the entry 0x05 in the example above, which means "Airborne vehicles + Track line." This eliminates all "Ground vehicles" since we normally don't have to worry about parked aircraft getting in our way... :)
  5. There is a parameter missing from both the FS9 and FSX G500 GPS scripts that will add a "terrain shadowing" effect to the color terrain map view. I have discovered that there is one entry to "add" and another to "modify" in order for this to work: [size=2][color=#0000ff][size=2][color=#0000ff] [/color][/size][/color][/size][size=2]1[/size][size=2][color=#0000ff][size=2][color=#0000ff][/color][/size][/color][/size][size=2][color=#800000][size=2][color=#800000]LayerVehicles[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]>[/color][/size] [size=2][color=#0000ff] [/color][/size][/color][/size][size=2]True[/size][size=2][color=#0000ff][size=2][color=#0000ff][/color][/size][/color][/size][size=2][color=#800000][size=2][color=#800000]TerrainShadow[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]>[/color][/size] [/color][/size][size=2][color=#0000ff][size=2][color=#0000ff][/color][/size][/color][/size][size=2][color=#800000][size=2][color=#800000]CustomDraw[/color][/size][/color][/size][size=2][color=#0000ff][size=2][color=#0000ff]>[/color][/size] [/color][/size] Open the default gps_500.xml script file in notepad.exe and add the entry True entry just above the closing entry. Edit the 0 entry from 0 to 1 as shown above. You should now have a color terrain map that looks like this: http://img12.imageshack.us/img12/8322/colorterrainshadows01.jpg Shot at 2009-10-02
  6. You need a program to shut down the engines and Save the flight as the "default flight?" :rolleyes:
  7. Anyone who's attempted to implement the use of GaugeSound.dll in their projects compiled with anything other than MinGW has undoubtedly encountered the problem with "looped sounds" failing to "stop" when commanded with the (GaugeStopSound)("stop_flag"); function. Here then is a slight modification that will overcome this limitation. Change the LPTSTR in the 2nd param of "TGaugePlaySound" to an LPSTR, change the LPTSTR in "TGaugeStopSound" to an LPSTR, and then explicitly create the necessary LPSTR buffers and initialize them with constants: // Sound declarations typedef VOID (*TGaugePlaySound)(LPTSTR,[color=Red]LPSTR[/color],int); typedef VOID (*TGaugeStopSound)([color=Red]LPSTR[/color]); typedef VOID (*TTerminateSounds)(); TGaugePlaySound GaugePlaySound; TGaugeStopSound GaugeStopSound; TTerminateSounds TerminateSounds; HMODULE MGaugeSound; LPSTR flap = "flap"; LPSTR gearhorn = "gearhorn"; LPSTR overspeed = "overspeed"; LPSTR firetest = "firetest"; LPSTR geartest = "geartest"; LPSTR speedtest = "speedtest"; LPSTR warning = "warning"; Then, in the gauge's function calls, use the named pointer instead of a "string": if ( *rotartest == 1 ) { (GaugePlaySound)("sound\\esdg\\fire.wav",firetest,1) ; } else { (GaugeStopSound)(firetest); } Note that in the actual function call, no "quote marks" are required, since we're now passing a pointer name, and not a literal string. NOTE: My thanks go to Dave Nunyez from the Freelight Design forums for pointing out that my earlier "kludge" using an int wasn't really "safe hex" and could lead to all sorts of problems down the road.
  8. See the Wiki article for details: https://www.flightsim.com/vbfs/wiki_index.php?title=Code-Sample:-XML-Variables-in-C-Gauges
  9. The above is valid for both FS2004 and FSX. I no longer have the SDK for FS2000, so I cannot provide a definitive answer. I suspect that it will still work though.
  10. Opening and closing windows or popup panels: The method isn't really difficult, and is listed in the SDK key_events: trigger_key_event (KEY_PANEL_ID_OPEN,nn) ; trigger_key_event (KEY_PANEL_ID_CLOSE,nn) ; trigger_key_event (KEY_PANEL_ID_TOGGLE,nn) ; where nn is the panel ident number/name For example, to open 80 and close 90, the following would be in your mouse callback: { trigger_key_event (KEY_PANEL_ID_OPEN,80) ; trigger_key_event (KEY_PANEL_ID_CLOSE,90) ; } The above would be used to "swap panels." For a simple "popup window" you would use the TOGGLE version: trigger_key_event (KEY_PANEL_ID_TOGGLE,100) ; or trigger_key_event (KEY_PANEL_ID_TOGGLE,IDENT_GPS_PANEL) ; A full list of all the "predefined panel idents" is listed in the gauges.h file: // Panel identifiers #define IDENT_MAIN_PANEL 0 #define IDENT_THROTTLE_PANEL 10 #define IDENT_RADIO_STACK_PANEL 50 #define IDENT_COMPASS_PANEL 75 #define IDENT_MINI_CONTROLS_PANEL 100 #define IDENT_ANNUNCIATOR_PANEL 125 #define IDENT_ANNUNCIATOR2_PANEL 150 #define IDENT_IFR_MAIN_PANEL 175 #define IDENT_COLLECTIVE_PANEL 200 #define IDENT_GPS_PANEL 225 #define IDENT_OVERHEAD_PANEL 250 #define IDENT_USER 10000 #define IDENT_USER_MAX 19999 #define IDENT_AIRCRAFT_HUD_3D_PANEL 20000 #define IDENT_HELICOPTER_HUD_3D_PANEL 20001 #define IDENT_CONTROLS_HUD_3D_PANEL 20002 #define IDENT_TEXT_HUD_3D_PANEL 20003 #define IDENT_DAMAGE_HUD_3D_PANEL 20004 #define IDENT_SCORE_HUD_3D_PANEL 20005 #define IDENT_LSO_WINDOW 22000
  11. Please do just that. When completed, I'll put it in the new Wiki where I'm migrating all the "sticky posts" so the forum will be "neater" and folks can more easily find relevant information from the Wiki's index... ;)
  12. I'm assuming that following these five steps solved your previous problem with compiling the sample.sdk project? I suspect that this was the primary key to success, if so: AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"
  13. FSX Emissive Textures And How they Relate to Virtual Cockpit Lighting by Bill Leaming Now available in downloadable PDF format here: http://www.freeflightdesign.org/tutorials/FSX_Emissive_Textures_and_VCLighting.zip See the thread below for FS9 Version of the Tutorial...
  14. For all practical purposes, it is NOT possible to open, edit or otherwise modify compiled model (.mdl) files... ...so PLEASE DO NOT ASK!!!
  15. In general, all of these cases are evalutated twice during any gauge cycle. The opening case is PANEL_SERVICE_CONNECT_TO_WINDOW, so you can't tell too much about the "order" based on the SDK #define sequence. The ones that I included in the GDI+ Template are the ones most commonly used. Frankly, many of 'em seem to have no real use at all! Doug Dawson created a service_id_test gauge about a year or so ago. It's available at http://avsim.com
  16. StringFormat stringFormat; WCHAR buf[10] = L""; PCSTRINGZ atc_flight_number; execute_calculator_code("(A:atc flight number,string)",NULL,NULL,&atc_flight_number); swprintf(buf,L"%S", atc_flight_number); RectF rectFfltid_num(100, 129, 100, 22); stringFormat.SetAlignment(StringAlignmentNear); graphics.DrawString(buf,-1,&Arial20,rectFfltid_num, &stringFormat, &greenBrush);
  17. The following is applicable to both C and XML programming... ;) Question: >I understand modulus to a degree, like >123 10 % strips out the 3 and places it on the stack. > >what does, say, 2 % do? Answer: The "result" is only obvious whenever you use 10 as a divisor, because it effectively bitshifts the decimal, and the remainder is simply the decimal portion! ;) With other numbers as a divisor however, the operation is more opaque... :9 The modulus, or remainder, operator divides number1 by number2 and returns only the remainder as result. The sign of result is the same as the sign of number1. The value of result is between 0 and the absolute value of number2. For example, in the following expression, A (which is result) equals 5.6. A = 19 6.7 % This is equivalent to: 19 / 6.7 = 2.8358208 We throw away the fraction leaving 2 as the result Now we have: A = 19 - (6.7 * 2) Therefore A = 5.6 The above is an example where the result is certainly not obvious! ;) The "%" (or "mod") operator in computer languages is simply the remainder. For example, 17 3 % = 2 because 17 / 3 = 5 rem 2 which in turn means 17 = 3 * 5 + 2 There are some tricky issues when negative numbers are used, but that shouldn't ordinarily be necessary. In math (number theory), the term is used a little differently. The "modulus" is actually not the remainder, but the number you are dividing by; and "mod" is not an operator, but a label telling "in what sense two quantities are considered congruent, or equal." For example, we would say 17 = 11 (mod 3) (read as "17 is congruent to 11, modulo 3"), meaning that 17 and 11 both leave the SAME remainder when divided by 3. You probably won't see this usage if you are only reading about programming, but it's worth being aware of if you look deeper into the math behind it. The expression a = b (% n) means that n is a divisor of a - b. This sentence is read, "a is congruent to b modulo n." It is something like a remainder, because if you subtract a remainder from the dividend, the divisor will go into the result evenly. Examples: 100 = 86 (% 7), because 100 - 86 = 14 has 7 as a divisor. On the other hand, if you divide 100 by 7, the quotient is 14 and remainder is 2, and 100 = 2 (% 7), too. Now, back to your original question, what would 123 2 % be? A = 123 2 % 123 / 2 = 61.5, therefore: A = 123 - (61 * 2) A = 1 :9
  18. /!-- COM or NAV Frequency Decimal to BCD --/ 123.45 (*any frequency here*) 100 * 10000 % int (* 123.45 to 2345 *) d 10 % r 10 / int (* stack: 234 -> 5 *) d 10 % r 10 / int (* stack: 23 -> 4 -> 5 *) d 10 % r 10 / int (* stack: 2 -> 3 -> 4 -> 5 *) 16 * + (* stack: 2*16+3 -> 4 -> 5 *) 16 * + (* stack: (2*16+3)*16+4 -> 5 *) 16 * + (* stack: ((2*16+3)*16+4)*16+5 *) (>K:COM_RADIO_SET) For BCD to Decimal, no 'tricks' are needed, since the 'units' parameter of the (A:variable,units) will do the conversion for you... ;) /!-- ADF Frequency Decimal to Octal --/ 1234.5 (*or any frequency here*) d (* duplicate for later use *) 10 * 10000 % int (* 1234.5 to 2345 *) d 10 % r 10 / int (* stack: 234 -> 5 *) d 10 % r 10 / int (* stack: 23 -> 4 -> 5 *) d 10 % r 10 / int (* stack: 2 -> 3 -> 4 -> 5 *) 16 * + (* stack: 2*16+3 -> 4 -> 5 *) 16 * + (* stack: (2*16+3)*16+4 -> 5 *) 16 * + (* stack: ((2*16+3)*16+4)*16+5 *) r (* get the original frequency back*) 1000 higher need ADF_HIGHRANGE_SET *) if{ (>K:ADF_LOWRANGE_SET) } els{ (>K:ADF_HIGHRANGE_SET) } (Editor's Note: Thanks to Arne Bartels for the cogent examples!)
  19. EDITOR'S NOTE: Jean-Luc from Reality-XP has kindly offered this alternate method for BCD-to-DEC, DEC-to-BCD, and BCD-to-TXT conversions Here is a simpler way to convert an FS BCD to a string (the same can easily be used from FS BCD -> number) void RXP_FREQBCD2TXT(char * str, UINT32 value) { str[0]='1'; str[1]=((value >> 12) & 0xF) + 0x30; str[2]=((value >> 8) & 0xF) + 0x30; str[3]='.'; str[4]=((value >> 4) & 0xF) + 0x30; str[5]=((value) & 0xF) + 0x30; str[6]=0; } Here is an example with INT instead CHAR * (and I'm sure this can be further optimized) UINT32 RXP_6DEC2FSBCD(UINT32 val) { UINT32 bcd; val /=10; bcd = (val % 10); val /= 10; bcd |= ((val % 10) val /= 10; bcd |= ((val % 10) val /= 10; bcd |= ((val % 10) return(bcd); } UINT32 RXP_FSBCD26DEC(UINT32 bcd) { UINT32 decval; decval = 100000; decval +=((bcd >> 12) & 0xF) * 10000; decval +=((bcd >> 8) & 0xF) * 1000; decval +=((bcd >> 4) & 0xF) * 100; decval +=((bcd) & 0xF) * 10; if (((bcd & 0xF) == 2) || ((bcd & 0xF) == 7)) decval += 5; return(decval); }
  20. Now, I'll add another gauge to the Project to make this a true 'multi-gauge!' ;) First, I copy/paste the existing .c, .h, .rc. and G.c source code to the Project's \subgauges folder: [ATTACH=CONFIG]158995[/ATTACH] Next, copy/paste all the .bmp files to the Project's \res folder: [ATTACH=CONFIG]158996[/ATTACH] Next, open the new gauge's .c file and copy/paste the highlighted entries to the Project's master .c file: [ATTACH=CONFIG]158997[/ATTACH] [ATTACH=CONFIG]158998[/ATTACH] Next, copy/paste the GAUGE_TABLE_ENTRY line from the x.c file as illustrated. Now you may delete the x.c file from the \subgauges folder to keep things tidy... ;) [ATTACH=CONFIG]158999[/ATTACH] Now, open the x.h file and copy the resource lines to the master .h file as shown below. Add the 'prefix' you want to the RecX entries. Now you may close and delete the x.h file to keep things tidy... [ATTACH=CONFIG]159000[/ATTACH] Now, open the x.rc file and copy the bitmap entries to the master .rc file, and make the edits as shown below. Close the file and delete the x.rc file from the subfolder. There should now only be xG.c files remaining in the \subgauges folder! ;) [ATTACH=CONFIG]159001[/ATTACH] The last step I'm not going to "illustrate," since it is basically the same thing that's been covered already. You need to edit the xG.c file for the new subgauge to add the 'prefix' as shown previously, and make the other edits & deletions of unnecessary and redundant code. Finally, run Rebuild MyNewGauge and check for errors. If you've been careful, you should have none!
  21. Using the same 'prefix' convention, I'll now modify the main gauge source file (xxxG.c) as illustrated in the series of pictures following. I've made ample notes on the pictures, so I'll keep the explanation short... ;) The final step I need to take prior to attempting a new compile of this project is to 'fix' a little path problem with the IDE. If you remember, I added the xxxG.c file to the project and set its Properties to "Excluded from Build." Well, since I've moved that file to a new subfolder, I need to let the IDE know about that move... Highlight the xxxG.c filename and right-click. Choose the "Remove" option to delete the filename. Now, right-click on the "Source Files" again, an choose "Add/Add Existing Item." Navigate to the subgauge folder and highlight the xxxG.c file again. Now, right-click on the xxxG.c filename, and using Properties, set the file to be "Exluded from Build" again. Now I will rebuild the gauge project and check for any errors... Since I was very careful, I have none! Hooray! In the next installment, I'll discuss adding a new subgauge to this project. Once that's done, you should be able to successfully continue adding subgauges until your project is finished. [ATTACH=CONFIG]158982[/ATTACH] [ATTACH=CONFIG]158983[/ATTACH] [ATTACH=CONFIG]158984[/ATTACH] [ATTACH=CONFIG]158985[/ATTACH] [ATTACH=CONFIG]158986[/ATTACH] [ATTACH=CONFIG]158987[/ATTACH]
  22. This is a continuation of the previous tutorial, which discussed setting up the MSVC++ .NET 2003 IDE for gauge development. In particular, the sample gauge file used in that tutorial will be used in this new installment. Using the gauge code already discussed, I am now going to illustrate the process by which we need to modify the original code such that it will be ready for conversion to a true multi-gauge format. NOTE: I suffer no illusions that this is the "best" way to handle the conversion of Easy Gauge source files to a multi-gauge format! However, it is simple, logical and most importantly, IT WORKS! ;) As a first step, I have created a new subfolder in my gauge project and named it \subgauges. I have moved the xxxG.c file to this new subfolder: [ATTACH=CONFIG]158979[/ATTACH] Now I need to modify the main .c file to show where I've now located the xxxG.c file: http://img247.imageshack.us/img247/3186/cplustut022oy.jpg Next, I need to make the resource id's for this subgauge unique. I have adopted the convention of adding a three-four letter 'prefix' to designate the subgauge's revisions. In this case, MAP_ seems to be a logical choice. Here is the revised .h file: [ATTACH=CONFIG]158980[/ATTACH] Now I'll modify the .rc file: [ATTACH=CONFIG]158981[/ATTACH] The final step in this process is a bit longer and I'll have to use a number of pictures to illustrate the full process. I'll continue this in the next section.
  23. In the picture below, I have the .c file open for editing. I've changed the line pointed to by the arrow to name my "fs9gauges.h" file that I have in the \inc folder of the Visual Studio compiler. http://img326.imageshack.us/img326/9165/msvcplusnet20030000108rn.jpg Next, I've opened the .h file and have renumbered my resource numbers for a more logical increment of 0010, rather than the 0100 EG uses by default. http://img401.imageshack.us/img401/5647/msvcplusnet20030000119yv.jpg The .rc file is a bit "tricker" to open in the editor. Instead of "double-clicking," you need to "right-click" and choose "Open with Text Editor" from the options, otherwise you will get into a strange WYSIWYG "Graphical Editor" which is a royal pain... ;) Once opened, edit each of the lines indicated to point to the \res subfolder where your bitmaps have been placed. Edit the information about your gauge project as shown in the middle part of the file as desired. http://img371.imageshack.us/img371/5995/msvcplusnet20030000121as.jpg Now, we need to finish configuring our Project before we can compile this gauge for the first time. Point to the Project Name (#1 below) and Right-Click. Choose Properties (#2 below) to open the Properties Dialog: http://img247.imageshack.us/img247/9704/msvcplusnet20030000139xc.jpg Next, open the C/C++ Code Generation (#3 below) and choose either /MT or /MTd as the type of build from the Runtime Library: http://img129.imageshack.us/img129/4800/msvcplusnet20030000136ne.jpg Finally, open the Linker General dialog and enter your gauge name as shown in steps #5 and #6 below: http://img366.imageshack.us/img366/3117/msvcplusnet20030000111nz.jpg Assuming that you're only going to create a "stand alone gauge" for the moment, we are now ready to Build our first gauge! If you intend to build a "multi-gauge," then there's a bit more work to do, but that will be the topic of the next tutorial. So, I confidently press the Build/Build MyNewGauge buttons on the top menu bar. What's this? I have an error! Oops! http://img12.imageshack.us/img12/2139/msvcplusnet20030000123yc.jpg Actually, I knew that was going to happen! I just wanted to show how neat the 'error trapping' is with this IDE, and how to quickly locate and "fix" the error. Now, I confidently click the Build/Build MyNewGauge buttons again. OK! I now have a compiled MyNewGauge.gau file waiting in the \Debug folder, just waiting for me to copy it to FS9 and give it a test! In the next installment of this tutorial series, I'll show how to modify the file(s) to allow us to build multi-gauges! Stay tuned to this forum! ;)
  24. All gauges consists of at least three files: 1) The .c file (main entry code) 2) The .h file (header information) 3) The .rc file (resource control) If you are going to build a mult-gauge, then there will be additional files needed, which contain the C code for each subgauge to be created. I'm going to use the output files from Easy Gauge here for illustration, but the principles remain the same regardless of whether you use EG or "hand rolling" to create your gauges. In the illustration below, I've shown how I've placed the three files listed above, plus the xxxG.c file (which is the subgauge's actual code) in the "MyNewGauge" subfolder. The "bitmaps" have been placed in a common \res subfolder to keep my workspace organized and uncluttered. http://img262.imageshack.us/img262/408/msvcplusnet20030000085fu.jpg[/url] Now, I need to "load" each of the files into the appropriate areas of the MSVC++ IDE Project box. Right-click on the entry to bring up the options menu: http://img220.imageshack.us/img220/8616/msvcplusnet20030000096vu.jpg Using the same "pattern," I will load the remaining files into the proper areas. As shown below, a "special thing" must be done to the xxxG.c file, since it is called as an #include file in the .c file. We must "right click" on the filename, and perform steps 1 through 4 as shown below, to explicity "Exclude" this file from the compiling process: http://img106.imageshack.us/img106/8640/msvcplusnet20030000029by.jpg Now, it isn't strictly necessary to even list the xxxG.c file in the IDE's listing window, but it is convenient since all you need to do is "double click" on the filename to open the file in the Editing Window! It's all a matter of choice... ;) Continued in Part #3 to follow.
  25. The goal of this brief tutorial is to explain and illustrate my method of setting up and using the MSVC++ .NET 2003 Integrated Development Environment. It is by no means necessarily the best way, but it is one which has proven itself to me as at least an organized method... ;) After installing MSVC++ .NET 2003, you will need to set up some Project folders. My way of organizing things is shown in the picture below: http://img369.imageshack.us/img369/366/msvcplusnet20030000020vz.jpg Now, start Visual Studio and we will begin the process of setting up a New Gauge Project. http://img53.imageshack.us/img53/418/msvcplusnet20030000016rk.jpg The "New Project" dialog will open up. As show by the arrows, choose "Win32", "Win32 Console Project" and finally, enter in the name of your New Project Subfolder, which in this case is "MyNewGauge." Click on OK to continue. http://img307.imageshack.us/img307/9494/msvcplusnet20030000039bx.jpg Enter the settings indicated in steps 1 through 4 below: http://img190.imageshack.us/img190/5931/msvcplusnet20030000056qu.jpg After a few moments, you will be rewarded with the scene illustrated below. You now have an "Empty Project" ready to build your gauge! Of course, there's more to come, but these are the basic steps to "getting ready to get started..." ;) http://img319.imageshack.us/img319/5350/msvcplusnet20030000064hm.jpg
×
×
  • Create New...