0

IOKitフレームワークを使用してデバイスのIODeviceTreeパスを取得しようとしています。IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/SATA@B/AppleMCP79AHCI次のコードを使用して、デバイスのIOServiceパス()を取得できます。

CFMutableDictionaryRef matchingDict = NULL;
matchingDict = IOServiceMatching("AppleMCP79AHCI");
io_service_t sataService;
io_string_t path;
sataService = IOServiceGetMatchingService(kIOMasterPortDefault, matchingDict);
IORegistryEntryGetPath(sataService, kIOServicePlane, path);
NSLog(@"%s", path);

ただし、IODeviceTree平面内のデバイスのパスを取得する必要があります。平面ではIODeviceTree、パスはのようになりますIODeviceTree:/PCI0@0/SATA@B。単純に置き換えkIOServicePlaneてみましkIODeviceTreePlaneたが、何も返されませんでした。私はの経験がないIOKitので、私がここでやっていることは明らかなことだと確信しています。

ありがとう

4

1 に答える 1

0

それを理解したので、私はIODeviceTreeに存在しなかったクラス名を使用していました。

于 2010-11-19T23:47:42.960 に答える