//
// Сводка:
// Показывает, что преобразование значения HRESULT или сигнатуры retval, происходящее
// в процессе вызовов COM-взаимодействия, следует запретить.
Но он не даёт мне ничего в понимании того, когда и зачем этот этот атрибут используют, и что он даёт.
1. Это для работы с COM
2. Если почитаешь подробную документацию на английском на prservesig, то всё поймёшь.
COM методы возвращают hresult, который сообщает об успехе или ошибке.
Проведение по умолчанию - всё что не успех преобразовывать в исключение.
Preservesig сохраняет оригинальную сигнатуру и отдаёт hresult как есть, что может быть полезно, если ты хочешь как-то сам его проверить и обработать без выбрасывания исключений