C # P Wywołaj DLL bez punktu wejścia do C ++?

Mam bibliotekę Dll C ++ „TheFoo.dll” za pomocą metody „Foo ()”

Mam dostęp do innego kodu C ++, który używa tej metody, po prostu wywołując:

Foo();

Wierzę, że Metoda ma:

 __declspec( dllexport )

Tak więc z odczytem, ​​który zrobiłem na temat P / Invoke, pomyślałem, że powinienem móc po prostu wywołać tę samą metodę z mojego kodu C #:

namespace PInvokeExample1
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();

        }


        [DllImport(@"C:\MyFolder\TheFoo.dll")]
        public static extern
            void Foo();

        private void button1_Click(object sender, RoutedEventArgs e)
        {
            Foo();

        }



    }
}

Gdy go uruchomię, pojawia się błąd:

Unable to find an entry point named 'Foo' in DLL 'C:\MyFolder\TheFoo.dll'.

Jakieś pomysły, dlaczego nie znaleziono?

questionAnswers(3)

yourAnswerToTheQuestion