Поместите console.log(arrayen.length);
внутрь, как показано ниже.
var arrayen = [];
$.ajax({
type: 'POST',
url: 'getEnglishWords.php',
success: function(words){
words = JSON.parse(words);
for(var i = 0; i < 50; i++) {
arrayen.push(words[i].en);
}
},error: (error) => {
console.log(JSON.stringify(error));
}
}).done(function(results) {
console.log("done : " + arrayen.length);
});
[Редактирование - после перечитывания вопроса, я вижу, что проблема Вы имеете, состоит в том, что DLLs становятся загруженными прежде main
запускается]
Я предполагаю, что те библиотеки записаны в C++ и загружают DLLs от конструктора некоторых объектов в глобальной области видимости. Это проблематично. Позвольте мне заключать Yossi Kreinin в кавычки:
Сделайте это сначала вещь в основном (). При использовании C++ необходимо сделать это сначала вещь прежде основной (), потому что люди могут использовать FP в конструкторах глобальных переменных. Это может быть достигнуто путем выяснения определенного для компилятора порядка инициализации единицы перевода, компиляции собственной библиотеки запуска C/C++, переопределения точки входа скомпилированной библиотеки запуска с помощью материала как LD_PRELOAD, перезаписав его в статически связанной программе тут же в двухуровневом изображении, имея принуждение конвенции кодирования для вызова FloatingPointSingleton:: экземпляр () перед использованием FP или стрельбы в людей, которым нравится делать вещи прежде основной (). Это - компромисс.
[Исходный ответ ниже]
Посмотрите эту страницу для алгоритма поиска, используемого для загружаемых DLL. Можно использовать SetDllDirectory()
добавить каталог к пути поиска DLL.
Также необходимо смочь добавить каталог к использованию переменной окружения PATH GetEnvironmentVariable()
и SetEnvironmentVariable()
.
Другая опция состоит в том, чтобы изменить текущий рабочий каталог на папку, содержащую DLLs с SetCurrentDirectory()
. Просто удостоверьтесь, что возвратили рабочий каталог после загрузки DLLs, если Вы когда-либо загружаете какие-либо файлы с помощью относительных имен файлов.
Моя рекомендация - использовать задержку загрузки для DLL и вызывать SetDllDirectory() достаточно рано, чтобы можно было найти их при вызове методов/функций.