我有一個在Mac 10.6系統上使用Xcode 3.2.5構建的程序,程序需要添加和刪除系統鑰匙串中的項目。它在Mac OS X 10.6上運行良好,但在10.7上運行,對SecKeychainItemDelete的調用返回錯誤代碼-67701,該錯誤代碼在10.6 SDK中未定義。經過一些Google搜索後,我發現在10.7 SDK中新增了-67701(errSecInvalidRecord)。有誰知道如何解決這一問題?SecKeychainItemDelete在Mac OS X上返回-67701(errSecInvalidRecord)10.7
4
A
回答
2
要回答一個超級老問題:我認爲這是因爲OS X Lion的新沙盒特性。我認爲解決方案是簽署您的應用程序併爲鑰匙串添加啓用。
來源:TunnelBlick - an OSS VPN tunnel - suggests this is the problem
4
我遇到了同樣的問題。發生這種情況的原因是每次調用SecKeychainFindInternetPassword和SecKeychainFindGenericPassword方法時,鑰匙串API都緩存SecKeychainItemRef對象。因此,無論何時調用這兩種方法中的任何一種,都一定要使用方法SecKeychainItemFreeAttributesAndData來清除api緩存。還使用CFRelease釋放SecKeychainItemRef對象。
相關問題
- 1. VLCKit爲MAC OS X 10.7
- 2. Mac OS X上的單聲道mkbundle 10.7
- 3. ROAuth和twitteR,Mac OS X 10.7,R 2.15
- 4. Mac OS X中的setlocale 10.7獅子
- 5. 無法在Mac OS 10.7上安裝netbeans
- 6. 在iOS 5和Mac OS X上構建iPhone工具鏈10.7
- 7. 在Mac OS X上安裝CitrusPerl中的Event :: Lib安裝10.7
- 8. 在Mac OS X上安裝紅寶石10.7
- 9. 在Mac OS X 10.7(Lion)上棄用了libcrypto
- 10. Qt Designer 4.8在Mac OS X上啓動時崩潰10.7
- 11. DbVisualizer無法在Mac OS X 10.7上找到數據庫
- 12. 在Mac OS X Lion上使用GUI的Smalltalk(10.7)
- 13. xdebug無法在Netbeans的Mac OS X 10.7平臺上工作
- 14. 在Mac OS X上升級元組,鏈接器錯誤10.7
- 15. 在OS X 10.7上安裝pycurl Lion
- 16. 在OS X 10.7(獅子)
- 17. Xcode 6.3.2 build for OS X 10.7
- 18. 如何在Mac OS X 10.7的XAMPP安裝eAccelerator在獅子
- 19. OS X 10.7 + Python 3.3 + numpy + matplotlib
- 20. 在Mac OS X Mavericks上ErlIDE
- 21. date_calc在Mac OS X上
- 22. 在Mac OS X中寫入「〜/ Library/Application Support」文件夾10.7
- 23. 未能建立PIL在Mac OS X 10.7獅子
- 24. 無法在Mac OS X上使用pip在virtualenv中安裝psycopg2 10.7
- 25. 正在更新grep for Mac OS 10.7
- 26. 當在Mac OS X上更改$ IFS在bash上時,Mac OS X上
- 27. 在OS X中編輯sudoers(10.7)
- 28. 如何在Mac OS X 10.7上使用TGB Platformer套件編譯Torque 2D?
- 29. meld在OS X 10.7不起作用?
- 30. 在JavaScript中檢測獅子(OS X 10.7)?
非常有幫助。對我來說,在內存中保留多個SecKeychainItemRef(即在我的KeychainItem包裝類成員變量中)指向同一個Keychain項目似乎觸發了這個問題。檢索數據後,我立即結束了CFRelease'ing。對我來說,似乎仍然有些尷尬。 – Daniel