I don't know if anybody here programs in C++ for the AS/400, specifically the Personal Communicator (PCOMM)... I have been able to successfully write programs in Visual Basic for Applications with Excel but I am having a hard time with C++.

When I try to compile one of the sample programs that came with IBM's programmers toolkit, I get linker errors involving unresolved external references to __thiscall and __decl.

1>------ Build started: Project: testAS400, Configuration: Debug Win32 ------
1>Linking...
1> Creating library C:\Documents and Settings\seniorda\My Documents\Visual Studio 2008\Projects\testAS400\Debug\testAS400.lib and object C:\Documents and Settings\seniorda\My Documents\Visual Studio 2008\Projects\testAS400\Debug\testAS400.exp
1>ECLSAMPS.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall ECLKeyNotify::NotifyError(class ECLPS *,class ECLErr)" (?NotifyError@ECLKeyNotify@@UAEXPAVECLPS@@VECLErr@@@Z)
1>ECLSAMPS.obj : error LNK2001: unresolved external symbol "public: virtual void __thiscall ECLKeyNotify::NotifyStop(class ECLPS *,int)" (?NotifyStop@ECLKeyNotify@@UAEXPAVECLPS@@H@Z)

etc.

I have tried linking to the library explicitly, I have set the /MT option as the documentation states... I do not know where else to go. The examples on the IBM site are supposed to come with .MDB files for making on MSVC 2003, but they don't, so I can't see what kind of settings they have.

Any help would be appreciated... I am working on an application that will automate entering data from a spreadsheet into the AS/400 in a particular way and I already have versions working in VBA but I want to use C++ so I can take advantage of its speed and GUI capabilities and multithreading and such. It will be a tremendous upgrade from what I have in BASIC.

-Dan

I figured it out... I had to explicitly enter the library filename as a dependency.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.