From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Forum Italiano sui Prodotti NI

annulla
Visualizzazione dei risultati per 
Cerca invece 
Intendevi dire: 

Non riesco ad importare in Labview una libreria

Risolto!
Vai alla soluzione

Ciao!

Ho una dll che è stata compilata per il .NET Framework 2.0 con VS 2010 Platform = “Any CPU” e la devo importare in Labview.

Ho provato prima con il "Call library function node" ma mi dice che "The file selected is not a valid library". Ho cercato in rete ed ho visto che per librerie .net bisogna utilizzare il Connectivity tool .net. Inserisco il Constructor Node, collego la libreria è ottengo l'errore "il modulo doveva contenere un manifesto di assembly". Cercando ancora in rete leggo che devo creare un file "Labview.exe.config" con contenuto

"<?xml version ="1.0"?>
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0.30319"/>
</startup>
</configuration>"

e copiarlo nella stessa directory di Labview.exe.

A questo punto provo a collegare la libreria al construstor node di prima ed ora l'errore è "Tentativo di caricare un programma con un formato non corretto"..

Vi allego un'immagine con gli errori.

Ora non so più cosa fare e chiedo un grosso aiuto a voi..

0 Kudos
Messaggio 1 di 3
5.934Visualizzazioni

Io non ne vengo a capo, aiuto!
Vi do tutte le informazioni che ho a disposizione:


- Labview 2012
- Windows 7 Professional 64 bit
- Framework installati su PC 1.1, 2.0, 3.5, 4.5.2
- dll sviluppata con VS 2010, Platform = "Any CPU", per il .NET Framework 2.0

 

Per importarla vado su:

"Tools" - "Import" - ".NET Controls to Palette"
Col tasto "Browse" seleziono la dll in oggetto che ho preventivamente copiato in System32 (o in SysWOW64, stesso comportamento), appare la finestra di errore (errore1.jpg):

 

errore1.jpg


"System.BadImageFormatException: Impossibile caricare il file o l'assembly 'C:\Windows\System32\RADProcessResults.dll' o una delle relative dipendenze. Il modulo doveva contenere un manifesto di assembly <append><b>System.BadImageFormatException</b>"
Ho allora, seguendo un consiglio trovato sul forum, copiato nella directory di Labview.exe un file di nome "LabVIEW.exe.config" con contenuto:

 
"<?xml version ="1.0"?>
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0.30319"/>
</startup>
</configuration>"


Rifatto la procedura descritta sopra e ora l'errore è il seguente (errore2.jpg):

 

errore2.jpg


"System.BadImageFormatException: Impossibile caricare il file o l'assembly 'RADProcessResults.dll' o una delle relative dipendenze. Tentativo di caricare un programma con un formato non corretto.
InnerException: System.BadImageFormatException: Impossibile caricare il file o l'assembly 'RADProcessResults.dll' o una delle relative dipendenze. Tentativo di caricare un programma con un formato non corretto.
<append><b>System.BadImageFormatException</b>".

 

Perchè non riesco ad importarla? Qual è il problema?

0 Kudos
Messaggio 2 di 3
5.836Visualizzazioni
Soluzione
Accettato da autore argomento sepp974

Ho fatto ricompilare la dll esplicitamente per ambienti a 32 bit ed ora riesco ad importarla. Magari in futuro sarà utile a qualcuno.

0 Kudos
Messaggio 3 di 3
5.733Visualizzazioni