Как вставить команду LC_LOAD_DYLIB в Мужественный двоичный файл (OSX)

Вы можете попробовать ниже - используя cte

with cte1 as 
(
select 'abc' as key
union 
select 'pqr' union select 'xyz' 
)
select keyword,case when key is null then 0 else 1 end as is_present 
from keywords left join cte1 on keyword=key
9
задан 7 November 2008 в 18:42
поделиться

2 ответа

Я не совсем уверен, что Вы пытаетесь выполнить, но самый легкий способ сделать это должно, вероятно, ввести поток в задачу Маха после того, как это запускается. Великий источник информации о выполнении этого (а также выполнение кода, чтобы сделать это) может быть найден здесь: http://rentzsch.com/mach_inject/.

Некоторые протесты, что необходимо знать:

  1. Мах task_for_pid () называет необходимыми для получения, порт Маха к задаче теперь privleged и требует авторизации звонить. Причина этого довольно самоочевидна, но если бы Вы были планированием выпуска чего-то с введенным кодом, то необходимо знать об этом.
  2. Ваш код будет работать в том же пространстве процесса как исходное приложение, но на отдельном потоке. У Вас, поэтому, будет полный доступ к приложению, однако, если это не будет ориентировано на многопотоковое исполнение быть очень осторожным относительно использования и управления данными из за пределами Вашего введенного кода. Очевидно, все многопоточные проблемы будут усилены здесь, потому что исходный код никогда не знал о Ваших дополнениях.
5
ответ дан 4 December 2019 в 22:31
поделиться

Самое простое решение, которое не связано с исправлением двоичного файла, это просто использовать переменную окружения DYLD_INSERT_LIBRARIES и затем запустить ваше приложение.

set DYLD_INSERT_LIBRARIES to /my/path/libAltInput.dylib

Я предполагаю, что причина, по которой динамический компоновщик сообщил об ошибке, заключается в том, что многие поля в формате файла Mach-O содержат адреса, указанные как смещение от начала файла, так что добавление другой команды загрузки сделает недействительным каждый адрес. Например, см. записи symoff и stroff в Mac OS X ABI Mach-O File Format Reference.

3
ответ дан 4 December 2019 в 22:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: