Training
Certifications
Books
Special Offers
Community




 
Inside Microsoft® Visual Studio® .NET 2003
Author Brian Johnson, Craig Skibo, Marc Young
Pages 576
Disk N/A
Level Int/Adv
Published 02/12/2003
ISBN 9780735618749
ISBN-10 0-7356-1874-7
Price(USD) $49.99
To see this book's discounted price, select a reseller below.
 

More Information

About the Book
Table of Contents
Sample Chapter
Index
Companion Content
Related Series
Related Books
About the Author

Support: Book & CD

Rate this book
Barnes Noble Amazon Quantum Books

 

Index


Symbols
* (asterisk), 91, 446
# (pound sign), 91
? (question mark), 86, 91, 446
[ ] (wildcard), 91
[!] (wildcard), 91

A
AbsoluteCharOffset property, 354
abstract classes, 495
access modifiers, 493, 499, 501, 503, 508
Acme Setup, 398
ActivePane property, 343
ActivePoint property, 355, 358
ActiveWindow property, 351
ActiveX controls
   shim controls, 325-328
   Toolbox, adding to, 301-303
Add-in Manager
   displaying add-ins, 157
   defined, 135
   list population, 157
   OnAddInsUpdate events, 159
Add-in Wizard
   access privileges, 127
   advantages of, 125-126
   Class Library project creation, 127
   debugging settings, 136
   disappearing interface problem, 197-198
   files generated by, 127
   host applications, 126
   loading at startup, 127
   loading options, 134
   menu item creation, 127
   naming add-ins, 127
   opening, 126
   placing commands in menus, 194
   programming language selection, 126
   solution add-ins using, 223
   unattended build safety, 127
   using statements generated by, 132
   .vsz file storage, 265
add-ins
   AboutBox registry values, 178-180
   access privileges, 127
   Add-in Manager, 135, 157, 159
   AddIns collection, 166, 169
   administrative, 157
   advantages of, 25-26, 125
   Assembly Registry utility with, 155
   automatic loading of, 171
   automation object model, interaction with, 133
   Basic.cs example, 152
   calls to, 158
   Class Library projects for, 127
   class required for, 151
   classes, accessing, 163
   CLSIDs, 154-155
   COM compatibility, 153-155, 161
   command creation, 186-188
   command handlers, finding, 191
   CommandLineSafe registry value, 175-176
   CommandLoad registry value, 171-174
   compiling, 152-153
   Connect.cs sample file, 128-132
   connection statuses, determining, 169
   connectMode parameter, 165
   creating from scratch, 151-153, 161-162
   custom actions, 203-205
   debugging, 136-137
   deleting commands, 203-206
   Description registry value, 178
   disappearing command problem, 197-198
   DLL nature of, 127
   DTE interface types, accessing, 164
   DTE references, 138
   entry point for code, 152
   EnvDTE namespace, 163-165
   events, 142-144, 158-162
   ext_DisconnectMode values, 171
   Extensibility namespace, 153
   files generated for, 127
   FriendlyName registry value, 178
   FUIDs, 155-156
   GUIDs, 155-156
   host applications, 136
   IDTExtensibility2 interface. See IDTExtensibility2 interface
   Installer Class, 203-204
   installing, 134
   LifeCycle.cs example, 160-162
   LoadBehavior registry value, 174-175
   loading, 127, 134-135, 171
   LoadUnload.cs, 167-170
   localization, 176-178
   macros, building from, 118-120
   Macros IDE, debugging in, 136
   memory leaks, 144
   menu creation, 127, 133-134
   MSI files, 134
   namespaces for, 132, 162
   naming, 127
   OnAddInsUpdate event, 158, 160, 166-170
   OnBeginShutdown method, 170
   OnConnection method, 133, 144, 158, 164-165
   OnDisconnection method, 170-171
   OnStartupComplete method, 165
   performance issues, 202
   persisting data to solution files, 257-258
   PreloadAddinState registry value, 171-174
   preloading, 172-174
   ProgIDs, 155, 157, 171
   registering, 153-158
   registering with solution files, 224
   registry entries for, 153, 155-157
   registry named values, 171-180
   samples, location of, 25
   satellite DLLs, 176-178
   sequence of events, 158
   setup project, deleting, 223
   solutions containing, 223-224
   startup, loading at, 127
   unattended build safety, 127
   uninstalling, 203-206
   unsubscribing from events, 144
   user, 157
