Visual stadioでコンパイルしたDLLの読み込みができない。Failed to load dynamic library error code 126

実現したいこと

Visual stadioでコンパイルしたDLLをFlutterで読み込ませたい。

前提

FlutterにてDart:ffiを用いたWindosアプリを開発しております。
そこで、Visual stadioでコンパイルしたDLLをVS Codeのデバッグ モードで実行したところ、読み込みエラーが発生します。
ファイルは確実に存在しており、フルパスでの指定も行いましたが、エラーが解消されません。

どなたか、お力添え頂けないでしょうか。

発生している問題・エラーメッセージ

以下ソースにあるDynamicLibrary.openにてDLLが読み込めませんというエラーが発生します。

Exception has occurred. ArgumentError (Invalid argument(s): Failed to load dynamic library 'OpenCVProc.dll': error code 126)

対象のソースコード

Dart

1import 'package:flutter/material.dart';2import 'dart:io';3import 'dart:typed_data';4import 'dart:ffi';5import 'package:ffi/ffi.dart';6import 'package:file_picker/file_picker.dart'; 7import 'package:path_provider/path_provider.dart'; 8 9void main() {10 DynamicLibrary dylib = DynamicLibrary.open("OpenCVProc.dll");11 Function rotimage = dylib.lookupFunction<12 Void Function(Pointer<Utf8>, Pointer<Utf8>, Int32),13 void Function(Pointer<Utf8>, Pointer<Utf8>, int)>("RotImg");14 runApp(const MaterialApp(15 home: MyHomePage(),16 ));17}

試したこと

  • 32bitと 64bitが混同していないか確認

⇒64bitで統一されているのを確認しました。

  • DynamicLibrary.openのPath指定方法を確認

⇒以下の方法を試しましたが、どれもダメでした。

dylib = DynamicLibrary.open(Platform.script .resolve("build/windows/runner/Debug/OpenCVProc.dll") .toFilePath()); dylib = DynamicLibrary.open(Platform.script .resolve("C:FULLPATH/build/windows/runner/Debug/OpenCVProc.dll") .toFilePath()); dylib = DynamicLibrary.open("C:FULLPATH\\build\\windows\\runner\\Debug\\OpenCVProc.dll"); - 環境変数のPATHにOpenCVProc.dllまでのPATHを追加

補足情報(FW/ツールのバージョンなど)

  • windows 64bit
  • visual studio 2022
  • Flutter 3.7.12

flutter doctor

$ flutter doctor Doctor summary (to see all details, run flutter doctor -v): [√] Flutter (Channel stable, 3.7.12, on Microsoft Windows [Version 10.0.22621.1848], locale en-US) [√] Windows Version (Installed version of Windows is version 10 or higher) [√] Android toolchain - develop for Android devices (Android SDK version 33.0.2) [√] Chrome - develop for the web [√] Visual Studio - develop for Windows (Visual Studio Community 2022 17.7.2) [√] Android Studio (version 2022.3) [√] VS Code (version 1.81.1) [√] Connected device (3 available) [√] HTTP Host Availability • No issues found!

コメントを投稿

0 コメント