web-dev-qa-db-fra.com

DLLImport manquant même s'il existe un "utilisation d'InteropServices"

J'ai le code suivant:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using MapsApp.DB;

namespace MapsApp
{
    public partial class _Default : System.Web.UI.Page
    {
        [DLLImport("GeoUrbanApp.exe")]
        public static extern double CalcFigure(double east, double north, double size);
...

J'essaie d'appeler la fonction CalcFigure à partir du .exe. Je l'ai ajouté dans les références et j'essaye de l'importer. Tout ce que je reçois c'est:

The type or namespace name 'DLLImport' could not be found (are you missing a using directive or an Assembly reference?)

The type or namespace name 'DLLImportAttribute' could not be found (are you missing a using directive or an Assembly reference?)

La solution que la plupart des gens trouvent en ligne est "l'utilisation de System.Runtime.InteropServices;" mais je l'ai.

22
Vadiklk

C'est DllImport pas DLLImport

:)

32
Kieren Johnstone

Essayez d'ajouter "using System.Runtime.InteropServices;" pour votre classe, c'est l'espace de noms dans lequel réside DllImportAttribute.

Razie

60
Roz