Add Item wizards, 284
Add Macro Project dialog box, 101
Add methods
   Access parameter, 508
   AddAttribute method, 512
   AddBase method, 513-514
   AddClass method, 509-510
   AddDelegate method, 510
   AddEnum method, 512
   AddFunction method, 511
   AddImplementedInterface method, 514
   AddInterface method, 510
   AddMember method, 515
   AddNamespace method, 509
   AddParameter method, 515
   AddProperty method, 511
   AddStruct method, 509-510
   AddVariable method, 512
   defined, 389
   Location parameter, 508
   Name parameter, 507
   namespaces, 492
   Position parameter, 508
   tables of, 485-486
   Type parameter, 507
   Variant1 vs. Variant2, 508
Add New Item dialog box, 230
Add New Item wizards
   ContextParams argument, 262
   defined, 260
   directory structure for, 267-268
   GUIDs, 262
   raw templates, 274-275
AddAttribute method, 512
AddBase method, 513-514
AddClass method, 509-510
AddDelegate method, 510
AddEnum method, 512
AddFunction method, 511
AddImplementedInterface method, 514
AddInterface method, 510
AddMember method, 515
AddNamespace method, 509
AddParameter method, 515
AddProperty method, 511
AddStruct method, 509-510
AddVariable method, 512
administrative add-ins, 157
Administrative Install branch, 414
aliases
   Command Window with, 87-88
   creating, 77
   macros, launching, 88
AnchorPoint property, 355, 358
AND operator, 445
API of Visual Studio .NET. See code model
Application folder, 401
application installation. See setup projects
architecture of .NET, 4-5
arrays
   CreateArrayType method, 515-516
   dimensions of, 506
assemblies
   macros containing, 112-113
   macros for testing, 112
   project dependencies settings, 56
   references to, 232
Assembly Registry utility, 155
AtEndOfDocument property, 354
AtEndOfLine property, 354
ATL functionality, 9
AtStartOfDocument property, 354
AtStartOfLine property, 354
attributes
   AddAttribute method, 512
   CodeAttribute objects, 501-502
   CodeType object, property of, 493
   creating for variables, 500
   Delete method, 502
   returning for variables, 499
AutoHideAll command, 13
automation events
   add-ins, connecting to, 142-144
   build events, 142
   connecting to, 140
   delegates for, 142-143
   DTE.Events object, 139
   DTE.Events property, 140-142
   event handler creation, 143
   filtered events, 146-148
   language specific events, 140, 149
   late-bound events, 149
   macro event handlers, 144-146
   memory leaks, 144
   project-specific, 149
   signatures for, 142-143
   subscribing to, 142
   unfiltered vs. filtered, 148
   unsubscribing from, 144-145
   variables, defining, 145-146
   wiring up the event handlers, 143-144
automation mechanisms, types of, 24
automation object model
   collections, 139
   DTE object, 138-139
   events. See automation events
   flexibility of, 137
   focus, setting, 140
   guidelines for objects, 139-140
   macros with, 106
   objects in, 138
   root object of, 163
   top node of, 138
   types of objects in, 138
   window visibility, 140

B
BannerBitmap property, 413
BannerText property, 413
base classes, AddBase method, 513-514
base types, 493
BASIC programming language. See Visual Basic .NET
Basic.cs add-in example, 152
Batch Build dialog box, 58
bitmaps, 196-197
bootstrapping program, 433
BottomPoint property, 355, 358
brace matching, 84-85
breaking the build, 480
buffer overrun checks, 7-8
build configurations
   Activate method, 245
   BuildDependency objects, 249-251
   ConfigurationManager object, 251-253
   creating new, 253
   cyclic dependency, 248
   debug, 244, 254
   finding project configurations, 252-253
   Multiple Startup Projects option button, 247
   naming solution configurations, 244
   OnBuildProjConfigBegin event, 255
   platforms supported, 251
   project configurations, 244, 251-255
   project dependencies, 247-251
   project properties, 254-255
   propagating solution configurations, 244
   release, 244, 254
   root object for, 243
   selecting by name, 245
   setup projects, 253
   ShouldBuild property, 246
   solution settings, 244-251
   SolutionConfiguration objects, 244-246
   SolutionContexts property, 245
   startup projects, 246-247
