Commit 537c82b01a9a949f9a1fe13fe1d844a107fe8020

Authored by Perry Werneck
1 parent a586d4ab
Exists in master

Implementando API VB.NET

src/native/actions.cc
@@ -18,7 +18,7 @@ @@ -18,7 +18,7 @@
18 * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin 18 * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin
19 * St, Fifth Floor, Boston, MA 02110-1301 USA 19 * St, Fifth Floor, Boston, MA 02110-1301 USA
20 * 20 *
21 - * Este programa está nomeado como set.cc e possui - linhas de código. 21 + * Este programa está nomeado como actions.cc e possui - linhas de código.
22 * 22 *
23 * Contatos: 23 * Contatos:
24 * 24 *
src/native/get.cc
@@ -36,16 +36,18 @@ @@ -36,16 +36,18 @@
36 * @brief Obtém a versão da biblioteca. 36 * @brief Obtém a versão da biblioteca.
37 * 37 *
38 */ 38 */
39 - void tn3270_get_version(h3270::session *ses, char* str, int strlen) { 39 + int tn3270_get_version(h3270::session *ses, char* str, int strlen) {
40 strncpy(str,ses->get_version().c_str(),strlen); 40 strncpy(str,ses->get_version().c_str(),strlen);
  41 + return 0;
41 } 42 }
42 43
43 /** 44 /**
44 * @brief Obtém a revisão da biblioteca. 45 * @brief Obtém a revisão da biblioteca.
45 * 46 *
46 */ 47 */
47 - void tn3270_get_revision(h3270::session *ses, char* str, int strlen) { 48 + int tn3270_get_revision(h3270::session *ses, char* str, int strlen) {
48 strncpy(str,ses->get_revision().c_str(),strlen); 49 strncpy(str,ses->get_revision().c_str(),strlen);
  50 + return 0;
49 } 51 }
50 52
51 int tn3270_get_cstate(h3270::session *ses) { 53 int tn3270_get_cstate(h3270::session *ses) {
src/native/init.cc
@@ -18,7 +18,7 @@ @@ -18,7 +18,7 @@
18 * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin 18 * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin
19 * St, Fifth Floor, Boston, MA 02110-1301 USA 19 * St, Fifth Floor, Boston, MA 02110-1301 USA
20 * 20 *
21 - * Este programa está nomeado como private.h e possui - linhas de código. 21 + * Este programa está nomeado como init.cc e possui - linhas de código.
22 * 22 *
23 * Contatos: 23 * Contatos:
24 * 24 *
@@ -47,7 +47,8 @@ @@ -47,7 +47,8 @@
47 * @brief Destrói uma sessão. 47 * @brief Destrói uma sessão.
48 * 48 *
49 */ 49 */
50 - void tn3270_destroy_session(h3270::session *ses) { 50 + int tn3270_destroy_session(h3270::session *ses) {
51 delete ses; 51 delete ses;
  52 + return 0;
52 } 53 }
53 54
src/native/private.h
@@ -70,10 +70,10 @@ @@ -70,10 +70,10 @@
70 70
71 DLL_PUBLIC h3270::session * tn3270_create_session(const char *name); 71 DLL_PUBLIC h3270::session * tn3270_create_session(const char *name);
72 72
73 - DLL_PUBLIC void tn3270_destroy_session(h3270::session *ses); 73 + DLL_PUBLIC int tn3270_destroy_session(h3270::session *ses);
74 74
75 - DLL_PUBLIC void tn3270_get_version(h3270::session *ses, char* str, int strlen);  
76 - DLL_PUBLIC void tn3270_get_revision(h3270::session *ses, char* str, int strlen); 75 + DLL_PUBLIC int tn3270_get_version(h3270::session *ses, char* str, int strlen);
  76 + DLL_PUBLIC int tn3270_get_revision(h3270::session *ses, char* str, int strlen);
77 77
78 DLL_PUBLIC int tn3270_connect(h3270::session *ses, const char *host, time_t wait); 78 DLL_PUBLIC int tn3270_connect(h3270::session *ses, const char *host, time_t wait);
79 DLL_PUBLIC int tn3270_disconnect(h3270::session *ses); 79 DLL_PUBLIC int tn3270_disconnect(h3270::session *ses);
@@ -86,17 +86,17 @@ @@ -86,17 +86,17 @@
86 DLL_PUBLIC int tn3270_get_program_message(h3270::session *ses); 86 DLL_PUBLIC int tn3270_get_program_message(h3270::session *ses);
87 DLL_PUBLIC int tn3270_get_secure(h3270::session *ses); 87 DLL_PUBLIC int tn3270_get_secure(h3270::session *ses);
88 88
89 - DLL_PUBLIC void tn3270_get_string(h3270::session *ses, int addr, char* str, int strlen);  
90 - DLL_PUBLIC void tn3270_get_string_at(h3270::session *ses, int row, int col, char* str, int strlen); 89 + DLL_PUBLIC int tn3270_get_string(h3270::session *ses, int addr, char* str, int strlen);
  90 + DLL_PUBLIC int tn3270_get_string_at(h3270::session *ses, int row, int col, char* str, int strlen);
91 91
92 - DLL_PUBLIC void tn3270_set_string_at(h3270::session *ses, int row, int col, const char* str); 92 + DLL_PUBLIC int tn3270_set_string_at(h3270::session *ses, int row, int col, const char* str);
93 93
94 DLL_PUBLIC int tn3270_wait_for_string_at(h3270::session *ses, int row, int col, const char *key, int timeout); 94 DLL_PUBLIC int tn3270_wait_for_string_at(h3270::session *ses, int row, int col, const char *key, int timeout);
95 DLL_PUBLIC int tn3270_cmp_string_at(h3270::session *ses, int row, int col, const char* str); 95 DLL_PUBLIC int tn3270_cmp_string_at(h3270::session *ses, int row, int col, const char* str);
96 96
97 - DLL_PUBLIC void tn3270_set_unlock_delay(h3270::session *ses, int ms);  
98 - DLL_PUBLIC void tn3270_set_cursor_position(h3270::session *ses, int row, int col);  
99 - DLL_PUBLIC void tn3270_set_cursor_addr(h3270::session *ses, int addr); 97 + DLL_PUBLIC int tn3270_set_unlock_delay(h3270::session *ses, int ms);
  98 + DLL_PUBLIC int tn3270_set_cursor_position(h3270::session *ses, int row, int col);
  99 + DLL_PUBLIC int tn3270_set_cursor_addr(h3270::session *ses, int addr);
100 100
101 DLL_PUBLIC int tn3270_enter(h3270::session *ses); 101 DLL_PUBLIC int tn3270_enter(h3270::session *ses);
102 DLL_PUBLIC int tn3270_pfkey(h3270::session *ses, int key); 102 DLL_PUBLIC int tn3270_pfkey(h3270::session *ses, int key);
src/native/screen.cc
@@ -18,7 +18,7 @@ @@ -18,7 +18,7 @@
18 * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin 18 * programa; se não, escreva para a Free Software Foundation, Inc., 51 Franklin
19 * St, Fifth Floor, Boston, MA 02110-1301 USA 19 * St, Fifth Floor, Boston, MA 02110-1301 USA
20 * 20 *
21 - * Este programa está nomeado como set.cc e possui - linhas de código. 21 + * Este programa está nomeado como screen.cc e possui - linhas de código.
22 * 22 *
23 * Contatos: 23 * Contatos:
24 * 24 *
@@ -31,18 +31,21 @@ @@ -31,18 +31,21 @@
31 31
32 /*---[ Implement ]----------------------------------------------------------------------------------*/ 32 /*---[ Implement ]----------------------------------------------------------------------------------*/
33 33
34 -void tn3270_get_string(h3270::session *ses, int addr, char* str, int strlen) { 34 +int tn3270_get_string(h3270::session *ses, int addr, char* str, int strlen) {
35 memset(str,0,strlen); 35 memset(str,0,strlen);
36 strncpy(str,ses->get_string(addr,strlen).c_str(),strlen); 36 strncpy(str,ses->get_string(addr,strlen).c_str(),strlen);
  37 + return 0;
37 } 38 }
38 39
39 -void tn3270_get_string_at(h3270::session *ses, int row, int col, char* str, int strlen) { 40 +int tn3270_get_string_at(h3270::session *ses, int row, int col, char* str, int strlen) {
40 memset(str,0,strlen); 41 memset(str,0,strlen);
41 strncpy(str,ses->get_string_at(row,col,strlen).c_str(),strlen); 42 strncpy(str,ses->get_string_at(row,col,strlen).c_str(),strlen);
  43 + return 0;
42 } 44 }
43 45
44 -void tn3270_set_string_at(h3270::session *ses, int row, int col, const char* str) { 46 +int tn3270_set_string_at(h3270::session *ses, int row, int col, const char* str) {
45 ses->set_string_at(row,col,str); 47 ses->set_string_at(row,col,str);
  48 + return 0;
46 } 49 }
47 50
48 int tn3270_wait_for_string_at(h3270::session *ses, int row, int col, const char *key, int timeout) { 51 int tn3270_wait_for_string_at(h3270::session *ses, int row, int col, const char *key, int timeout) {
src/native/set.cc
@@ -31,15 +31,19 @@ @@ -31,15 +31,19 @@
31 31
32 /*---[ Implement ]----------------------------------------------------------------------------------*/ 32 /*---[ Implement ]----------------------------------------------------------------------------------*/
33 33
34 -void tn3270_set_unlock_delay(h3270::session *ses, int ms) { 34 +int tn3270_set_unlock_delay(h3270::session *ses, int ms) {
35 ses->set_unlock_delay((unsigned short) ms); 35 ses->set_unlock_delay((unsigned short) ms);
  36 + return 0;
36 } 37 }
37 38
38 -void tn3270_set_cursor_position(h3270::session *ses, int row, int col) { 39 +int tn3270_set_cursor_position(h3270::session *ses, int row, int col) {
39 ses->set_cursor_position(row,col); 40 ses->set_cursor_position(row,col);
  41 + return 0;
40 } 42 }
41 43
42 -void tn3270_set_cursor_addr(h3270::session *ses, int addr) { 44 +int tn3270_set_cursor_addr(h3270::session *ses, int addr) {
43 ses->set_cursor_addr(addr); 45 ses->set_cursor_addr(addr);
  46 + return 0;
44 } 47 }
45 48
  49 +
src/pw3270-sharp/pw3270-sharp.cs
@@ -51,13 +51,13 @@ namespace pw3270 { @@ -51,13 +51,13 @@ namespace pw3270 {
51 extern static IntPtr tn3270_create_session(string name); 51 extern static IntPtr tn3270_create_session(string name);
52 52
53 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)] 53 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)]
54 - extern static void tn3270_destroy_session(IntPtr session); 54 + extern static int tn3270_destroy_session(IntPtr session);
55 55
56 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)] 56 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)]
57 - extern static void tn3270_get_version(IntPtr session, StringBuilder str, int strlen); 57 + extern static int tn3270_get_version(IntPtr session, StringBuilder str, int strlen);
58 58
59 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)] 59 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)]
60 - extern static void tn3270_get_revision(IntPtr session, StringBuilder str, int strlen); 60 + extern static int tn3270_get_revision(IntPtr session, StringBuilder str, int strlen);
61 61
62 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)] 62 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)]
63 extern static int tn3270_connect(IntPtr Session, string host, int wait); 63 extern static int tn3270_connect(IntPtr Session, string host, int wait);
@@ -84,13 +84,13 @@ namespace pw3270 { @@ -84,13 +84,13 @@ namespace pw3270 {
84 extern static int tn3270_get_secure(IntPtr Session); 84 extern static int tn3270_get_secure(IntPtr Session);
85 85
86 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)] 86 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)]
87 - extern static void tn3270_get_string(IntPtr Session, int addr, StringBuilder str, int strlen); 87 + extern static int tn3270_get_string(IntPtr Session, int addr, StringBuilder str, int strlen);
88 88
89 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)] 89 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)]
90 - extern static void tn3270_get_string_at(IntPtr Session, int row, int col, StringBuilder str, int strlen); 90 + extern static int tn3270_get_string_at(IntPtr Session, int row, int col, StringBuilder str, int strlen);
91 91
92 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)] 92 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)]
93 - extern static void tn3270_set_string_at(IntPtr Session, int row, int col, string str); 93 + extern static int tn3270_set_string_at(IntPtr Session, int row, int col, string str);
94 94
95 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)] 95 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)]
96 extern static int tn3270_wait_for_string_at(IntPtr Session, int row, int col, string key, int timeout); 96 extern static int tn3270_wait_for_string_at(IntPtr Session, int row, int col, string key, int timeout);
@@ -99,13 +99,13 @@ namespace pw3270 { @@ -99,13 +99,13 @@ namespace pw3270 {
99 extern static int tn3270_cmp_string_at(IntPtr Session, int row, int col, string str); 99 extern static int tn3270_cmp_string_at(IntPtr Session, int row, int col, string str);
100 100
101 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)] 101 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)]
102 - extern static void tn3270_set_unlock_delay(IntPtr Session, int ms); 102 + extern static int tn3270_set_unlock_delay(IntPtr Session, int ms);
103 103
104 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)] 104 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)]
105 - extern static void tn3270_set_cursor_position(IntPtr Session, int row, int col); 105 + extern static int tn3270_set_cursor_position(IntPtr Session, int row, int col);
106 106
107 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)] 107 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)]
108 - extern static void tn3270_set_cursor_addr(IntPtr Session, int addr); 108 + extern static int tn3270_set_cursor_addr(IntPtr Session, int addr);
109 109
110 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)] 110 [DllImport ("lib3270-mono",CallingConvention=CallingConvention.Cdecl)]
111 extern static int tn3270_enter(IntPtr Session); 111 extern static int tn3270_enter(IntPtr Session);
testprograms/vbclass.vb
@@ -41,11 +41,87 @@ Public Class pw3270 @@ -41,11 +41,87 @@ Public Class pw3270
41 End Function 41 End Function
42 42
43 <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _ 43 <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
44 - Private Shared Function tn3270_get_version(ByVal hSession As IntPtr, ByVal buffer As StringBuilder, ByVal strlen as Integer) as Long 44 + Private Shared Function tn3270_get_version(ByVal hSession As IntPtr, ByVal buffer As StringBuilder, ByVal strlen as Integer) as Integer
45 End Function 45 End Function
46 46
47 <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _ 47 <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
48 - Private Shared Function tn3270_get_revision(ByVal hSession As IntPtr, ByVal buffer As StringBuilder, ByVal strlen as Integer) as Long 48 + Private Shared Function tn3270_get_revision(ByVal hSession As IntPtr, ByVal buffer As StringBuilder, ByVal strlen as Integer) as Integer
  49 + End Function
  50 +
  51 + <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
  52 + Private Shared Function tn3270_connect(ByVal hSession As IntPtr, ByVal buffer As StringBuilder, ByVal seconds as Integer) as Integer
  53 + End Function
  54 +
  55 + <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
  56 + Private Shared Function tn3270_is_connected(ByVal hSession As IntPtr) as Integer
  57 + End Function
  58 +
  59 + <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
  60 + Private Shared Function tn3270_disconnect(ByVal hSession As IntPtr) as Integer
  61 + End Function
  62 +
  63 + <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
  64 + Private Shared Function tn3270_wait_for_ready(ByVal hSession As IntPtr, ByVal seconds as Integer) as Integer
  65 + End Function
  66 +
  67 + <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
  68 + Private Shared Function tn3270_wait(ByVal hSession As IntPtr, ByVal seconds as Integer) as Integer
  69 + End Function
  70 +
  71 + <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
  72 + Private Shared Function tn3270_get_cstate(ByVal hSession As IntPtr) as Integer
  73 + End Function
  74 +
  75 + <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
  76 + Private Shared Function tn3270_get_program_message(ByVal hSession As IntPtr) as Integer
  77 + End Function
  78 +
  79 + <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
  80 + Private Shared Function tn3270_get_secure(ByVal hSession As IntPtr) as Integer
  81 + End Function
  82 +
  83 + <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
  84 + Private Shared Function tn3270_get_string(ByVal hSession As IntPtr, ByVal addr as Integer, ByVal buffer As StringBuilder, ByVal strlen as Integer) as Integer
  85 + End Function
  86 +
  87 + <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
  88 + Private Shared Function tn3270_get_string_at(ByVal hSession As IntPtr, ByVal row as Integer, ByVal col as Integer, ByVal buffer As StringBuilder, ByVal strlen as Integer) as Integer
  89 + End Function
  90 +
  91 + <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
  92 + Private Shared Function tn3270_set_string_at(ByVal hSession As IntPtr, ByVal row as Integer, ByVal col as Integer, ByVal buffer As StringBuilder) as Integer
  93 + End Function
  94 +
  95 + <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
  96 + Private Shared Function tn3270_wait_for_string_at(ByVal hSession As IntPtr, ByVal row as Integer, ByVal col as Integer, ByVal key As StringBuilder, ByVal timeout as Integer) as Integer
  97 + End Function
  98 +
  99 + <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
  100 + Private Shared Function tn3270_cmp_string_at(ByVal hSession As IntPtr, ByVal row as Integer, ByVal col as Integer, ByVal buffer As StringBuilder) as Integer
  101 + End Function
  102 +
  103 + <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
  104 + Private Shared Function tn3270_set_unlock_delay(ByVal hSession As IntPtr, ByVal ms as Integer) as Integer
  105 + End Function
  106 +
  107 + <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
  108 + Private Shared Function tn3270_set_cursor_position(ByVal hSession As IntPtr, ByVal row as Integer, ByVal col as Integer) as Integer
  109 + End Function
  110 +
  111 + <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
  112 + Private Shared Function tn3270_set_cursor_addr(ByVal hSession As IntPtr, ByVal addr as Integer) as Integer
  113 + End Function
  114 +
  115 + <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
  116 + Private Shared Function tn3270_enter(ByVal hSession As IntPtr) as Integer
  117 + End Function
  118 +
  119 + <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
  120 + Private Shared Function tn3270_pfkey(ByVal hSession As IntPtr, ByVal key as Integer) as Integer
  121 + End Function
  122 +
  123 + <DllImport("lib3270-mono", CallingConvention := CallingConvention.Cdecl)> _
  124 + Private Shared Function tn3270_pakey(ByVal hSession As IntPtr, ByVal key as Integer) as Integer
49 End Function 125 End Function
50 126
51 Private Shared hSession As IntPtr 127 Private Shared hSession As IntPtr