Tuxedo clients

Hello, i am trying to build clients for tuxedo in multiple Operating Systems. So for Linux + Windows i can use Workstation Clients or Jolt clients to do my job
and call remotely tuxedo services. My question is if i can to do something similar to mobile OS like Android or iOS. Is there any way to create
tuxedo clients on mobile OS without the use of a web browser??
Thank you very much
Kostas

Hi Mats,
I have already seen the SALT. The problem is that i don't want to use SOAP in my application.
I want to create my own clients not based on any kind of browser and only communicating to the tuxedo server
directly and not in an intermediate Web Server like Web Logic.
So far, based on what i see this can only be done using CORBA. Of course there is a downside of
extending the Android SDK and possibly also the MAC OS and iOS as well.
That is my thoughts for now. Any correction, suggestion will be extremely helpful.
Best regards,
Kostas

Similar Messages

  • Tuxedo client running under Windows CE

    Does anyone know if the Tuxedo client portion can under on a Windows
    CE device and make service calls?
    (Windows CE 3.0)

    Hi Rumcajs,
    The current version of the LabVIEW PDA module (7.1) does not support
    calls to external code in the form of .NET assemblies. However, it DOES
    support calls to C-style DLLs and the way to do it is shown in the
    following example:
    Calling External Code in LabVIEW PDA for Pocket PC - Battery Information Example
    Please let me know if you have any further questions, thanks.
    Have fun!
    - Philip Courtois, Thinkbot Solutions

  • Error "The memory could not be "read" in tuxedo client 8.0

    Old Environment:
    1.Tuxedo Server 6.4
    2.Tuxedo /WS 6.4
    5.PowerBuilder 5.1
    New Environment:
    1.Tuxedo Server 8.0
    2.Tuxedo Client 8.0
    3.PowerBuilder 8
    In my upgrade software version progress, I want to unchange my old source code
    or little changed. I've DLL develop from Visual C++ to communicate bewteen Tuxedo
    and PowerBuilder.
    After upgraded software, I found memory error from my client PowerBuilder application
    (See error from attach file.) and I don't know what's cause of this error. And
    after I've found this error I try to use tuxedo /ws version 6.4 again, It's workable
    and not found memory error.
    Please give me if you found the solution of this case .
    Thanks you very much for yours help.
    [error.bmp]

    We are working on a similar case from another customer. Please contact customer support and
    provide them details of your case.
    -Deepak
    Sutep wrote:
    Old Environment:
    1.Tuxedo Server 6.4
    2.Tuxedo /WS 6.4
    5.PowerBuilder 5.1
    New Environment:
    1.Tuxedo Server 8.0
    2.Tuxedo Client 8.0
    3.PowerBuilder 8
    In my upgrade software version progress, I want to unchange my old source code
    or little changed. I've DLL develop from Visual C++ to communicate bewteen Tuxedo
    and PowerBuilder.
    After upgraded software, I found memory error from my client PowerBuilder application
    (See error from attach file.) and I don't know what's cause of this error. And
    after I've found this error I try to use tuxedo /ws version 6.4 again, It's workable
    and not found memory error.
    Please give me if you found the solution of this case .
    Thanks you very much for yours help.
    Name: error.bmp
    error.bmp Type: Bitmap Image (image/bmp)
    Encoding: base64

  • Tuxedo Client on Windows Server 2003/2008

    I know this is a little unorthodox, and probably not supported, any pointers on possible problems with WSL and WSH would be nice though.
    I'm trying to run a .NET application that acts as a Tuxedo client on the Windows Server 2008 operating system. I've tried this with multiple versions of the Tuxedo client software, including 7, 8, 9, and 10. The application works fine on Windows XP.
    My client ULOG:
    120157.CI2009CORE!?proc.3376.2624.1: LIBWSC_CAT:1055: ERROR: Unable to establish WSL connection
    120157.CI2009CORE!?proc.3376.2624.1: LIBWSC_CAT:1027: ERROR: Unable to connect to WSH
    120157.CI2009CORE!?proc.3376.2624.1: LIBWSC_CAT:1020: ERROR: Unable to obtain authentication level
    Has anyone tried something like this before? Is there a server 2008 setting I'm missing?
    EDIT:
    Same problem on a server 2003 machine. Using the 10.0 win 2003 installation and tried it with the 10.0 winXP install.
    Edited by: user1953107 on Feb 16, 2009 3:23 PM

    My original problem with the WSL seems to have been not having enough environment variables and the tux.env file set. This leads me to another problem though. I need to be able to set the WSNADDR at runtime, which I thought I was doing, but the API seems to insist on using the environment settings instead of what is set in the application.
    Example:
    TypedTPINIT tpinfo = new TypedTPINIT();
    tpinfo.flags = TypedTPINIT.TPMULTICONTEXTS;                       
    Utils.tuxputenv("WSNADDR=//NOTVALID");
    AppContext ctx1 = AppContext.tpinit(tpinfo);
    TypedString requestString = new TypedString(tbInputData.Text);
    TypedBuffer replyBuffer = new TypedString(0);
    ctx1.tpcall(tbServiceName.Text, requestString, ref replyBuffer, 0);
    string result = ((TypedString)replyBuffer).GetString(0, (int)replyBuffer.Size);
    ctx1.tpterm();That ought to fail completely because the WSNADDR "//NOTVALID" doesn't point anywhere. I only use an invalid WSNADDR for illustration, because even when I set WSNADDR in the code to a valid location, the API uses what is in the env file instead. Likewise I can set the env file to an invalid location, but use a good one in the code and the system will also fail.
    I really need to determine WSNADDR at runtime, how do I do that? I believe I'm following the instructions found at Link: [http://edocs.bea.com/tuxedo/tux100/dotnet/dotnet_chapter.html] and not getting the desired results.

  • Disconnecting Tuxedo Clients

    I would like to know if there is a simple way to disconnect Tuxedo clients from
    a Tuxedo server (perhaps in tmadmin??). My preference is to be able to disconnect
    a tuxedo client based on the user that is logged in (eg, the username listed when
    a 'pclt' command is run in tmadmin).
    I'm using version 7.1 of Tuxedo.
    Any help appreciated.
    Rod.

    You can do this at runtime. You can either write a program that calls the MIB, or
    use a ud32 script. You'll need to know the client ID and some other key fields.
    If you get stuck, post another message and we'll see if someone can help you a
    little more.
    Rod Hamilton wrote:
    Thanks Scott,
    Is this something that can be done at runtime? Can I use a utility to set the
    clients state to DEAD or do I need to write a custom app to easily do this?
    Thanks,
    Rod.
    Scott Orshan <[email protected]> wrote:
    You can use the MIB to set a Client's state to DEAD.
    Rod Hamilton wrote:
    I would like to know if there is a simple way to disconnect Tuxedoclients from
    a Tuxedo server (perhaps in tmadmin??). My preference is to be ableto disconnect
    a tuxedo client based on the user that is logged in (eg, the usernamelisted when
    a 'pclt' command is run in tmadmin).
    I'm using version 7.1 of Tuxedo.
    Any help appreciated.
    Rod.

  • Tuxedo client calls Tuxedo server using FML32

    I used a Tuxedo client calling a Tuxedo Server.
    Tuxedo server:
    It receives FML32 buffer and parse the info from ui_fml.h, e.g.
    #define     UI_SID     ((FLDID32)33852433)     /* number: 298001     type: long */
    #define     UI_NAME     ((FLDID32)33852434)     /* number: 298002     type: long */
    #define     UI_TEST     ((FLDID32)33852435)     /* number: 298003     type: long */
    In server code:
    void TEST(TPSVCINFO *rqst) {
    char line[200];
    long len = sizeof(line);
    FBFR32 bfr = (FBFR32) rqst->data;
    Fget32(bfr, UI_TEXT, 0, line, (FLDLEN32*)&len);
    printf("Fstrerror32(Ferror32)=[%s]\n", Fstrerror32(Ferror32);
    In Tuxedo client code:
    int main(int argc, char* argv[]) (
    char *sendbuf;
    if (tpinit((TPINIT *) NULL) == -1) {
              (void) fprintf(stderr, "tpcall2X:Tpinit failed\n");
              exit(1);
    if((sendbuf = (FBFR32 *) tpalloc("FML32", NULL, BUFLEN)) == (FBFR32*) NULL) {
              (void) fprintf(stderr,"Error allocating send buffer\n");
              tpterm();
              exit(1);
    len = Fsizeof32(sendbuf);
    if (-1 == Finit32(sendbuf, (FLDLEN32)len)) {
              tpfree((char*)sendbuf);
              exit(1);
    ret = tpcall("TEST", (char *)sendbuf, 0L, &rcvbuf, &rcvlen, 0);
    The server returns "Fstrerror32(Ferror32)=[LIBFML_CAT:2: ERROR: Buffer not fielded]", while the client works well.
    What are the reason? How to change that?
    Thanks.

    Hi Bill,
    Your problems are mostly in the client. You allocate sendbuf as an FML32 buffer, but then proceed to strcpy() into it which won't work. To manipulate the contents of an FML/FML32 buffer you must use the FML routines. So removing the strcpy(sendbuf, temp) in the client and replacing it with Fadd32(sendbuf, UI_TEXT, temp, sendlen) allows your application to work.
    By the way, in general you shouldn't need to be doing all the memset() calls you are doing. The extraneous stuff in buffers will be ignored, and certainly never memset() an FML32 buffer as it is not simply a bunch of bytes, but a complex dynamic structure that Tuxedo maintains.
    Finally on the server side, I couldn't get this line to compile as I indicated earlier:
    memset(out.out, 0, 4096);
    so I don't know how that is compiling for you, but the GCC compiler will not accept that, nor does it even make sense.
    Regards,
    Todd Little
    Oracle Tuxedo Chief Architect
    PS Here is the exact code that worked on my system:
    Server:
    #include <string.h>
    #include <stdio.h>
    #include <ctype.h>
    #include <atmi.h>     /* TUXEDO Header File */
    #include <userlog.h>     /* TUXEDO Header File */
    #include "bill.h"
    #if defined(__STDC__) || defined(__cplusplus)
    tpsvrinit(int argc, char *argv[])
    #else
    tpsvrinit(argc, argv)
    int argc;
    char **argv;
    #endif
         /* Some compilers warn if argc and argv aren't used. */
         argc = argc;
         argv = argv;
         /* userlog writes to the central TUXEDO message log */
         userlog("Welcome to the simple server");
         return(0);
    #ifdef __cplusplus
    extern "C"
    #endif
    void
    #if defined(__STDC__) || defined(__cplusplus)
    TEST(TPSVCINFO *rqst)
    #else
    TEST(rqst)
    TPSVCINFO *rqst;
    #endif
    char line[200];
    char *out;
    long n,len;
    FBFR32 *bfr = (FBFR32*) rqst->data;
    out = tpalloc("X_OCTET", NULL, 4096);
    memset(out, 0, 4096);
    memset(line , 0, sizeof(line));
    Fget32(bfr, UI_TEXT, 0, line, (FLDLEN32*)&len);
    printf("Fstrerror32(Ferror32)=[%s]\n", Fstrerror32(Ferror32));
    printf("line=[%s]\n", line);
    n = sprintf(out, "success");
    tpreturn(TPSUCCESS, 0, out, n, 0);
    }And the client:
    #include <string.h>
    #include <stdio.h>
    #include <atmi.h>
    #include "bill.h"
    #define BUFLEN 2400
    int main(int argc, char* argv[])
    char *sendbuf, *rcvbuf, service[15];
    long sendlen, rcvlen;
    int ret, i;
    char *result;
    char temp[2000];
    FLDLEN32 len = 0;
    if (tpinit((TPINIT *) NULL) == -1) {
    (void) fprintf(stderr, "tpcall2X:Tpinit failed\n");
    exit(1);
    if((sendbuf = (FBFR32 *) tpalloc("FML32", NULL, BUFLEN)) == (FBFR32*) NULL) {
    (void) fprintf(stderr,"Error allocating send buffer\n");
    tpterm();
    exit(1);
    if((rcvbuf = (char *) tpalloc("X_OCTET", NULL, BUFLEN)) == NULL) {
    (void) fprintf(stderr,"Error allocating receive buffer\n");
    tpfree(sendbuf);
    tpterm();
    exit(1);
    len = Fsizeof32(sendbuf);
    if (-1 == Finit32(sendbuf, (FLDLEN32)len))
    tpfree((char*)sendbuf);
    tpfree((char*)rcvbuf);
    exit(1);
    /* memset(rcvbuf, 0, sizeof(rcvbuf));
    memset(service, 0, sizeof(service));
    memset(temp, 0, sizeof(temp));
    strcpy(service, "TEST");
    strcat(temp, "(FLDID(168070265)) test \n\n");
    sendlen = (long)strlen(temp);
    strcpy(sendbuf, temp);
    Fadd32(sendbuf, UI_TEXT, temp, sendlen);
    printf("TEST call [%s] begin.\n", service);
    printf("sendbuf len=[%d]\n",sendlen);
    ret = tpcall(service, (char *)sendbuf, 0L, &rcvbuf, &rcvlen, 0);
    printf("ret=[%d]\n", ret);
    if(ret == -1) {
    printf("tpcall [%s] failed.\n", service);
    printf("Tperrno = %d, %s\n", tperrno, tpstrerror(tperrno));
    tpfree(sendbuf);
    tpfree(rcvbuf);
    tpterm();
    exit(1);
    printf("Returned string is: [%s]\n", rcvbuf);
    printf("tpcall successs.\n");
    /* Free Buffers & Detach from System/T */
    tpfree(sendbuf);
    tpfree(rcvbuf);
    tpterm();
    return(0);
    }

  • Tuxedo Client using async calls... hangs sometimes!

    Hello, I've noticed a fancy behaviour on Tuxedo Client applications...
    I wrote an application which receives multiple connections on a socket and dispatches messages to a server with asynchronous calls, then receives asynchronous notifications. Of course it can send multiple async requests before getting a notification.
    It seems that when I send an async request, and then I send another async request without getting the reply to the previous one first, the system hangs...
    The call stack is quite clear... and I can see on the unix message queue an outstanding message..
    I've used the TPU_DIP method, because none of the other unsolicited flavours works:
    TPU_SIG: Hangs because malloc can be interrupted by a signal, and within the unsol handrel a tpalloc (which in turn calls malloc) is called, and a kernel spinlock is locked
    TPU_THREAD: Hangs exactly in the same way ad TPU_DIP, but on a different thread...
    Does anyone knows how to solve this HUGE issue? Thanks in advance!
    Marco Romagnuolo
    0 0x3000403abc8 in _tmmsgrcv(...) in /usr/tuxedo/bea/tuxedo8.1/lib/libtux.so#1 0x3000405e650 in _tmrcvunsol(...) in /usr/tuxedo/bea/tuxedo8.1/lib/libtux.so
    #2 0x3000405d2f8 in tpchkunsol(...) in /usr/tuxedo/bea/tuxedo8.1/lib/libtux.so
    #3 0x3000405e480 in _tmchk4unsol(...) in /usr/tuxedo/bea/tuxedo8.1/lib/libtux.so
    #4 0x30004036ee4 in _tmatmienter(...) in /usr/tuxedo/bea/tuxedo8.1/lib/libtux.so
    #5 0x30004022944 in tpallocinternal(...) in /usr/tuxedo/bea/tuxedo8.1/lib/libtux.so
    #6 0x300040226f0 in tpalloc(...) in /usr/tuxedo/bea/tuxedo8.1/lib/libtux.so

    I need asynchronous notifications for their particular behaviour: they are notified as soon as they arrive through signals ot through a thread handled by Tuxedo itself.
    Now I've changed the policy of the process to use tpgetrply, but I have to poll in order to make it work, and it is UGLY.... anyway... anything else doesn't seem to work

  • There are errors on the Tuxedo-client (ULOG) while trying to work with Serv

    Hello,
    What we have:
    1. Tuxedo-server 8.1. (HP-UX)
    2. Tuxedo-client 9.1 (AIX 6.1)
    3. Java-program
    4. C-library which is supposed to work with tuxedo service (server side)
    and what we want:
    1.Java-program loads C-library using JNI and tries to communicate with Tuxedo service on server side.
    2. We get ULOG file on tuxedo-client side with errors which are after tpsend function. Program finishes after time out.
    3. We do not have JOLT system installed.
    Here are the errors from ULOG-file:
    114055.puma!AIX2C2TUX_stain.860250.515.0: 01-19-2011: Tuxedo Version 9.1, 64-bit
    114055.puma!AIX2C2TUX_stain.860250.515.0: LIBWSC_CAT:1332: ERROR: Unable to set mode to NONBLOCK
    114055.puma!AIX2C2TUX_stain.860250.515.0: LIBWSC_CAT:1085: ERROR: Unable to get reply to unsolicited message request
    114055.puma!AIX2C2TUX_stain.860250.258.0: LIBWSC_CAT:1332: ERROR: Unable to set mode to NONBLOCK
    114055.puma!AIX2C2TUX_stain.860250.258.0: LIBWSC_CAT:1085: ERROR: Unable to get reply to unsolicited message request
    114055.puma!AIX2C2TUX_stain.860250.1029.0: GP_CAT:1241: ERROR: An error occurred in the encryption subsystem code(60)
    114055.puma!AIX2C2TUX_stain.860250.1029.0: LIBWSC_CAT:1512: ERROR: Unable to generate first diffie-hellman packet
    114055.puma!AIX2C2TUX_stain.860250.1029.0: LIBWSC_CAT:1055: ERROR: Unable to establish WSL connection
    114055.puma!AIX2C2TUX_stain.860250.1029.0: LIBWSC_CAT:1027: ERROR: Unable to connect to WSH
    114055.puma!AIX2C2TUX_stain.860250.1029.0: LIBWSC_CAT:1020: ERROR: Unable to obtain authentication level
    114055.puma!AIX2C2TUX_stain.860250.772.0: GP_CAT:1241: ERROR: An error occurred in the encryption subsystem code(60)
    114055.puma!AIX2C2TUX_stain.860250.772.0: LIBWSC_CAT:1512: ERROR: Unable to generate first diffie-hellman packet
    114055.puma!AIX2C2TUX_stain.860250.772.0: LIBWSC_CAT:1055: ERROR: Unable to establish WSL connection
    114055.puma!AIX2C2TUX_stain.860250.772.0: LIBWSC_CAT:1027: ERROR: Unable to connect to WSH
    114055.puma!AIX2C2TUX_stain.860250.772.0: LIBWSC_CAT:1020: ERROR: Unable to obtain authentication level
    I googling for a while but could not get a clue to solve this.
    Any help appreciated.
    Thanks.
    Andrei

    Hi Andrei,
    First, JNI loading the Tuxedo client libraries is not supported by Oracle. That isn't to say it won't work, it's just that Oracle won't support you. What you are trying to do, access Tuxedo services from Java, is exactly what Jolt is designed to provide and is the Oracle supported way to do this.
    That being said, my guess is that the JVM process environment is somehow restricting what the workstation libraries can do with the network as you are getting fundamental networking errors. How you work around this I can't really say.
    Regards,
    Todd Little
    Oracle Tuxedo Chief Architect

  • Tuxedo client was in idle status and lic.txt question

    I found that my tuxedo client code didn't work till yesterday and it looks like idle status. There is not any error info written to client application log or ULOG(except "INFO: License file d:\tuxedo9.1\udataojb\lic.txt not found"). I check another Tuxedo client environment and nothing wrong was found in client application log or ULOG. What's wrong with it? Thanks for your kindly reply.

    Hi Bill,
    I'm afraid I'm not following what's happening. Are you saying your client stopped working yesterday? Or are you saying it wasn't working until yesterday?
    In any case, clients are for the most part completely under the control of your application code. So my guess is you'll need to attach a debugger to the client process and try and figure out what the client is doing. Alternatively you could add logging statements into your application code to try and figure out where in your application the client process is waiting.
    Regards,
    Todd Little
    Oracle Tuxedo Chief Architect

  • Using tuxedo client 8.1 with tuxedo server 6.4

    Hi,
    I am using Weblogic server 7 sp2 with Tuxedo 8.1 on my Windows XP machine, I have configured weblogic (config.xml) to use WTC to connect to tuxedo 6.4 on windows 2000 machine which in turn connects to tuxedo 6.4 server. When I try to do a tpcall I get an error on weblogic server log 'TPENOENT(6):0:0:TPED_MINVAL(0):QMNONE(0):0:Could not find service'.
    My question is I haven't made any configuration changes on the tuxedo server end like ubb.config or dm.config files. We are currently in the process of upgrading to weblogic 7 or 8. At the moment we are using JOLT to connect to the existing tux services on the dynix box.
    I want to know if I can configur WTC on weblogic 7 using tuxedo 8.1 API to connect to tuxedo 6.4. What all changes do I need to make on both WLS and Tuxedo end.
    I have read some documentation which state ways where old tuxedo client versions 7.1 and earlier can access tuxedo server 8 by configuring WSH (CLOPT -t) option in ubb.config file.
    Can someone please help.
    Thanks,
    Smita

    Hello Smita,
    I don't think WTC is supported with Tuxedo 6.4. I think (for a number of reasons) that you really should consider an upgrade to 6.5 or newer version of Tuxedo.
    Regards,
    /Per
    Per Lindström - R2Meton AB, SWEDEN

  • 32bit and 64bit for tuxedo client and OS

    In Windows Server 2008 R2 64bit,
    1. Could I setup "tuxedo client for 32bit" and run applications compiled in windows 32bit environment?
    2. Could I run applications complied in windows 32bit environment after setuping "tuxedo client for 64bit" in Windows Server 2008 R2 64bit?
    Thanks a lot.

    Bill,
    Applications compiled using a 32-bit compiler or linking in 32-bit libraries must be used with 32-bit Tuxedo, and applications compiled using a 64-bit compiler or linking in 64-bit libraries must be used with 64-bit Tuxedo. It is not possible to mix 32-bit binaries and 64-bit binaries within the same application. This is true on both Windows and Unix.
    On Windows it is also important to use the same major version of the Visual C++ compiler that a particular Tuxedo version is listed as being certified with.
    Regards,
    Ed

  • Tuxedo Client in EJB method + Test Client

    Hi,
    Currently, the Tuxedo client-side logic is wrapped and exposed as a remote EJB method.
    Have the following deployment questions:
    (a) How can I set up my WebLogic container to point to a remote Tuxedo domain (e.g. domain name/IP/port). Are there any steps to refer to?
    (b) Is it possible to write a Tuxedo client so that the InitialContext object contains the domain name/IP/port etc so that it will bypass the container and test the remote Tuxedo APIs directly? What are the settings I should put in the Properties object?
    Any advice?
    Thanks.

    To clear your first two questions. The password needs to be encrypted before it can be stored in a plaintext file such as config.xml, so the key is used for this purpose. The assumption is your Tuxedo /Domain is configured with SECURITY=DM_PW, and your WTC is configured with SECURITY="DM_PW" for your local access point. Am I correct? If not correct then you either have to correct your configuration or not needed to configure DM_PW.
    You need clear password pair from your Tuxedo Application Domain. You use "weblogic.wtc.gwt.genpasswd" to generate encrypted passwords information and use those information to cut/paste to the WLS console. The generated information such as "Local Password" and "Local Password IV" are needed. The "Key" should be the same for all the password, and should be entered as part of your java option "weblogic.wtc.PasswordKey".
    For instance,
    Your Tuxedo configured a GWTDOMAIN gateway with id TDOM, and a remote access point id WDOM. And in your WTC you configured a local access point with id WDOM, and a remote access point with TDOM.
    Your Tuxedo TDOMAIN you configured a password pair for TDomain session (TDOM, WDOM), the password pair looks like (TdomPassword, WdomPassword).
    You use "helloworld" for your passowrd key. Then you do the following
    java weblogic.wtc.gwt.genpasswd helloworld WdomPassword localLocal Password : cu/008NA4gWgmmJa193PgReSLmQ6Kk08in2fnN9mE0U=
    Local Password IV: bat/6QcWm54=
    java weblogic.wtc.gwt.genpasswd helloworld TdomPassword remoteRemote Password : T6aC069iqDjZE+O/p5vhalRdBuonClnGJH+WQ/L1MNw=
    Remote Password IV: aMtSUUbEDjg=
    On you console you have to enter
    cu/008NA4gWgmmJa193PgReSLmQ6Kk08in2fnN9mE0U=
    for your local password
    bat/6QcWm54=
    for your local password IV
    do the same for your remote password information
    and in your WLS command line java options you do
    java -Dweblogic.wtc.PasswordKey=helloworld weblogic.Server

  • How to bulid a Tuxedo client in VS2010

    hello , I'm a noviciate for tuxedo. I just build the TOUPPER sample in simpapp , and I got the right output,like "Returned string is:ABCD". When I decide to bulid my own client in VS2010(), I add the LIB path of tuxedo in the linker->general->additional library  directories,and  add "libtux.lib, libwsc.lib, libbuft.lib, libfml.lib, libfml32.lib, libengine.lib, wtuxws32.lib, wsock32.lib" in linker->input->additional dependency,add the INCLUDE path in the C/C++ ->general ->additional include directories. Now i can build the main.c correctly,but it runs failure with tperrno = 12 and tpcall return code = -1. However when I compile the main.c using buildclient command , it works fine and the output is correct., so I think the reason maybe the configuration of my project in VS2010.  Is there any lib or other step that I do not add?Thank you.
    here is my source code ,main.c:
    #include <stdio.h>
    #include <memory.h>
    #include <stdlib.h>
    #include <atmi.h>
    #include <string.h>
    #include<winsock2.h>
    char* toupperFunction(char *inputStr)
      char *sendbuf, *rcvbuf;
      long sendlen, rcvlen;
      int ret;
      if((sendbuf = (char *) tpalloc("STRING", NULL, sendlen+1)) == NULL) {
      (void) fprintf(stderr,"Error allocating send buffer\n");
      tpterm();
      exit(1);
      if((rcvbuf = (char *) tpalloc("STRING", NULL, sendlen+1)) == NULL) {
      (void) fprintf(stderr,"Error allocating receive buffer\n");
      tpfree(sendbuf);
      tpterm();
      exit(1);
      (void) strcpy(sendbuf,inputStr);
      /* Request the service TOUPPER, waiting for a reply */
      ret = tpcall("TOUPPER", (char *)sendbuf, 0, (char **)&rcvbuf, &rcvlen, (long)0);
      printf("%d",tperrno);//12
      getchar();
      if(ret == -1) {
      tpfree(sendbuf);
      tpfree(rcvbuf);
      tpterm();
      exit(1);
      /* Free Buffers & Detach from System/T */
      tpfree(sendbuf);
      tpfree(rcvbuf);
      tpterm();
      return rcvbuf;
    int main()
      char* input = "abcd";
      char* output = "";
      output = toupperFunction(input);
      printf("%s",output);
      getchar();
      return 0;

    Hi
    Thank you for your advice. What I have added in VS2010 properties was based on the command line, just like the INCLUDE PATH, LIB PATH and the their name.I wonder what is missing leading to the unsuccessful running.Here is the command line:
    F:\src64\simpapp>buildclient -o main -f main.c -v
    cl /MD  -I"%TUXDIR%"\include -Femain  main.c   "%TUXDIR%"\lib\libtux.lib  "%TUXD
    IR%"\lib\libbuft.lib  "%TUXDIR%"\lib\libfml.lib "%TUXDIR%"\lib\libfml32.lib "%TU
    XDIR%"\lib\libengine.lib  wsock32.lib kernel32.lib advapi32.lib user32.lib gdi32
    .lib comdlg32.lib winspool.lib   -link -implib:BC-d88.lib
    Microsoft (R) C/C++ Optimizing Compiler Version 16.00.30319.01 for x64
    Copyright (C) Microsoft Corporation.  All rights reserved.
    main.c
    f:\src64\simpapp\main.c(13) : warning C4700: uninitialized local variable 'sendl
    en' used
    Microsoft (R) Incremental Linker Version 10.00.30319.01
    Copyright (C) Microsoft Corporation.  All rights reserved.
    /out:main.exe
    -implib:BC-d88.lib
    main.obj
    F:\Oracle\tuxedo11\lib\libtux.lib
    F:\Oracle\tuxedo11\lib\libbuft.lib
    F:\Oracle\tuxedo11\lib\libfml.lib
    F:\Oracle\tuxedo11\lib\libfml32.lib
    F:\Oracle\tuxedo11\lib\libengine.lib
    wsock32.lib
    kernel32.lib
    advapi32.lib
    user32.lib
    gdi32.lib
    comdlg32.lib
    winspool.lib

  • Configuring timeout in Tuxedo client

    Hello,
    I have a C++ client which is talking to EJBs via Tuxedo, through all the auto-generated
    C++ code produced by IDL.
    Sometimes operations take a bit longer, and the default timeout is expiring.
    How is this timeout configured?
    Thanks
    Ewan

    John:
    I am researching this same problem. Check out this forum answer and let me know if it works for you!
    http://forums.bea.com/bea/message.jspa?messageID=202432714&tstart=0
    I haven't been able to test it yet - though it works without timing out.
    Mark

  • How to build a tuxedo client execute file with C++Builder?

    Hi,all.
    I can add include file with #include.Add include path and lib path to project option.Add
    libengine.lib,libfml.lib,libfml32.lib,libtux.lib to project file.I can build the
    project without error.And communicate with the local tuxedo server successfully.But
    I've failed to communicate with a remote tuxedo server.For I know that use buildclient
    -w to build a C windows client file.How to build a GUI client project with C++builder?
    Thanks.
    david

    David,
    For a /WS client, you need a different set of libraries than those you have listed.
    To see which, run buildclient -w -v
    Regards,
    Peter.
    david wrote:
    Hi,all.
    I can add include file with #include.Add include path and lib path to project option.Add
    libengine.lib,libfml.lib,libfml32.lib,libtux.lib to project file.I can build the
    project without error.And communicate with the local tuxedo server successfully.But
    I've failed to communicate with a remote tuxedo server.For I know that use buildclient
    -w to build a C windows client file.How to build a GUI client project with C++builder?
    Thanks.
    david

Maybe you are looking for

  • Brand New iPod Touch, absolute failure to launch

    Hi all, I was hoping someone here could help me. I currently live and study in Japan, and thought I'd treat myself to a shiny new 32GB iPod Touch after my girlfriend and I marvelled over them for about an hour in the Nagoya apple shop. I popped into

  • Synching on 2 separate PCs with 1 iPad + purchased app issue

    Hi all, The problem I have is that I have two desktop PC's with iTunes, one at Home, one in at Work. And 1 iPad. I purchased the Brushes app (brilliant!) using my iPad. Then synched with my Work Desktop PC which then removed by Brushes app from my iP

  • Constantly getting Download Error in Creative Cloud Manager, Apps tab. No further information, simply states "Contact customer support"

    Photoshop, Illustrator and Flash have all been successfully installed on this computer via Creative Cloud. Recently, the below screen keeps appearing when attempting to access the Apps tab. Please advise.

  • SPLIT function

    Hello, i need separate a string, example, 1,95,02,55, by ',' into a internal table. if i use "SPLIT p_frase AT ',' INTO TABLE t_frase"  but it create a registry for string. Is it posible in only one registry? Excuse for my bad english. Thanks.

  • Is there any alternative logic for this issue

    Hello all , I have a  program which is executed as a background job for every 15 minutes . Now my requirement is If this batch job is successfully finished, i have to capture that time and date at which the batch job is successfully finished and upda