builds
   Batch Build dialog box, 58
   breaking, 480
   build events, 255-257
   /build switch, 464
   cleaning output files, 58
   configurations. See build configurations
   /doc, 46
   events, adding, 48-49
   Incremental Build, 46
   project output types, 402
   scenarios, configuring for, 57-58
   Visual C++ options, 47
buttons
   adding to command bars, 194-196
   bitmaps for, 187, 196-197
   text for, 186-187

C
C programming language
   build events, adding, 48-49
   formatting, braces, 72-73
   slanted style, 72
C++. See Visual C++; Visual C++ .NET
C#
   code comments, adding, 84
   compiling add-ins, 153
   configuration properties, 44-46
   debugging settings, 45
   DLL offsets, 46
   formatting, braces, 72-73
   Output Path property, 44
   project events, 243
   project user option files, 54
   tab formatting default, 71
   VSProject. See VSProject projects
case sensitivity, 486
CDs, setup, 436
chaining Custom wizards, 277-279
ChangeSourceControl command (VSS), 478
Checkbox dialog boxes for installation, 415
class libraries
   Visual C++ .NET, 8-9
   custom action, 422
Class Name combo box, 61
Class View window
   opening, 63
   defined, 16
classes
   AddBase method, 513-514
   AddClass method, 509-510
   CodeClass objects, 494-495
   generating with code model, 392-393
   methods for, 495
ClassIDs, 264
/clean switch, 465
cleaning up source control, 478
CleanSolution command, 465
Clipboard Ring, 66, 298
Close method
   Document, 352
   UndoContext, 362
closing documents, 352
CLR (common language runtime)
   advantages of, 5
   interoperability, 10
   purpose of, 4
CLS (Common Language Specification), 5
CLSIDs, 154-155
code analysis tools, 303
code discovery
   child elements, 386
   CME add-in, 385-387
   code hierarchy, navigating, 378-387
   CodeElement objects, 376-389
   CodeType interfaces, 382-384
   defined, 375
   iterating through CodeElements collection, 380-382
   point objects for, 388-389
   querying CodeElement objects, 379
   source file constructs, 375-377
   TestCodeElement macros, 388-389
   top-level elements, 378
Code Editor
   Class Name combo box, 61
   Code Panes, 61
   colors, syntactic, 73-76
   components of, 60, 62
   importance of, 15, 59, 63
   line numbering, 77
   Margin Indicator Bar, 62
   MDI view, 62
   Members drop-down list, 61
   Method Name combo box, 61
   Navigation Bar, 61
   new features, 60
   outlining feature, 61, 79, 81
   selection margin, 61
   shortcuts, 64-69
   tabbed view, 62
   Text Editor, compared to, 60
   Types drop-down list, 61
code formatting. See formatting
code generation
   Access parameter, 508
   Add methods, 389, 485-486, 492
   AddAttribute method, 512
   AddBase method, 513-514
   AddClass method, 509-510
   AddDelegate method, 510
   AddEnum method, 512
   AddFunction method, 511
   AddImplementedInterface method, 514
   AddInterface method, 510
   AddMember method, 515
   AddNamespace method, 509
   AddParameter method, 515
   AddProperty method, 511
   AddStruct method, 509-510
   AddVariable method, 512
   bugs in, 393
   building source files, 389-393
   child element creation, 390-391
   class creation, 392-393
   common parameters, 507-508
   CreateArrayType method, 515-516
   Delete method, 516
   element creation, 390
   enumeration creation, 391
   function type parameter, 392
   goals of, 389, 507
   interface creation, 391
   Location parameter, 508
   Name parameter, 507
   namespace creation, 390
   Position parameter, 508
   Remove method, 516
   RemoveBase method, 517
   RemoveInterface method, 517
   RemoveMember method, 517
   RemoveParameter method, 518
   structure creation, 391
   Type parameter, 507
