DWORD WD_PcmciaScanCards(
HANDLE hWD,
WD_PCMCIA_SCAN_CARDS *pPcmciaScan);
| Name | Type | Input/Output |
|---|---|---|
| hWD | HANDLE | Input |
| pPcmciaScan | WD_PCMCIA_SCAN_CARDS* | |
| • searchId | WD_PCMCIA_ID | |
| * wManufacturerId | WORD | Input |
| * wCardId | WORD | Input |
| • dwCards | DWORD | Output |
| • cardId | WD_PCMCIA_ID[WD_PCMCIA_CARDS] | |
| * wManufacturerId | DWORD | Output |
| * wCardId | DWORD | Output |
| • cardSlot | WD_PCMCIA_SLOT[WD_PCMCIA_CARDS] | |
| * uBus | BYTE | Output |
| * uSocket | BYTE | Output |
| * uFunction | BYTE | Output |
| * uPadding | BYTE | N/A |
| • dwOptions | DWORD | Input |
| Name | Description |
|---|---|
| hWD | Handle to WinDriver's kernel-mode driver as
received from WD_Open [5.2] |
| pPcmciaScan | Pointer to a PCMCIA bus scan information structure: |
| • searchId | PCMCIA card ID information structure: |
| * wManufacturerId | The manufacturer ID of the PCMCIA cards to detect. If 0, the function will search for all PCMCIA manufacturer IDs. |
| * wCardId | The card ID of the PCMCIA cards to detect. If 0, the function will
search for all PCMCIA card IDs. If both wManufacturerId and wCardId are set
to 0 the function will return information regarding all connected PCMCIA
cards.
|
| • dwCards | Number of cards detected for the specified search criteria set in
the searchId field |
| • cardId | Array of PCMCIA card ID information structures for the detected
PCMCIA cards that match the search criteria set in the
searchId field: |
| * wManufacturerId | Manufacturer ID |
| * wCardId | Card ID |
| • cardSlot | Array of PCMCIA slot information structures for the detected PCMCIA
cards that match the search criteria set in the searchId
field: |
| * uBus | Bus number (0 based) |
| * uSocket | Socket number (0 based) |
| * uFunction | Function number (0 based) |
| • dwOptions | Should always be set to 0 (reserved for future use) |
WD_STATUS_SUCCESS(0) on success, or
an appropriate error code otherwise [A].
WD_PCMCIA_SCAN_CARDS pcmciaScan;
DWORD cards_found;
WD_PCMCIA_SLOT pcmciaSlot;
BZERO(pcmciaScan);
pcmciaScan.searchId.wManufacturerId = 0x1234;
pcmciaScan.searchId.wCardId = 0x5678;
WD_PcmciaScanCards(hWD, &pcmciaScan);
if (pcmciaScan.dwCards>0) /* Found at least one device */
{
/* Use the first card found */
pcmciaSlot = pcmciaScan.cardSlot[0];
}
else
{
printf("No matching PCMCIA devices found\n");
}