Creating a CompactRIO compatible dll using Borland

Hello
I am trying to get a dll running on a CompactRIO 9004 using Labview8.5 developer's suite. The dll works fine when I run the VI on Windows, but when I copy the vi (called host.vi) to the CRIO target and try to run it I get the following message in the deployment status box:
Deploying host.lvproj 
Deploying Jag1
LabVIEW:  Failed to load shared library c:\ni-rt\startup\data\extractor.dll on RT target device.
 (successfully deployed target settings)
Deploying dllclone.vi  (3.20 K)
Deploying RT board LEDs.vi  (11.66 K)
Deploying RT LEDs.vi  (7.05 K)
Deploying host.vi
Failed to download host.vi
LabVIEW:  Failed to load shared library e.dll:getaddress:C on RT target device.
Having read some other posts on the forum, I am working from a folder called ni-rt\startup to mimic the CRIO's directory structure when configuring the call library function node and the dll is called e.dll to be certain of being filename compatible and the function being called is 'getaddress'. The dllclone.vi is a vi that performs exactly the same operation as the dll, to get an idea of speed difference. Jag1 is the name of the CRIO.
I have run 'DLL Checker 8.2.exe' and it gives two bad imports: one in kernel32.dll (GlobalMemoryStatus) and one in user32.dll (EnumThreadWindows). I am using Borland Builder 5 as the compiler and even running this from the command line pointing explicitly at the lib files in 'cintools' and making the dll 386 compatible gives this result. Would changing to MSVC++ make a difference?
I have been running the CompactRIO successfully up till now. Can anyone help with this?
Thanks,
Nathan

Hello Tom, thanks for the reply.
I haven't tried re-installing - my other apps still work on it, so I don't think it's broken. We only have the one CRIO at the minute - I need to get this problem fixed before we go buying any  more! I haven't tried any other dlls yet. As you will see, the one I am using is almost as simple as a dll can get and the application I am running is to test the loading/calling time of the dll and to experiment with passing structures. I've attached the full directory of the project but there are not many files. The dll was originally called extractor, but after building this I've tried renaming it as e.dll as I saw the message in another post about long filenames, though I understand this is an old problem and not an issue any more.
I hope this all makes sense,
Nathan