code model
   access modifiers, 493, 499, 501, 503, 508
   Add methods, 389, 485, 486, 492, 509-515
   AddAttribute method, 512
   AddBase method, 513-514
   AddClass method, 509-510
   AddDelegate method, 510
   AddEnum method, 512
   AddFunction method, 511
   AddImplementedInterface method, 514
   AddInterface method, 510
   AddMember method, 515
   AddNamespace method, 509
   AddParameter method, 515
   AddProperty method, 511
   AddStruct method, 509-510
   AddVariable method, 512
   arrays, 506, 515-516
   attributes, 501-502, 512
   base class for, 488
   base classes, 513-514
   bugs in code generation, 393
   child element creation, 386, 390-391, 488-489
   classes, 392-393, 494-495, 509-510
   CME add-in, 385-387
   CodeAttribute objects, 501-502
   CodeClass objects, 494-495
   CodeElement objects, 376-389, 484-485, 488-491
   CodeFunction objects, 502-505
   CodeInterface objects, 496
   CodeModel objects, 483, 485-487, 508
   CodeNamespace interfaces, 379, 383
   CodeNamespace objects, 492
   CodeParameter objects, 505
   CodeProperty objects, 500-501
   CodeType interfaces, 382-384
   CodeType objects, 486, 487, 493-494
   CodeTypeRef objects, 487, 506, 515-516
   CodeVariable objects, 498-500
   comments, 491-492
   common properties, 491
   creating code. See code generation
   defined, 375
   delegates, 497-498, 510
   Delete method, 516
   deleting code elements, 485
   document comments, 491
   element creation, 390
   entryways into, 483
   enumeration objects, 391, 496-497, 512
   extender objects, 488, 490
   FileCodeModel object, 483-485
   function type parameter, 392
   functions, 502-505, 511
   generating code. See code generation
   GetEndPoint method, 490
   GetStartPoint method, 490
   goals of, 375
   InfoLocation property, 489, 490
   interactive feature creation, 388
   interface creation, 391
   interface management, 382-384
   interfaces, 379, 496, 510, 514, 517
   iterating through CodeElements collection, 380-382
   members, 515, 517
   methods, CodeElement, 490-491
   names of elements, 488, 489
   namespaces, 492, 509
   navigation of hierarchy, 378-387
   parameters, 505, 515, 518
   Parent property, 491
   point objects, retrieving from, 388-389
   project assignment requirement, 485
   project level, 485
   properties, 511
   properties, common, 491
   properties of CodeElement, 488-490
   properties of CodeModel, 485-486
   properties of CodeProperty, 500-501
   querying with object interfaces, 379
   Remove method, 516
   RemoveBase method, 517
   RemoveInterface method, 517
   RemoveMember method, 517
   RemoveParameter method, 518
   removing code elements, 485, 487, 516-517
   source file constructs, 375-377
   structures, 391, 494-495, 509
   sub procedures, 502-505
   top-level creation methods, 485
   top-level elements, 378, 484
   type creation, 493-494
   type representation, 506
   variables, 498-500, 512
   Visual C++ idiosyncrasies, 489
   vsCMAccess enumeration, 493
   vsCMInfoLocation constants, 489-490
   vsCMPart enumeration values, 490-491
   vsCMTypeRef enumeration, 487
Code Model Explorer (CME) add-in, 385-387
CodeAttribute objects, 501-502
CodeClass objects, 494-495
CodeDelegate objects, 497-498
CodeElement objects, 376-390, 484, 488-491
CodeEnum objects, 496-497
CodeFunction objects, 502-505
CodeInterface objects, 496
CodeModel objects, 483, 485-487, 508
CodeNamespace objects, 492
CodeParameter objects, 505
CodeProperty objects, 500-501
CodeStruct objects, 494-495
CodeType methods, 494
CodeType objects, 493-494
CodeTypeRef objects, 506, 515-516
CodeVariable objects, 498-500
coding
   Code Editor. See Code Editor
   generating code. See code generation
   Text Editor. See Text Editor
collections
   automation object model, 139
   Windows, 287-290
coloring for code, 73-76
COM compatibility
   add-ins requiring, 153-155, 161
   EnvDTE namespace, 164
   references to COM objects, 233
command bars
   bitmaps for, 196-197
   button objects, 192
   buttons, adding to, 194-196
   controls, adding to, 194-196
   controls collection, 192-193
   deleting commands, 203-206
   indexes of controls, 195
   main menu bar item collection, 193-194
   main menu bar object collection, 194
   main point of access to objects, 192
   new, creating, 195-196
   object model, 192-193
   popup controls, 193
   re-creating commands, 199-202
   saving, 197-198
   separators, 195
Command command, creating, 23
command line
   building projects and solutions, 463-470
   CommandLineSafe values, 175-176
   Devenv. See Devenv.exe
   environmental variables for builds, 22
   GUI options, 468
   references, adding, 153
   registry values for builds, 175-176
   settings, 45
   VSIP options, 470
