Как бы я мог редактировать память других приложений с помощью Cocoa? Я знаю, что редактирование должно выполняться как root, но как мне это сделать в первую очередь?Управление исправлениями какао-памяти
ответ
Я бы указал, что PTrace is terribly broken on OS X. Надеюсь, эта статья поможет вам обойти проблемы. Вы также можете использовать mach непосредственно для изменения памяти ... проверьте, как это делает Mach_inject.
Ptrace - это обычный механизм для этого (и имеет мало/ничего общего с какао - это unix api, man ptrace). После того, как вы подключаетесь к процессу, и процесс остановлен, вы можете делать такие вещи, как чтение и запись из инструкции childs или пространства данных, одного шага и т. Д.
Мне нужно сделать редактирование в режиме реального времени, пока процесс запущен – computergeek6
Тогда трюк будет заключаться в том, чтобы ограничить время, потраченное на приостановку приложения, например. если ваши изменения занимают <10 мс, это не будет действительно примечательным, если вы не будете возиться с мультимедийным приложением, и в этом случае вы, вероятно, захотите <1 мс на изменение. – olliej
Так что я должен написать изменяющуюся часть в C для скорости, а затем создать оболочку Cocoa вокруг нее, чтобы взаимодействовать с остальной частью программы? – computergeek6
- 1. RIDE-Selenium: управление исправлениями с Firefox
- 2. Распространение программного обеспечения и управление исправлениями
- 3. MSI с несколькими исправлениями с исправлениями
- 4. Git работает с исправлениями
- 5. Diff между двумя исправлениями
- 6. Проблемы с исправлениями в файлах
- 7. Заменить значения массива с исправлениями?
- 8. Проблемы с исправлениями CoreImage в 10.6
- 9. Sqlite добавить tablename перед исправлениями столбца
- 10. TFS/Source Control: Как управлять исправлениями
- 11. Импорт/экспорт с stgit и git исправлениями
- 12. Версии сборки распределенного приложения с горячими исправлениями
- 13. TransitionDrawable с девятью исправлениями - маржа ошибочна
- 14. Различия между исправлениями между ядром android и ядром linux linux
- 15. TextBox Принимая только десятичное число с двумя исправлениями (например: ddd.dd)
- 16. жидкость div рядом с двумя исправлениями div (которые меняются)
- 17. Обновление стеклянной рыбы 3.1.1 до 3.1.2.2 с предварительно загруженными исправлениями
- 18. MVP для Android, как мы должны предоставить фрагмент с исправлениями?
- 19. Загрузить jquery из CDN с резервными исправлениями на оптимизированное requireJS
- 20. Директива AngularJS не работает над IE даже с исправлениями
- 21. Как исправить проект Rails 2.1 с новыми исправлениями об уязвимости
- 22. Поддержание Git Fork of Hg Repository с исправлениями
- 23. Управление изменениями/управление конфигурацией
- 24. Управление источниками Управление ветвями
- 25. Управление потоками/управление потоками Android
- 26. Управление интерфейсом и управление памятью
- 27. Управление бизнесом и управление процессами?
- 28. Управление трикотажем и управление сеансом
- 29. Управление пользователями vs Управление сервером
- 30. Управление версиями и управление выпуском
сломанный, вероятно, завышает проблему. Я думаю, что «неполное» будет немного более справедливым. –
Спасибо за помощь. Я посмотрел на код Mach_inject, и это именно то, что я искал. – computergeek6
Согласен, Брайан, это немного гипербола. Тем не менее, я думаю, что Apple, оставляя PTrace неполным, довольно плохая вещь. – Paul