0

我会很感激任何帮助,并承认我现在已经正式超越了我的头脑。

我迫切需要一个无代码的 kext 来防止 USB 设备被邪恶的 Apple 通用驱动程序占用。我已经阅读了我能找到的每一个问题和任何建议,甚至翻阅了 Apple 文档,如果我知道自己在做什么,那就太好了,但我不知道。

我的 kext 文件位于 /system/library/extensions、chown、chmod 和 kextcache -e 中。无法打开 CFBundle

该设备是一个小型设备,在其状态区域内包含一些参数,因此我只需要获得控制级别访问权限。没有大的读取或写入。

我们将不胜感激地收到任何建议、指点或帮助。ViD 和 PiD 以及 BCDDevic 数字是正确的。我在某处读到的 CF Bundle 标识符与原始的相同是解决方案,但这对我来说毫无意义,因为没有原始驱动程序。

这是我的 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>
4

1 回答 1

0

在 DeviceDriver 和 InterfaceDriver 的 CFBundleIdentifier 部分,尝试使用“com.apple.kpi.iokit”而不是“com.changers”。此外,不确定您是否需要 DeviceDriver 部分中的 bcdDevice 键。

希望比我有更多知识的人会插话。

于 2013-01-28T22:07:56.053 回答