私はどんな助けにも感謝し、私が今公式に頭を抱えていることを認めます.
USB デバイスが邪悪な Apple ジェネリック ドライバに奪われるのを防ぐためのコードレス kext がどうしても必要です。私は見つけることができるすべての質問とアドバイスを読み、自分が何をしているのかを知っていれば素晴らしいと思いますが、私は知りません.
/system/library/extensions、chown、chmod、kextcache -e の順に kext ファイルを配置しています。CFBundle を開けません
このデバイスは、ステータス領域内にいくつかのパラメーターを保持する小さなデバイスなので、制御レベルのアクセスを取得するだけで済みます。大きな読み取りまたは書き込みはありません。
アドバイス、ポインタ、またはヘルプは、ありがたく受け取られます。ViD と PiD と BCDDevic の番号は正しいです。元のドライバーと同じCFバンドル識別子を持つ場所を読みましたが、元のドライバーがないため、これは意味がありません。
ここに私のkextファイルがあります
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd ">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>English</string>
<key>CFBundleExecutable</key>
<string>VendorSpecificDriver</string>
<key>CFBundleIdentifier</key>
<string>com.changers</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundlePackageType</key>
<string>KEXT</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1.0.0</string>
<key>IOKitPersonalities</key>
<dict>
<key>DeviceDriver</key>
<dict>
<key>CFBundleIdentifier</key>
<string>com.changers</string>
<key>IOClass</key>
<string>IOService</string>
<key>IOProviderClass</key>
<string>IOUSBDevice</string>
<key>bcdDevice</key>
<integer>273</integer>
<key>idProduct</key>
<integer>1406</integer>
<key>idVendor</key>
<integer>5840</integer>
</dict>
<key>InterfaceDriver</key>
<dict>
<key>CFBundleIdentifier</key>
<string>com.changers</string>
<key>IOClass</key>
<string>IOService</string>
<key>IOProviderClass</key>
<string>IOUSBInterface</string>
<key>bConfigurationValue</key>
<integer>1</integer>
<key>bInterfaceNumber</key>
<integer>0</integer>
<key>idProduct</key>
<integer>1406</integer>
<key>idVendor</key>
<integer>5840</integer>
</dict>
</dict>
<key>OSBundleLibraries</key>
<dict>
<key>com.apple.iokit.IOUSBFamily</key>
<string>1.8</string>
<key>com.apple.kernel.libkern</key>
<string>6.0</string>
</dict>
</dict>
</plist>