Извините, это не в яблочко Ответ, но проблема была решена.
Для начала я только что заметил подобный вопрос здесь: C ++ LoadLibrary () ошибка 3765269347. Анкет Я думаю, что это дает больше деталей, и стоит посмотреть, если вы в том же положении, в чем я.
Я благодарю @whozcraig, @danieldaranas и всем остальным, кто сделал полезные комментарии. Для других людей, читающих это, есть хорошая статья о HResult, которая расширяется на их точки на Википедии: http://en.wikipedia.org/wiki/hresult.
В моем случае проблема исчезла так же загадочно, как и возникла. Я создал класс C ++ для регулярного вызова DLL. Мои первоначальные усилия загрузили DLL непосредственно перед первым вызовом и кэшировали его в памяти. Это то же самое в принципе к тому, как он работает более года. Это привело к таинственной ошибке выше.
Я отразил его, чтобы загрузить DLL во время конструкции, но только извлекать функцию из нее во время выполнения. Это, по -видимому, работает и, вероятно, является лучшим способом сделать это (загрузка DLL во время строительства, освобождая его во время разрушения). Поскольку между конструкцией и первым вызовом в DLL очень мало, я не могу понять, почему один метод должен создавать ошибку ОС, а другой - нет.