Bonjour,
J'essaye d'utiliser dans un programme en C cette fonction toute simple que j'ai écrite sur MATLAB :
J'ai réussi à linker toutes les bibliothèques nécessaires et à inclure les bon headers. (Pas d'erreur de complilation et d'édition de liens)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 function y = addition_test(a,b) y=a+b; end
De même les DLL sont aux bon endroit. (Windows ne râle pas au lancement du programme comme quoi une DLL manque)
Le problème est que ma console me retourne : "locale initialization failed in opccore with status code 2"
Sur le net j'ai trouvé plusieurs sujets à propos d'une erreur similaire mais avec un "status code 1", c'est une question de version de MATLAB visiblement.
Par contre j'ai rien trouvé sur le "status code 2", mis à part des forum chinois...
Mon code C :
Code C : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27 #include <stdlib.h> #include <stdio.h> #include <addition_test.h> int run_main(int ac, const char *av[]); int main(int argc, int *argv[]) { mclmcrInitialize(); return mclRunMain((mclMainFcnType)run_main, 0, NULL); } int run_main(int ac, const char *av[]) { if (!mclInitializeApplication(NULL, 0)) { printf("Could not initialize the application\n"); } addition_testInitialize(); addition_testTerminate(); system("PAUSE"); return 0; }
addtion_test.h est le header généré par MATLAB quand j'ai fait la création de la DLL via MATLAB.
Merci d'avance
Breep
Partager