command prompt
   Find combo box for, 88
   placement of, 23
command state, 189-191
/command switch, 466
Command Window
   aliases with, 87-88
   Command Mode, 86-87
   defined, 19-20
   expression evaluation with, 86
   GUID constant for, 291
   help searches from, 448
   Immediate Mode, 86-87
   modes of operation, 86
   named commands in, 87
   object type of, 291
   question mark (?), 86
   searches with, 94-95
CommandLineSafe values, 175-176
commands
   add-in commands, creating, 186-188
   add-on programs, routing to, 181
   aliases, 77
   buttons, adding to command bars, 194-196
   collection for, 182-183
   Command Windows execution of, 185
   creating add-in commands, 186-188
   custom. See commands, custom
   custom keyboard shortcuts for, 67-69
   defined, 181
   deleting, 203-206
   determining command state, 190
   disabling, 189-191
   disappearing interface problem, 197-198
   DTE.ExecuteCommand method, 185
   editing, 66
   enabling, 189-191
   enumerating, 182
   execution methods, 185
   file operations, 64-65
   GUIDs of, 182-183, 187
   handling custom, 188-189, 191
   identification of, 182
   IDs of, 182-183, 187
   independence from user interface, 182
   invoking, 185
   Item method, 183
   keyboard shortcuts for, 207-211
   latched state, 189-191
   line for entering. See command line
   listing in Options box, 184
   locating, 182-183
   macro names as, 98
   macros for executing, 185-186
   nameless, 185
   names of, 183-185
   notification method, 181
   passing data to, 189
   printing list of shortcuts, 211-212
   prompt for. See command prompt
   QueryStatus method, 189-190
   registration, resetting, 199-202
   restoring, 197-202
   routing, 181-182
   running, 185
   state of, 189-191
   switching command bars for, 202
   transposition, 66-67
   user interface. See command bars
commands, custom
   add-in handlers, finding, 191
   AddNamedCommand method, 186-187
   availability state, 187
   button text for, 186-187
   buttons for, 194-196
   deleting, 203-206
   demand loading of, 188
   disappearing problem, 197-198
   error loading message, 191
   Exec method arguments, 188-189
   graphic for button, 187
   GUIDs of, 187
   handling, 188-189
   IDs of, 187
   interface for invoking, 188
   invoking, 188
   keyboard shortcuts for, 207-211
   naming, 186
   parameters of, 206-207
   passing data to, 189
   performance issues, 202
   placing in command bars, 194
   registration, resetting, 199-202
   restoring, 197-202
   state of, 189-191
   target for, 186
   tooltip for, 187
Commands collection
   enumerating, 182
   Item method, 183
comments
   returning for elements, 491-492
   searching with Task List, 312-315
common file shortcuts, 64-65
Common Files folder, 399
common language runtime. See CLR
Common Language Specification (CLS), 5
Common Properties folder, 34-35, 42, 44
Common User Accessibility (CUA) shortcuts, 64
compiling
   add-ins, 152-153
   buffer overrun checks, 7-8
   builds, configuring, See build configurations
   /GL switch, 7
   /GS switch, 7-8
   options, 7-8
   /RTCn switch, 8
   run-time error checks, 8
   setting options, 8
   Visual C++ .NET options, 7-8
condition algebra, 426-428
Condition property, 430
Configuration Manager, 42, 57
configuration properties
   for projects, 42, 44-50
   for solutions, 35
Configuration Properties folder, 44-50
ConfigurationManager object, 251-253
configurations
   builds. See build configurations
   project. See project configuration
   solutions, 35
configuring application installation. See setup projects
Connect.cs sample add-in code, 128-132
console application custom actions, 422
constants, 499
content files (project output type), 402
Context tag (XML Help Provider Service), 453
controls
   command bar type, 192
   finding existing in forms, 320-321
   finding properties, 321
   forms, adding to, 319-320
   Parent property, 320
   properties collection, 320
   shim controls, 325-328
   Toolbox, adding to, 301-303
