gSoapのクライアント側には、ちょっと新しい(半作業サーバーの生成方法のみを知っている)のですが、複数のLNK2019に問題があります。gSoapクライアント側、LNK2019、Qt
しかし、すべての最初の
まず最初のものは、私はこのコマンドでKursServer.hを生成:
wsdl2h -s -o KursServer.h KursWeb.wsdl
KursWeb.wsdlが生成された後、私は自分のサーバーを開発し、使用して作成されました必要な機能を持つ私のヘッダー、彼は私と一緒にうまく動作します。
soapcpp2 -i -C -L -IC:/Users/Senso/Desktop/gsoap_2.8.30/gsoap-2.8/gsoap/import KursServer.h
と、いくつかのクライアントに作成 - 側のもの:私は、このコマンドをした
//gsoap WebFunctions service name: KursWeb
//gsoap WebFunctions service location: http://192.168.0.101:18083
int WebFunctions__delivered(char* UCID, char* DeviceNum, void);
int WebFunctions__established(char* UCID, char* DeviceNum, void);
int WebFunctions__connectionCleared(char* UCID,char* DeviceNum, void);
int WebFunctions__transfered(char* UCID, char* transNum1, char* transNum2, char* destenation, void);
int WebFunctions__holded(char* UCID, char* DeviceNum, void);
int WebFunctions__retrieved(char* UCID, char* DeviceNum, void);
int WebFunctions__setContextParametr(char* UCID, char* DeviceNum, char* Parametr, void);
int WebFunctions__getContextParametr(char* UCID, char* DeviceNum, char* result);
int WebFunctions__contextCheck(char* UCID, bool& ok);
Afther:
ここでは、このファイルの "コード" であるsoapKursWebProxy(HおよびCPP)は、 soapH、soapC、そしてstdsoap2(hとcpp)も含めて
この後、私はQtプロジェクトを作成しました。私はserv ER -
main.cppに
#include "mainwindow.h"
#include <QApplication>
#include "soap/KursWeb.nsmap"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
mainwindow.cpp
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "soap/soapKursWebProxy.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
/*just test*/
}
mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QSqlDatabase>
#include <QSqlQuery>
#include <QSqlError>
#include <QDebug>
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
private:
Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H
、私はこれをコンパイルしようとした後、私はエラーのトンを取得し、このように(すべてns1を参照):
soapKursWebProxy.obj:-1: error LNK2019: unresolved external symbol "void __cdecl soap_serialize___ns1__contextCheck(struct soap *,struct __ns1__contextCheck const *)" ([email protected]@[email protected]@[email protected]@@Z) в функции "public: virtual int __cdecl KursWebProxy::contextCheck(char const *,char const *,class _ns2__contextCheck *,class _ns2__contextCheckResponse &)" ([email protected]@@[email protected]@[email protected]@@Z)
と、このような:
soapKursWebProxy.obj:-1: error LNK2019: unresolved external symbol soap_faultstring referenced in function "public: virtual char const * __cdecl KursWebProxy::soap_fault_string(void)" ([email protected]@@UEAAPEBDXZ)
と、このような非常に奇妙な:私は、サーバー側でバック行ったよう
stdsoap2.obj:-1: error LNK2019: unresolved external symbol soap_faultcode referenced in function soap_set_fault
は、私は、私のすべての機能を定義する必要があり、または私はそれらを処理する必要がありますか?
ありがとうございます!
EDIT:MinGWのコンパイラを使用するしようと試み、私に
C:\Users\Senso\Documents\Client_MVSC_Kurs_III\soap\stdsoap2.cpp:12627: error: 'wctomb_s' was not declared in this scope
wctomb_s(&m, buf, sizeof(buf), (wchar_t)(c & 0x7FFFFFFF));
^
を与えた。また、他のいくつかのMSVCコンパイラは、単にビルド突然