Index
D
dashed lines, 76
Data Set Ready (DSR) signal, 597
data transfers, sockets, 644
data typesCLR, 1120–1122
databases, 439–440
managed vs. unmanaged, 1142
overview, 5
registry, 419
databasescommunication, 534
creating, 443–447
data types, 439–440
deleting, 455
designing, 440
enumerating, 456
examples, 458–488
indexes, 440
information queries, 457–458
mounted, 441–442
object store, 443
opening, 447–449
overview, 439–440
RAPI functions, 755–757
reading records, 452–455
searching records, 449–452
sort order, 452
type values, 444
unmounted, 443
volumes, 441
writing records, 455
datagram connections, 639, 645
date and time picker control, 5, 206, 289–291
DATETIMEPICK_CLASS, 289
days, calendar, 286–289
DB_CEOID_CHANGED, 449
DB_CEOID_CREATED, 449
DB_CEOID_DATABASE_DELETED, 449
DB_CEOID_RECORD_DELETED, 449
DBGPARAM structure, 1071
dbSize field, 960
DC (device contexts). See device contexts (DC)
DCB structure, 589, 594
DCBlength field, 590
DCX_LOCKWINDOWUPDATE, 42
DCX_NORESETATTRS, 42
DCX_PARENTCLIP, 42
DCX_VALIDATE, 42
DDBs (device dependent bitmaps), 67
dead characters, 98
debug zones, 1070–1071
debuggingconsole and, 822
service zone bitmaps, 1093
Today screen items, 881
DEBUG_ONLY_THIS_PROCESS, 495
DEBUG_PROCESS, 495
DEBUGREGISTER macro, 1071
DEBUGZONE macro, 1070, 1079
decommit virtual memory, 368
DEF (function definition) files, 765
defaultfile system, 386
fonts, 53, 55
local heaps, 364
stack size, 376
DEFAULT_QUALITY, 54
DefWindowProc function, 35–36
Deinit function, 1057, 1087, 1090
delegate keyword, 1122
delegates, CLR, 1122–1123
Delete key, 94
DeleteCriticalSection function, 523
DeleteDC function, 73
DeleteFiber function, 508
DeleteFile function, 409
DeleteObject function, 66
deletingconnections, 619
critical sections, 523
database records, 455
databases, 455
directories, 409
event objects, 514
fibers, 508
files, 409
fonts, 57
mutexes, 521
registry keys, 419
registry values, 419, 781
semaphores, 519
DeregisterDevice function, 692, 1050
DeregisterService function, 1089, 1092
Deselect method, 901
desktop connectivityCeUtil DLL functions, 777–781
direct socket, 795
notificationsCOM method, 783–786
examples, 786–794
overview, 781
registry method, 782–783
Windows CE side, 794
overview, 747
RAPIcustom functions, 762–768
ending sessions, 751
error handling, 750
examples, 758–762, 768–777
initializing, 750
overview, 748
pre-defined functions, 751–758
versions, 749
desktops, described, 129
DestroyCommandBand function, 260
destroyingcommand bars, 221
directories, 409
event objects, 514
fibers, 508
fonts, 57
mutexes, 521
semaphores, 519
separate heap, 375
windows, 27, 36
DestroyWindow function, 308
detecting running applications, 827
DEVFLAGS_LOADLIBRARY, 1049
DEVFLAGS_NAKEDENTRIES, 1049
DEVFLAGS_NOLOAD, 1049
DEVFLAGS_UNLOAD, 1049
device attributes, 388
device context handles, 1056
device contexts (DC)attributes, 44–46
bitmaps, 71
described, 26
DIB, 69
fonts, 54–57
overview, 41–43
window regions, 41
device dependent bitmaps (DDBs), 67
device discoveryBluetooth, 672–681
OBEX, 716–718
device drivers. See also stream device drivers
asynchronous I/O, 1079–1084
building, 1070–1071
debug zones, 1070–1071
enumerating, 1050–1052
examples, 1071–1079
interface classes, 1065–1067
load process, 1047–1050
names, 1046, 1052
overview, 1045
power management, 1067–1070
reading, 1052–1054
types, 1045–1046
unloading, 1050
writing, 1052–1054
device escape codes, 1037
device field, 689
device independent bitmaps (DIBs), 68–71, 77
Device Manager, 1046–1047, 1051, 1054–1056, 1084
DeviceDx field, 1069
DeviceFlags parameter, 1043
DeviceIoControl function, 691, 1053, 1061, 1087
DEVICELIST structure, 646
DevicePowerNotify function, 1068
DeviceState parameter, 1043
device-to-device communicationBluetoothdiscovery, 672–681
examples, 692–713
overview, 670–671
service publications, 682–685
stack, 671
virtual COM ports, 687–692
Winsock, 685–687
IrSock, 645–651
OBEXapplication callbacks, 714–716
communication process, 718–720
discovery, 716–718
examples, 720–744
initializing, 714
overview, 714
overview, 637
sockets, 638
DHCP (Dynamic Host Configuration Protocol), 1098
dialing. See cell phones
dialog boxesChoose Color, 315
common, 314
creating, 302–303
examples, 316–353
File Open, 314
full-screen, 865–866
informational, 866–867
input dialogs, 866–867
modeless vs. modal, 307–308
overview, 297–298
Pocket PC, 864–869
Print, 315
procedures, 303–308
property sheets, 297, 308–314, 868–869
Save As, 315
scrolling, 950
Smartphone, 949–950
styles, 300
templates, 298–302
title bars, 300
Today item options, 880, 882
types, 298
units, 299
Dialog Manager, 298
DialogBox function, 302–303
DialogBoxIndirect function, 303
DialogBoxIndirectParam function, 303–304
DialogBoxParam function, 302–304
dialogs. See dialog boxes
DIB_PAL_COLORS, 77
DIB_RGB_COLORS, 71, 77
DIBs (device independent bitmaps), 68–71, 77
dimensions, text, 43
direct memory access (DMA), 367
direct socket connectivity, 795
directoriescreating, 409
current, 385
described, 800
destroying, 409
vs. drives, 413–415
information queries, 392–393
management functions, 409
moving, 409
names, 386, 409
searching, 410–413
special folders, 801–803
directory management RAPI functions, 752–755
DirectX, 997
disabled buttons, 138, 215
DisableThreadLibraryCalls function, 493
DISCARDABLE keyword, 183, 185
discardable keyword, 299
DISCDLGSTRUCT structure, 620
DISC_NO_FORCE, 620
Disconnect method, 721
disconnecting remote resources, 619–620
DiscoverDevices method, 1137
discovery processBluetooth, 672–681
OBEX, 716–718
DispatchMessage function, 24, 303, 307
display DC, 42, 44
displayingmenus, 181
Pocket PC notifications, 859
SIP, 846–847
text, 43
displays. See also drawing
GAPI, 999–1000
overview, 4
power management, 1036–1038
stylus, 109
user feedback, 110
writing storage, 110–116
Dispose method, 1138
DLGTEMPLATE structure, 303
DLL Hell, 998
DLL key, 1047
DllCanUnloadNow function, 896
DllGetClassObject function, 896
DllImport attribute, 1140
DllMain function, 492
DllRegisterServer function, 896
DLLsdebugging, 822
vs. EXE, 489–493
trusted vs. untrusted, 525–527
DLL_THREAD_ATTACH, 493
DLL_THREAD_DETACH, 493
DllUnregisterServer function, 896
DMA (direct memory access), 367
DM_RESETSCROLL, 950
DM_SETCHECK, 138
Do prefix, 35
DoCreateBtnWnd function, 177
documents, recently used, 805
Documents submenu, 805
DoDestroyMain, 35
DoMouseSip routine, 928
DONT_RESOLVE_DLL_REFERENCES, 492
DoOpenMain, 405
DoPaintMain, 35
DoPaintSip routine, 928
Double data type, 440
double screen taps, 109
Down Arrow key, 94
down state, key, 98
down volume button, 945
dpCurrParams structure, 1093
DRAFT_QUALITY, 54
drag list control, 296
DrawButton function, 178
DrawEllipse method, 1130
drawingbitmaps, 66–74
device contexts, 41–43
GAPI, 1001
lines, 74–75
overview, 39–40
pens, 75–77
regions, 40–41
shapesbrushes, 77–78
circles, 79
ellipses, 79
examples, 82–89
fill functions, 80–82
overview, 77
polygons, 80
rectangles, 78–80
WM_PAINT, 40–43
DRAWITEMSTRUCT structure, 139
DrawText function, 27, 43, 51
drivers. See also serial communication; stream device drivers
asynchronous I/O, 1079–1084
Bluetooth, 687
building, 1070–1071
debug zones, 1070–1071
enumerating, 1050–1052
examples, 1071–1079
interface classes, 1065–1067
load process, 1047–1050
names, 1046, 1052
overview, 1045
power management, 1067–1070
reading, 1052–1054
types, 1045–1046
unloading, 1050
writing, 1052–1054
drives vs. directories, 386, 413–415
drop-down buttons, 216–218
drop-down combo boxes, 141
drop-down list combo boxes, 141
DS_ABSALIGN, 300
DS_CENTER, 300
DS_MODALFRAME, 300
DSR (Data Set Ready) signal, 597
DS_SETFONT, 300
DS_SETFOREGROUND, 300
DT_CALCRECT, 43, 51
DT_CENTER, 43
DTM_SETFORMAT, 290
DTN_FORMAT, 291
DTN_FORMATQUERY, 291
DTN_USERSTRING, 290
DTN_WMKEYDOWN, 291
DTR_CONTROL_DISABLE, 590
DTR_CONTROL_ENABLE, 591
DTR_CONTROL_HANDSHAKE, 591
DTS_APPCANPARSE, 290
DT_SINGLELINE, 43
DTS_LONGDATEFORMAT, 289
DTS_SHORTDATEFORMAT, 289
DTS_SHOWNONE, 289
DTS_TIMEFORMAT, 289
DTS_UPDOWN, 289
DTVCENTER, 43
duplicate synchronization handles, 521
DUPLICATE_CLOSE_ACCESS, 521
DuplicateHandle function, 521
DUPLICATE_SAME_ACCESS, 521
dwActiveProcessorMask field, 361
dwAdditionalFlags parameter, 412
dwAllocationGranularity field, 361
dwAvailPageFile field, 362
dwAvailPhys field, 361
dwAvailVirtual field, 362
dwBufferSize parameter, 970
dwBytes parameter, 374–375
dwCapability parameter, 719
dwContext registry value, 1050
dwControlFlags parameter, 682
dwConversion parameter, 902
dwCreationDistribution parameter, 388–389
dwCreationFlags parameter, 495, 497, 503
dwCurrentMessages field, 534
dwCurrentRxQueue field, 595
dwCurrentTxQueue field, 595
dwData field, 214
dwData parameter, 1090
dwDbaseType field, 444
dwDbaseType parameter, 456
dwDesiredAccess parameter, 388, 406, 521
dwDeviceFlags parameter, 1068
dwDevNum field, 619
dwDisplayType field, 622
dwEvent field, 559, 564
dwExStyle parameter, 22
dwFileAttributes field, 754
dwFlags field, 118, 263, 309, 448, 962
dwFlags parameterdatabase creation, 444
database opening, 447–448
keyboard functions, 99
memory allocations, 374
message queues, 532
modules, 492
mounted database volumes, 442
records, reading, 453
remote drives, 618
SIP changes, 847
dwFlagsAndAttributes parameter, 389, 586
dwFreeType parameter, 368
dwFunc parameter, 596
dwHeight parameter, 1002
dwID field, 861
dwID parameter, 863
dwImDataSize field, 873
dwIndex parameter, 420
dwInfo parameter, 1050
dwInfoLevel parameter, 626
dwInitialSize parameter, 374
dwIoControlCode parameter, 1053
dwLength field, 361
dwLength parameter, 369
dwLenIn parameter, 1061
dwLenOut parameter, 1061
DWL_MSGRESULT, 314
DWL_USER, 351
dwMacRxQueue field, 595
dwMacTxQueue field, 595
dwMask field, 865, 943
dwMaxBaud field, 594
dwMaximumSize parameter, 374
dwMaxMessages field, 532, 534
dwMaxQueueMessages field, 534
dwMemoryLoad field, 361
dwMessage parameter, 808
dwMessageModes parameter, 966
dwMessageStatus field, 972
dwMilliseconds function, 507
dwMilliseconds parameter, 514
dwMoveMethod parameter, 391
dwNameSpace field, 673, 682
dwNumberOfBytesToMap parameter, 407
dwNumberOfProcessors field, 361
dwOffset parameter, 71
dwOffsetScore field, 905
dwOffsetSymbols field, 905
dwOID field, 395, 754
dwOptions parameter, 521
dwOrder field, 877
dwOut parameter, 1092
dwPageSize field, 361
dwParam field, 448
dwParams field, 962
dwPlatformId field, 1032
dwPriority field, 962
dwProcessorType field, 361
dwProvCapabilities field, 595
dwProviderSpecificDataBuffer parameter, 970
dwProviderSpecificDataSize parameter, 967
dwProvSpec1 field, 595
dwProvSpec2 field, 595
dwProvSub field, 595
dwRop parameter, 72
dwScope parameter, 620
dwSeekType parameter, 450
dwSentence parameter, 902
dwServiceMask field, 595
dwServiceState field, 1089
dwSettableBaud field, 594
dwSettableData field, 595
dwSettableParams field, 595
dwSettableStopParity field, 595
dwShareMode parameter, 388
dwSize field, 309, 445, 449, 532, 673
dwSize parameter, 365, 368–369, 442, 534, 900
dwState parameter, 871
dwStyle parameter, 130, 219
dwStyles parameter, 237
dwTimeout field, 972
dwTimeout parameter, 533, 963
dwTop parameter, 1002
dwTotalPageFile field, 362
dwTotalPhys field, 361–362
dwTotalVirtual field, 362
dwType field, 559, 622
dwType parameter, 619
dwUsage parameter, 621
dwValue parameter, 451
dwVolumeSerialNumber field, 395
dwWakeMask, 517
Dynamic Host Configuration Protocol (DHCP), 1098