CreateArrayType method, 515-516
CreateEditPoint method, 353, 357
CUA (Common User Accessibility) shortcuts, 64
CurrentTab property, 344
CurrentTabObject property, 344
custom actions during installation, 421-425
custom commands
   add-in handlers, finding, 191
   AddNamedCommand method, 186-187
   availability state, 187
   button text for, 186-187
   buttons for, 194-196
   deleting, 203-206
   demand loading of, 188
   disappearing problem, 197-198
   error loading message, 191
   Exec method arguments, 188-189
   graphic for button, 187
   GUIDs of, 187
   handling, 188-189
   IDs of, 187
   interface for invoking, 188
   invoking, 188
   keyboard shortcuts for, 207-211
   naming, 186
   parameters of, 206-207
   passing data to, 189
   performance issues, 202
   placing in command bars, 194
   registration, resetting, 199-202
   restoring, 197-202
   state of, 189-191
   target for, 186
   tooltip for, 187
custom tool windows
   add-in sponsor for, 323
   bitmaps for tabs, 329
   captions, 323
   CreateToolWindow method, 323-325
   GUIDs, 323
   parent window requirements, 324
   ProgID of control, 323
   programmable objects, 323
   Properties window with, 329-330
   purpose of, 322
   shim controls, 325-328
   tab-linking of, 329
   VSMediaPlayer sample project, 323-325
   Web servers for user controls, 328
Custom wizards
   calling, 276
   chaining, 277-279
   context parameters, 276, 278-279
   creating, 276
   defined, 260
   GUIDs, 276
   LaunchWizard method, 276-277
   purpose of, 275
   running programmatically, 276-277
   throwaway wizards, 278-279
Customer Information, collecting at installation, 417
cyclic dependencies, 248

D
data entry dialog boxes for installation, 416
debug symbols (project output type), 402
/debugexe switch, 467
debugging
   add-ins, 136-137
   custom actions, 425
delegates
   AddDelegate method, 510
   automation events, 142-143
   CodeDelegate objects, 497-498
   vsCMPrototype enumeration, 497-498
Delete method, 516
dependencies
   dependency graphs, 248
   including in installation, 402
   project, 34, 247-251
/deploy switch, 466
deployment. See setup projects
derived types, 493
Design Time Extensibility (DTE), 164
designers, 15-16
desktop folder, 400
development of Visual Studio .NET, 3-4
Devenv.exe
   accessing, 23
   command-line options, 463-468
   GUI options, 468
   /setup switch, 198
   VSIP options, 470
dialog boxes
   main windows as parents, 292
   showing during installation, 413-421
discovering code
   child elements, 386
   CME add-in, 385-387
   code hierarchy, navigating, 378-387
   CodeElement objects, 376-389
   CodeType interfaces, 382-384
   defined, 375
   iterating through CodeElements collection, 380-382
   point objects for, 388-389
   querying CodeElement objects, 379
   source file constructs, 375-377
   TestCodeElement macros, 388-389
   top-level elements, 378
distributed Internet environment, 4
DLLs
   compiling add-ins as, 153
   offset property, 46
   satellite DLLs, 176-178
   for setup projects, 431
/doc option, 46
Dockable property, 60
docking tool windows, 60
document windows
   defined, 11, 59
   NewWindow method, 350
   tabbed windows, 59
   tool windows as, 60
documentation files, 402
documents
   ActiveWindow property, 351
   comments, returning, 491
   Document objects, 348-352
   Document property, 349
   inserting text, 108
   macros for text manipulation, 107-108
   NewWindow method, 350
   ReadOnly property, 351
   Redo method, 351
   Save method, 352
   SaveAll method, 352
   Saved property, 352
   TextDocument objects, 107, 353
   TextPoint objects, 107
   Undo method, 351
   windows for. See document windows
DTE objects
   code model, returning with, 488
   DTE.Documents collection, 349
   DTE.Events properties, 140-142, 147
   DTE.ExecuteCommand method, 185
   DTE.Windows property, 287
   extensibility of, 24
   macros, references from, 138
   Solution property, 213
Dynamic Help, 85-86, 449-454

E
Edit.Find command, 87-88, 94-95
editing text
   Document objects, 348-352
   documents, 348-353
   editor windows, 341-347
   EditPoint objects, 357-360
   HTMLWindow objects, 343
   LineChanged event, 366-372
   multiple handlers for, 371-372
   point objects, 353-357
   shortcuts for, 66
   stack linkage, 365
   TextDocument objects, 353
   TextPane objects, 345-347
   TextPoint objects, 353
   TextSelection objects, 357-360
   TextWindow, 343
   undo contexts, 360-365, 368
   VirtualPoint objects, 354-356
   Window objects, 342
