проблема, когда я пытаюсь использовать функцию из моей DLL - PullRequest
0 голосов
/ 07 ноября 2019

У меня проблема, когда я пытаюсь использовать функцию из моей dll

Я сделал все, как здесь сказано: https://docs.microsoft.com/en-us/cpp/build/walkthrough-creating-and-using-a-dynamic-link-library-cpp?view=vs-2019

Но когда я пытаюсь запустить тестовое приложение, я получаю следующие сообщения об ошибках:

img1

img2

Вот весь мой код:

test.cpp:

#include "pch.h"
#include <iostream>

#include "SP_DLL.h"

// Run program: Ctrl + F5 or Debug > Start Without Debugging menu
// Debug program: F5 or Debug > Start Debugging menu

int main()
{
    symbol_count();
}

dlltest.h:

#pragma once

#include <iostream>
using namespace std;

extern "C" _declspec(dllexport) bool symbol_count();

dlltest.cpp:

#include "pch.h"
#include "SP_DLL.h"

bool symbol_count()
{

    char str[100];
    char symbol;
    size_t count = 0;

    cout << "Enter string: ";
    cin >> str;

    cout << endl << "Enter symbol to count: ";
    cin >> symbol;

    for each (auto el in str)
        if (el = symbol) count++;
    return true;
}

Если это помогает: когда я пытаюсь запустить пустой symbol_count () (funcиметь только код {return true;} и dll не включает) есть только один .dll не найден.

1 Ответ

0 голосов
/ 12 ноября 2019

Я полагаю, вы можете попытаться загрузить установленные пакеты из пакета C ++ Runtime v14 Framework для Desktop Bridge (Project Centennial), который предоставил msvcp140_app.dll. А затем скопировал "msvcp140_app.dll" из каталога "C: \ ProgramFiles \ WindowsApps \ Microsoft.VCLibs.140.00 ____ 8wekyb3d8bbwe", поместив его в папку своего проекта.

- Jeaninez - MSFT 8 ноября в2: 25

...