二、把wsdl2h.exe的目錄設定成環境變數。
三、生成標頭檔案
wsdl2h -o ***.h url(***.h為自己定義 的頭檔名稱,url為需要訪問的webservice位址+?wsdl
例如:http://localhost:2063/service1.asmx?wsdl
)。注:執行此步驟時若輸入url生成的標頭檔案為空時,可以用webserver生成的.wsdl檔案代替url。
四、將「\gsoap-x.x\gsoap\import」目錄下的soap12.h、stl.h、stldeque.h、stllist.h、stlset.h、stlvector.h、複製到「gsoap-2.8\gsoap\bin\win32」中。
生成**的時候要用到(若不在
gsoap-2.8\gsoap\bin\win32目錄下生成則需要把這兩個檔案複製到當前目錄下
)。x.x為版本號,根據自己的版本確定。
五、生成webservice要呼叫的**
-c 僅生成客戶端**
-s 僅生成伺服器端**
-l 不要產生soapclientlib.c和soapserverlib.c檔案
-c 產生純c**,否則是c++**(與標頭檔案有關)
-i 指定import路徑(見上文) ·
-x 不要產生xml示例檔案
-i 生成c++包裝,客戶端為***xproxy.h(.cpp),伺服器端為***xservice.h(.cpp)。
根據自己的情況選擇**
例如:soapcpp2 -c -l -i -x ***.h -i ../../import(***.h就是上邊生成的 標頭檔案)。
若提示「critical error: #import: cannot open file "stl.h" for reading」,吧stl.h檔案複製過來就行。
六、在新工程中新建乙個資料夾,將上一步生成的下列檔案複製到新建的資料夾中。
1.soapc.cpp
2.soaph.h
5.soapstub.h
七、在「\gsoap-x.x\gsoap」目錄下找到 stdsoap2.cpp 和stdsoap2.h 也複製到上一步的檔案中去。
八、把***.nsmap(在第六步中生成的)中的檔案新增到資源中。
九、在工程中開始呼叫。
2.定義傳送請求的報文結構體。
3.給結構體賦值。
4.定義返回值得報文結構體。
5.使用**類中webservice的方法。
6.取得返回結果。
備註:1. .nsmap新增後 編譯時會出現與其相關的錯誤如下圖所示 新增with_nonamespaces 即可;
2 .最好將webservice中的陣列轉換成寬字元不然漢子會亂碼
轉換方法是在當前目錄建立typemap.dat檔案並在檔案中寫入如下語句:
xsd__string = | std::wstring | wchar_t*
SVN使用使用教程
本人在公司孤兒式開發,是用不到svn這種工具的,但是怕突然某一天電腦壞掉,消失所以還是使用上 管理工具。簡單概括一下svn它是 幹什麼的 一群人寫 每乙個人寫的部分都不一樣,但是專案是乙個整體,每個人的 需要合到一起才是乙個完整的專案,但是每乙個人寫的 又不可能出現在其他人的電腦上,所以使用svn專...
Git使用教程
提起git,大家無疑會想到github,沒錯,我就是通過眾多的github專案鏈結了解到的git,不知你是否也在走這條路呢?如果是的話,本文有一些有用的總結性文字以及一些 git教程 可以教會你如何去使用 git.當然,這些對 github 同樣適用.這裡我又翻到了個幻燈片,可以供大家 寫給大家的 ...
mii tool使用教程
mii tool 這是專門設定網絡卡工作模式的命令 1.檢視網絡卡的工作模式,輸入命令 mii tool v eth0 negotiated 100basetx fd,link ok product info vendor 00 05 be,model 8 rev 0 basic status au...