editors. See Code Editor; Text Editor
EditPoint objects, 357-360, 388
EndPoint property, 353-354
enumerations
   AddEnum method, 512
   CodeEnum objects, 496-497
EnvDTE namespace
   add-ins, objects used in, 163-165
   COM compatibility, 164
   Events properties, 140-142
   IDTWizard interface, 260
   Solution object, 213
Environment folder, 73, 75, 84
environmental variables, 22-23
Equals method, 333-335
EqualTo method, 354
event handlers
   automation events, 143-144
   macros, for, 113-115
events
   add-ins called by, 158-162
   automation object model. See automation events
   build events, 255-257
   filtered, 146-148
   garbage collector problem, 222
   handling. See event handlers
   late-bound, 149
   LifeCycle.cs example, 160-162
   LoadUnload.cs example, 167-170
   lost, 222
   macros, firing with, 113-116
   OnAddInsUpdate, 166-170
   OnBeginShutdown, 170
   OnBuild events, 255-256
   OnDisconnection, 170-171
   OnStartupComplete, 165
   projects firing, 241-243
   security with macros, 116
   solution events, 217-222
   SolutionEvents.cs, 218-222
   Task List, 310-312
evolution of Visual Studio .NET, 3-4
Explorer windows. See UI hierarchy windows
ext_DisconnectMode values, 171
extender objects, 488, 490
extensibility
   add-ins, 25-26
   API for, 11
   DTE object, 24
   IDE folder shortcut, creating, 22
   macros, 24
   objects, calling, 297
   wizards, 26
Extensibility namespace, 153
Extensibility.IDTExtensibility2 interface. See IDTExtensibility2 interface

F
F1 key, 81, 448
Favorites folder, 400
Favorites window, GUID for, 289
file associations, assigning, 411-413
file command shortcuts, 64-65
file management utility projects, 238-241
File Search installer property, 428
File System editor
   installation folder, choosing, 399
   project output, 401-403
File Types editor, 411-413
FileCodeModel object, 483-485
files
   creating new, 65
   default paths for, 21
   management utilities, 238-241
   project, arrangement of, 225
   under source control, 470-480
Filtered By option, 444
filtered events, 146-148
filters for help searches, 446
Find command, 87-88, 94-95
Find dialog box
   command lines in, 88
   regular expressions in, 92-94
   searches with, 89-90
   wildcards, 90-92
Find In Files dialog box, 90
finding. See searching
finding code. See code discovery
/fn switch, 469
folders
   installation, 399
   projects with, 225
fonts
   Fonts And Colors page, 73, 75, 84
   Fonts folder, 400
   formatting options with, 74
Form Layout window, 321-322
formatting
   Block option, 70
   braces options, 72-73
   colors by syntax, 73-76
   fonts, 74
   Formatting page, 71
   language specific, 71, 73
   None option, 70
   options, setting, 70-71
   overall look, 74
   printer output, 75-76
   saving settings in Registry, 76-77
   Smart option, 70
   tabs vs. spaces, 71
   white space, viewing, 71
Forms designer
   Control objects for, 318-319
   control properties collection, 320
   controls, adding to forms, 319-320
   controls, Parent property, 320
   finding control properties, 321
   finding existing controls, 320-321
   Form Layout example, 321-322
   IDesignerHost interface, 318-319
   macro incompatibility, 319
   object model for, 318
   object type of, 291
   purpose of, 318
   System.Windows.Forms assembly, 318
/fs switch, 469
FUIDs, add-ins with, 155-156
FullName property, 488-489
functions
   abstract, 504
   AddFunction method, 511
   CodeFunction methods, 504
   CodeFunction objects, 502-505
   shared, 504
   vsCMFunction enumeration, 503-504