Similar Messages

  • Creating DLL using Acrobat SDK

    Hi,
    I want to create one DLL using Acrobat SDK and VS 2010 Win32. If i use this dll in our program it should show functions for opening pddoc, total number of annots, Can I do this using Acrobat SDK. I know we can create plug-in extension with .API.
    Please let me know can i do this using Acrobat SDK.
    Thanks,
    Kruthi

    Please use the forum for Acrobat SDK.

  • Is there a way to create 8.1 compatible db via 9iR2's dbca?

    Hi,
    I just installed 9iR2, and am trying to create the first database. But database configuration assistant insists to put 9.2 as compatible parameter in init.ora. If I try to change it, creation will fail with:
    ORA-01501: CREATE DATABASE failed
    ORA-00406: COMPATIBLE parameter needs to be 9.2.0.0.0 or greater
    If I let it creates the db with compatible=9.2.0.0.0, and try to change init.ora afterwards to make compatible 8.1.0, the database startup fails with:
    ORA-00402: database changes by release 9.2.0.0.0 cannot be used by release
    8.1.0.0.0
    ORA-00405: compatibility type "Locally Managed SYSTEM tablespace"
    So it seems that dbca created the db with 9iR2's new locally managed system tablespace feature. Is there a way to disable this and let dbca create a db compatible with 8.1.0?
    Thanks

    Are you sure? The Oracle 9i Database Migration doc says:
    "Oracle enables you to control the compatibility of your database with the
    COMPATIBLE initialization parameter. By default, when the COMPATIBLE
    initialization parameter is not set in your parameter file, it defaults to the lowest
    possible setting for the release, which is 8.1.0 for all Oracle9i releases."
    And Figure 5-1 on page 5-3 shows for 9.2, the parameter "Can be set to 9.2.z, 9.0.y, or 8.1.x".
    I'm not a DBA, I installed Oracle to develop software, and the requirement says the software should be compatible with both 8.1 and 9i, that's why I'm aiming for the lowest compatible level.
    Thanks

  • Asynchronuous functions don't work in a C# dll used by a CVI application

    Hello,
    I have an existing application written with CVI 9.0.1, which have to interact with a C# 2010 dll (which doesn't have any window) via a CVI<->.net wrapper (created using the usefull .net controller of CVI).
    This C# dll uses asynchronuous functions, like NetworkStream.BeginRead() and EndRead() functions of a System.Net.Sockets.TcpClient object for example.
    These asynchronuous functions work fine when the C# dll is used by a C# application (having a main window) or when the C# dll is converted in a standalone C# program (having a main window with buttons, to call its methods, just to try), but asynchronuous functions don't work when my C# dll is called by my CVI application (which is my goal): execution stays inside NetworkStream.BeginRead() for example (for the concerned thread).
    NetworkStream.BeginRead() can be successfully bypassed by using the synchronuous function NetworkStream.Read() instead, but the C# dll uses others asynchronuous functions wich have no associated synchronuous functions.
    Here is a portion of C# code (I don't have the source code for the Snmp object ; got_trap() method is never called when asynchonuous calls don't work):
    public void run() // the thread
     Snmp snmp = null;
     try
      snmp = new Snmp(true);
      snmp.NotifyListenPort = 162;
      snmp.NotifyRegister(null, null, new NotifyCallback(got_trap), CB_DATA_);
      isActive = true;
      Thread.Sleep(Timeout.Infinite);
    Thinking it could be a problem with window messages which could be not processed (in the C# dll), I tried to replace the Thread.Sleep(Timeout.Infinite) instruction, in the code where the asynchronuous management take place, by a window creation plus my Win32 window message loop, but asynchronuous functions don't work better (whereas my loop seems to successfully process messages):
    Form myForm = new Form(); // an empty window
    myForm.Show();
    int bRet;
    MSG msg = new MSG();
    while ((bRet = GetMessage(out msg, IntPtr.Zero, 0, 0)) != 0)
        if (bRet == -1)
           // handle the error and possibly exit
        else
          switch (msg.message)
            default: // everything else
            TranslateMessage(ref msg);
            DispatchMessage(ref msg);
            break;
    Any idea ?
    Thank you,
    rvfr.
    Solved!
    Go to Solution.

    Solved: in fact, the snmp assembly that I was using just needed to be dotNet registered.
    rvfr.

  • Php4apache.dll uses plain apache 1.3 API,this module might crash under EAPI

    Hi,
    I am a total PHP beginner.
    I am trying to install and configure Oracle, PHP, and Apache on Windows XP. For this purpose I am trying to follow the installation guide that I found on http://www.oracle.com/technology/tech/opensource/php/apache/inst_php_apache_windows.html.
    I have first installed the Oracle 9i DB server on my E drive, which has by default created the following directory which contains the APACHE exe file
    E:\oracle\product\10.1.0\db_1\Apache\Apache\
    (it is Apache 1.3.22)
    I have downloaded php 4.3.8 from php.net and have been through the following steps given by the guide.
    I have copied the php.ini and edited it (uncomment the extension=php_oci8.dll line and specified the doc_root as E:\oracle\product\10.1.0\db_1\Apache\Apache\htdocs).
    I have copied php4ts.dll and php_oci8.dll to E:\oracle\product\10.1.0\db_1\Apache\Apache\
    i have edited the httpd.conf file by adding the 3 following lines:
    LoadModule php4_module e:/php-4.3.8/sapi/php4apache.dll
    AddModule mod_php4.c
    <IfModule mod_php4.c>AddType application/x-httpd-php .php
    </IfModule>
    When i start the Apache server i get:
    e:/php-4.3.8/sapi/php4apache.dll/php4apache.dll uses plain apache 1.3 API, this module might crash under EAPI!
    Apache seems to be working fine and to run php. The "hello world" test runs fine as well.
    Is this EAPI error a problem? (some forums seem to be implying that it is not a major error but a warning)
    If yes, I can I solve it?
    Your help would be very much appreciated.
    If needed, my email is [email protected] please feel free to use it.
    Frankie

    If you downloaded the binary version of PHP, then pretty much you can't do anything about it. It's just a warning. However, if you compiled and built it (using vc++ or something else), you'll have to add the EAPI flag to the compile flags (/DEAPI to CFLAGS in the vc++ project file/makefile) to remove this warning.

  • Deploying a VB dll using some web service and accessing it through java

    I'm new to Web Services Based Programming. I would like to know whether this is possible and if so has anyone tried it. I want to create a vb dll that contains the remote methods that the client will access from a java program. After going thru a lot of articles, I'm still unsure on how to do this. I found one method was to Create a VB program/dll, deploy it in a web service and create the java program that accesses by another web service.
    I'm doing this as part of my lab syllabus. The thing is My lab exercises do not state anything about the technologies that I can use to do this.
    This is all that is stated there:-
    Creation Of DLL Using VB And Deploy it in Java
    I just cant get any ideas other than deploying both the parts as web services. If anyone has Better ideas for this, I would really appreciate it.
    I dont know anything about CORBA for languages other than Java and I'm already using the servlets and EJB's in my normal life. I'm also learning the ORB based programming in java. Therefore your help will probably help me learn something new then what I know.

    Sorry I wasn't too specific in my last question.
    This is my java class calling the native method print
    //HeyWorld.java
    class HeyWorld {
    private native void print();
    public static void main(String[] args) {
    new HeyWorld().print();
    static {
    System.loadLibrary("HeyWorld");
    In this case, my C method for calling a C++ method: HelloWorld.cpp
    #include "jni.h"
    #include "stdio.h"
    #include "stdafx.h"
    #Include "HeyWorld.h" //this is where i get my function prototype
    #include "Test.h" //this is the C++ header where the print method and the Test class is
    JNIEXPORT void JNICALL
    Java_HeyWorld_print(JNIEnv *env, jobject obj)
    CTest a; //CTest is the print class I created
    a.print();
    //This is the header for Test.h
    class CTest: public CWinApp
    public:
         CTest(); //constructor
         void print(); //our method
    //And this is the implementation of the class Test.cpp
    void CTest::print()
         printf("Hey World!\n");
         return ;
    I could compile the Test.cpp, HeyWorld.cpp successfully. However when I tried to compile HeyWorld.cpp using
    cl -I<path of jdk include> -I<path of jdk include win32> -LD HeyWorld.cpp -FeHeyWorld.dll,
    the VC++ 6.0 compiler gave me this error:
    HeyWorld.obj:error LNK2001: unresolved external symbol "public:_thiscall CTest::CTest(void)"
    HeyWorld.obj:error LNK2001: unresolved external symbol "public:_thiscall CTest::print(void)"
    Thanks for the help.

  • Typedef Error when compiling niScope for DLL using CVI

    I am getting the following error when trying to compile a DLL for the NI 5122 digitizer using CVI:
    Error creating type library:
    All structs, unions, and enums required by exported functions must be typedefs in order to create a type library. The struct/union/enum "niScope_wfmInfo" does not use such a typedef.
    I have created a variable and "typedefed" it as niScope_wfmInfo to try and get rid of this error. This did not work. I have tried making several other changes. Some have eliminated the error but created problems with the DLL.
    Has anyone had a similar error to this? If so, how did you get around it?
    Thanks,
    Heather

    Hi Heather,
    The reason that you are receiving this error is because the niscope.h file (called by niScope.fp) uses a struct which cannot be compiled into a DLL. This means that the niScope.fp file cannot be included in the target settings. Here's a knowledgebase that describes the error.
    http://digital.ni.com/public.nsf/websearch/AC028D9586E947F08625661E006A182F?OpenDocument
    If you do want the niScope.fp file to be included then you will need to make some modifications to the niscope.h file and create a typedef for the niScope_wfmInfo struct. Here's info from the help file that describes the type library section and the use of the .fp file.
    "Type Library—This button lets you choose whether to add a type library resource to your DLL. Also, you can choose to include links in the type library resource to a Windows help file. LabWindows/CVI generates the type library resource from a function panel (.fp) file. You must specify the name of the .fp file. You can generate a Windows help file from the .fp file by using the Generate Windows Help command in the Options menu of the Function Tree Editor window.
    This feature is useful if you intend for your DLL to be used from Visual Basic."
    If you do not include the niScope.fp file then you will be able to compile the DLL.
    Hope this helps! Let me know if you have any questions.
    Erick

  • Writing DLL using Tuxedo 8.0

    Hello , someone know a tutorial, when i can get information about write a
    DLL using Tuxedo 8.0 , compiling with Visual C++ 5.0.
    I try it but when i link, the compiler send me many errors, any are:
    unresolve __tpcall@24 , for example..
    Thanx for your cooperation.

    Malcolm,
    Tuxedo 8.1 workstation clients are compatible with Tuxedo 8.0 servers, and
    you will be able to use Tuxedo 8.0 functionality with this client-server
    pair. The full matrix of which releases can interoperate with which others
    is described at
    http://edocs.bea.com/tuxedo/tux91/interop/iopcoexist.htm#1073920
    Ed
    "Malcolm Freeman" <[email protected]> wrote in message
    news:[email protected]..
    Can you use a Tuxedo 8.1 Workstation Client with an application builtusing Tuxedo 8.0 Servers? (Have not been able to find a definite answer in
    the docs).
    >
    TIA,
    Malcolm.

  • Error while creating a web proxy service using wsdl

    Hi folks,
    In my use case I should create a web service proxy using the wsdl. While I am creating the
    web service proxy I am getting some error like the binding method does not have the SOAP extension.
    I am giving the error below for more clarity
    Caused by: oracle.j2ee.ws.common.tools.api.WsdlValidationException: input message of binding operation "createReference" does not have a SOAP body extensionCaused by: oracle.j2ee.ws.common.tools.api.WsdlValidationException: input message of binding operation "createReference" does not have a SOAP body extension
    What could be the problem? Kindly help me on this.
    Thanks,
    Phani

    Hi,
    I guess wsdl URL for Data source is not working as expected
    See
    http://blogs.oracle.com/middleware/entry/calling_web_services_using_adf_11g
    http://st-curriculum.oracle.com/obe/jdev/obe11jdev/ps1/webservices/ws.html

  • How can I create an csv/excel file using pl/sql and then sending that file

    How can I create an csv/excel file using pl/sql and then sending that file to a clients site using pl/sql?
    I know how to create the csv/excel file but I can't figure out how I would get it to the clients site.

    968776 wrote:
    How can I create an csv/excel file using pl/sql and then sending that file to a clients site using pl/sql?
    I know how to create the csv/excel file but I can't figure out how I would get it to the clients site.You are trying to do it at a wrong place..
    Whay do you want database (pl/sql) code to do these things?
    Anyhow, you may be interested in :
    {message:id=9360007}
    {message:id=9984244}

  • Create a custom web template using VS 2012 with web features,site features sections applied

    hi,
     Want to create a  custom web template using VS 2012  in my SP 2013 environment.  i know "Vesku" has posted a great artice on this [  based on prev. version of SP].
    here -
    http://blogs.msdn.com/b/vesku/archive/2010/10/14/sharepoint-2010-and-web-templates.aspx
    i am  looking for a code based article  which has step by step process which provides how to add the site features, web features and attach the eventreceivers etc etc on sitecollection creation when i apply this template from central admin. 
    can anyone provide me any links / any source how to create a custom web template with one / two  custom features -  site features element and web features element , / master page etc ....
    I am stuck with this. as part of my reqmnt, i need to create a webtemplate with all the customlistinstances, custompagelayouts, custom masterpages, custom appln pages, custom web parts.
    help is appreciated !
    Das

    The problem is that Web Templates are deployed to a gallery in a site collection and aren't available in Central Admin when creating a new site collection.  YOu have to create the site collection without choosing a template and then choose your web
    template when you first access the root site in the site collection.  Here's an article that discusses that process here:
    http://sharepointchick.com/archive/2011/02/10/using-web-templates-to-create-site-collections.aspx
    Other than that Vesa's article is still the best one and works essentially the same in 2013 as it does in 2010.
    Paul Stork SharePoint Server MVP
    Principal Architect: Blue Chip Consulting Group
    Blog: http://dontpapanic.com/blog
    Twitter: Follow @pstork
    Please remember to mark your question as "answered" if this solves your problem.

  • HELP !!!I want to give my old apple to my girlfriend, SO SHE CAN PLUG IN HER NEW IPHONE, CREATE AN APPLE ID AND USE MY OLD LAPTOP TO DOWNLOAD itunes music, but im having trouble deautherizing it, and making her the OWNER, IF you get my drift, how to i mak

    Hi
    I have a new powerbook and want to give my girlfriend my old G4 power book, she has a new iphone 5s, and wants to create a new itunes/apple id. When i try to de authorize the G4 and sign in with her new apple ID it says bad password, how can i release the G4 from my cluster of authorized apples and make her the owner so she can download music and more importantly sync her music with her phone, she only has 3 songs on her iphone, and loaded all her CD's into the g4 but cant sync, im no dummy and this shouldnt be hard, but its driving me crazy!!!!!!
    thx u so much for your time heeeellppppp.

    Perhaps, as we have the same music tastes, for now i should just authorize her phone to my power book just to sync music, not pics, contacts etc? I'd hate to overright her contacts etc lol????
    HELP !!!I want to give my old apple to my girlfriend, SO SHE CAN PLUG IN HER NEW IPHONE, CREATE AN APPLE ID AND USE MY OLD LAPTOP TO DOWNLOAD itunes music, but im having trouble deautherizing it, and making her the OWNER, IF you get my drift, how to i mak 

  • How to get Apple ID and password that is different to iTunes store account which I have already activated and completed contracts, tax information and bank information I want to create a Paid Books Account use apple ID

    I was given this address from the Apple customer support team.
    I have an active existing iTunes store account and use the same Apple ID for signing into my iTunes Connect Account that distributes Apps.
    I have created some books using the iBook author and in order to distribute content on the iBookstore I have been told electronically that I need a new Apple ID and password that is different to iTunes store account which I have already activated and completed contracts, tax information and bank information valid until 2013?
    I want to create a Paid Books Account using the same email address, tax information and bank information. This has been most frustrating, as I cannot get passed the sign in section and there is no contact person I can speak to. I was of the understanding the iTunes connect account and the Developer programs which I paid good money for is all what I needed to be paid for selling iBooks on the iBookstore???
    I only have one email address and wish to also use it for the Paid Books Account. I have books ready to be exported and published.
    I am also having trouble locating and downloading iTunes Producer. I understand I need to have the Paid Books Account active to access the iTunes Producer program. Please help.
    See additional information below:
    What device did you use to connect to the store?  Mac computer
    Which operating system is installed?  Mac OS X v10.7.x
    What version of iTunes is installed on your computer?  iTunes 10.6
    Choose the iTunes Store or App Store for your country:  Other
    Please select your country:  Australia

    Hi Lrwill,
    If the apps that are on your son's iPad were purchased under his Dad's Apple ID, then signing your Apple ID onto the iPad will not help you with updating those apps.
    Also, if the iPad was sync'd with his Dad's iTunes library, then hooking it up to your computer/iTunes library, will require you to reset the iPad, and everything that was loaded under the other Library and Apple ID will be wiped out.
    Can you provide a little more info about what was set up under which Apple ID and what iTunes library the iPad was sync'd with?
    Cheers,
    GB

  • CREATE XML PUBLISHER REPORT WITHOUT USING RDF

    Hi Every one ,
    Can anybody share his/her expertise on following issue ?
    "How to create XML Publisher Report without using RDF?"
    Your help is appreciated.

    Hi Swapnesh
    YOu do not need to create the XDODTEXE, its seeded for you. You need to do the following:
    1. Create and test the data template
    2. Load the data template to the template manager against a data definition
    3. Create a concurrent program definition that uses the XDODTEXE as its executable
    4. Create parameters (if required) for the CP and DT that match in name
    You're done
    Regards
    Tim

  • How to create Exchange dynamic distribution list using multivalue extension custom attribute

    I am trying to create a dynamic distribution list using an ExtensionCustomAttribute.  I am in hybrid mode with Exchange 2013.  The syntax I have is this: 
    New-DynamicDistributionGroup -Name "DG_NH" -RecipientFilter {(ExtensionCustomAttribute2 -eq 'NH')} 
    This works correctly on-prem.  But hosted always results in an empty list.  I can see in dirsync the attribute is in the hosted environment, but for whatever reason, the distribution group gets created but always come up null.
    If I create a group looking at the single valued attributes, such as CustomAttribute6 -eq 'Y', it works correctly on-prem and hosted.  
    If anyone has any suggestions I would appreciate it.

    I don't think I provided enough information about the problem.  Let me add some and see if it makes sense.
    I have an Exchange 2013 on-premise configured in hybrid mode with Office365.  For testing purposes, I have 2 users, Joe and Steve, one with the mailbox on-prem, and the other with the mailbox in the cloud.  Each of them has CustomAttribute6 = 'Y'
    and ExtensionCustomAttribute2 = 'NH'. Dirsync shows these users and these attributes are synced between on-prem and cloud.
    Using on-prem Exchange powershell, I run the following command:
    New-DynamicDistributionGroup -Name "DG_NH" -RecipientFilter {((RecipientType -eq UserMailBox) -or (RecipientType -eq MailUser) -and (CustomAttribute6 -eq 'Y')} 
    This correctly finds the 2 users when I query for them as follows:
    $DDG = Get-DynamicDistributionGroup DG_NH
    Get-Recipient -RecipientPreviewFilter $DDG.RecipientFilter | FT alias
    So I then delete this DG, and recreate it this time looking at the multi-value attribute ExtensionCustomAttribute2, as follows:
    New-DynamicDistributionGroup -Name "DG_NH" -RecipientFilter {((RecipientType -eq UserMailBox) -or (RecipientType -eq MailUser) -and (ExtensionCustomAttribute2 -eq 'NH')} 
    Replaying the query above, I can see this also works fine and finds my two users.
    Next I open a new powershell and connect to Office 365 and repeat the process there.
    New-DynamicDistributionGroup -Name "DG_NH" -RecipientFilter {((RecipientType -eq UserMailBox) -or (RecipientType -eq MailUser) -and (CustomAttribute6 -eq 'Y')} 
    This correctly finds the 2 users when I query for them.
    And then delete the group and recreate it using the multi-value attribute:
    New-DynamicDistributionGroup -Name "DG_NH" -RecipientFilter {((RecipientType -eq UserMailBox) -or (RecipientType -eq MailUser) -and (ExtensionCustomAttribute2 -eq 'NH')} 
    When I run the query this time it produces no result.  Every test I try results in an empty group if I am using a multi-valued attribute in the search criteria in the cloud.  If I use single valued attribute, it works fine.
    I really need to be able to get multi-valued DDG's working in the cloud.  If anyone has done this and has any suggestions, I would appreciate seeing what you did.  And if this is the wrong forum to port this, if you can point me to a more suitable
    forum I will report there.
    Thanks,
    Richard

Maybe you are looking for