G
GAC (global assembly cache), 401
garbage collector, 222
generating code
   Access parameter, 508
   Add methods, 389, 485-486, 492
   AddAttribute method, 512
   AddBase method, 513-514
   AddClass method, 509-510
   AddDelegate method, 510
   AddEnum method, 512
   AddFunction method, 511
   AddImplementedInterface method, 514
   AddInterface method, 510
   AddMember method, 515
   AddNamespace method, 509
   AddParameter method, 515
   AddProperty method, 511
   AddStruct method, 509-510
   AddVariable method, 512
   bugs in, 393
   building source files, 389-393
   child element creation, 390-391
   class creation, 392-393
   common parameters, 507-508
   CreateArrayType method, 515-516
   Delete method, 516
   element creation, 390
   enumeration creation, 391
   function type parameter, 392
   goals of, 389, 507
   interface creation, 391
   Location parameter, 508
   Name parameter, 507
   namespace creation, 390
   Position parameter, 508
   Remove method, 516
   RemoveBase method, 517
   RemoveInterface method, 517
   RemoveMember method, 517
   RemoveParameter method, 518
   structure creation, 391
   Type parameter, 507
GetEndPoint method, 490
GetLatestVersion command (VSS), 476
GetStartPoint method, 490
/GL switch, 7
global assembly cache (GAC), 401
GreaterThan method, 354
/GS switch, 7-8
GUI option, Devenv.exe, 468
GUIDs
   add-ins using, 155-156
   Custom wizards using, 276
   of programming languages, 484, 486
   of windows objects, 289-290
   of wizards, 262, 267, 276

H
HACK tokens, 313
help features
   brace matching, 84-85
   Dynamic Help, 85-86
   F1 key, 81, 448
   IntelliSense, 81-85
   member lists, 82-83
   parameter information, 83
   statement completion, 81-83
   ToolTips, 84
   word completion, 84
Help system
   custom filters, 446
   custom help files, 455-462
   Dynamic Help Window, customizing, 449-454
   navigating, 441-448
   searching, 443-448
   wildcards and logical operators, 445
Highlight Search Hits option, 444
History command, 477
history of Visual Studio .NET, 3-4
HTML designer, 291
HTMLWindow objects, 343-344

I
Icon Browser utility, 180
icons, adding to Task List, 306-308
IDEs (integrated development environments)
   advantages of .NET, 10
   folder for, 22
   interoperability, 10
   macros. See Macros IDE
   windows, 11
IDL-style attributes, 9
IDTExtensibility2 interface
   add-ins, required for, 151
   Connect.cs example, 128-132
   connectMode parameter, 165
   custom parameters, 165
   EnvDTE namespace, 163-165
   events, calling, 158, 160
   LifeCycle.cs example, 160
   methods of, 127, 164-171
   OnAddInsUpdate method, 127, 166-170
   OnBeginShutdown method, 127, 170
   OnConnection method, 127, 164-165
   OnDisconnection method, 127, 170, 171
   OnStartupComplete method, 127, 165
   purpose of, 127, 162
Immediate mode, 19
Imports statements
   macros, within, 112
   VSProject.Imports, 235, 237
Incremental Build option, 46
incremental searching, 95-96
Initial Directory, setting, 23
inline functions, 7
Install branch, 414
installer properties, 406-410, 428-431
installing
   add-ins, 134
   default folder for, 21
   .NET Framework, 432-438
   projects. See installing projects
   VSS (Visual SourceSafe), 471
installing projects
   CDs for, 436
   condition algebra, 426-428
   creating setup projects, 397-439
   custom actions, 421-424
   debugging, 425
   File System editor for, 399-403
   File Types editor for, 411-413
   installation folder, choosing, 399
   installer properties, 406-410, 428-431
   Launch Conditions editor, 425-431
   merge modules, 431
   .NET programs, 432-438
   project output, 401-403
   Registry editor for, 404-410
   setup projects, creating, 397-439
   User Interface editor for, 413-421
   User/Machine Hive, 405
   Windows Installer, 397
integrated development environments. See IDEs
IntelliDoc files, 402
IntelliSense, 81-85, 231
Interface Definition Language (IDL)-style attributes, 9
interfaces
   AddImplementedInterface method, 514
   AddInterface method, 510
   CodeClass property for returning, 495
   CodeInterface objects, 496
   generating with code model, 391
   RemoveInterface method, 517
   removing, 495
interoperability of programming languages
   CLR for, 6, 10
   code model for. See code model
   designers, 15
   IDE for, 10
Is operator, 333-335
IsActiveEndGreater property, 358
IsEmpty method, 358
IsOpen property, 362
Item Foreground color, 74
Item method, Solution object, 215
ItemOperations object
   Add methods, 228-230
   creating documents with, 349
   PromptToSave property, 214


Next



Last Updated: January 28, 2003
Top of Page