Appropriate use of the specific functions of IVI Driver

Hello

I have to call niDMM driver specific functions, for example the diode test function and source of current value. I am able to do using IVI step types. I just input function and the ID attribute of the niDMM header files. I would use the IVI drivers, but I need the specific functions of the device in some applications. I tested it and it works well, but is it the right way to do it? What is the recommended approach?

My IVI not look like this when usig own functions and attributes: I don't like typing in numbers, but I've not found a way to use the header file definitions (see below).

Diode test ID is defined by nidmm.h:

#define NIDMM_VAL_FUNC_SPECIFIC_EXT_BASE IVIDMM_VAL_FUNC_SPECIFIC_EXT_BASE

#define NIDMM_VAL_DIODE (NIDMM_VAL_FUNC_SPECIFIC_EXT_BASE-2L)

defined by IviDmm.h

#define IVIDMM_VAL_FUNC_SPECIFIC_EXT_BASE (1000L)

Current source attribute ID is defined in nidmm.h:

#define NIDMM_ATTR_BASE IVI_SPECIFIC_PUBLIC_ATTR_BASE

#define NIDMM_ATTR_CURRENT_SOURCE (NIDMM_ATTR_BASE-25L) / * ViReal64 * /.

ini.h:

/*****************************************************************************/
#define IVI_ATTR_BASE 1000000
#define IVI_ENGINE_PRIVATE_ATTR_BASE (IVI_ATTR_BASE + 00000) / * base for private motor IVI attributes * /.
#define IVI_ENGINE_PUBLIC_ATTR_BASE (IVI_ATTR_BASE + 50000) / * base for the public attributes of the IVI engine * /.
#define IVI_SPECIFIC_PUBLIC_ATTR_BASE (IVI_ATTR_BASE + 150000) / * base for specific drivers public attributes * /.

I prefer to use a code module and call the NIDMM functions in there. You can use the type rather than the identification number definitions.

Tags: NI Software

Similar Questions

  • The document has been changed since its creation and use of the extended functionality is no longer available

    I have Adobe Acrobat Reader DC 2015.016.20039 on my system. I filled a form using Foxit Reader. When I tried to open the form with Adobe Acrobat Reader DC I received the error "the document enabled extended in Adobe Acrobat Reader DC features. The document has been changed since its creation and use of the extended functionality is no longer available. Please contact the author for the original version of this document.

    I tried other PDF programs, no problem at the opening of this form.

    Ashampoo_Snap_2016.05.17_02h01m01s_002_.png

    Function "Activation reader" comes from the original shape, and it's essentially a digital signature. It is specific for the free product of Viewer PDF by Adobe (aka Adobe (Acrobat) Reader).

    The problem is that only Adobe products are able to (re) make these documents without breaking the seal of the digital signature.

    So, what happened in your case is the Foxit Viewer broke the seal during the recording of back and what's. Using Acrobat, you can save a copy of the form, and then continue will fill. Otherwise, you will be better off to start over, but stay with viewers Adobe PDF all the time, working with the form, or with a different Viewer, once again all the time you work with the shape.

    BTW, player XI and most recent no. have more need of extended for more rights blocked by previous versions of Reader. This is not enough in this case; only, it would be useful for the sender of the form.

    Update (after rereading of the original message): if it's just for viewing or print the form, you can ignore this message. You can also try to save just, you have a version of player who no longer has the rights extended (at your risk).

    I hope this can help.

  • IVI drivers - OK to use SetValue rather than the specific functions of Config

    It is a general question of IVI driver, although I am currently using c# with the supplied agesani driver by NOR.

    The IVI specifications provide many methods for configuration of devices (for example, ConfigureLevel, ConfigureAcquisition, etc.).  The IVI specification also requires that all drivers provide support for configuration of attributes through SetValue.

    Configurations, the question: can be done through SetValue, or is it necessary to use specific methods to "configure"?

    Thank you... and my apologies if this lame question.  Always learn from IVI.

    Hello Dasher,

    It is possible to set all the attributes in writing through SetAttribute functions, but this is not the recommended approach.  Configuration methods have been designed to set the related attributes in a logical manner.  Sometimes an attribute must be configured before other attributes.  The configuration functions should be considered.  If you use SetAttribute functions directly, you will probably have to learn more about how the instrument works and responds to commands.

    See you soon,.

    NathanT

  • SetCtrlVal used during the Thread function works causes memory leaks

    I am writing a program that works if... Or not work if... - see the next lines... :-)...

    The program includes a section, mostly GUI - and User Interaction.

    The other part is a DLL. In the DLL we readings on an external consultant controller RS232. Sometimes the controller card needs (called how much) time and this time must pass then the result can be read card controller... and so on...

    Blocking is not GUI-user-program for the expectation of the return value of the DLL functions (which need a few seconds to be finished) I start a thread in the DLL with

    CmtScheduleThreadPoolFunction (DEFAULT_THREAD_POOL_HANDLE, THREAD_FunctionX, & tmpTFP, NULL);

    with "tmpTFP" as an instance of type "TYPE_THREAD_FUNCTION_PARAMETERS":

    typedef struct
    {
    //
    int IntVal1;                // 1. Integer-Wert
    int IntVal2;                // 2. Integer-Wert
    int IntVal3;                // 3. Integer-Wert
    int IntVal4;                // 4. Integer-Wert
    int IntVal5;                // 5. Integer-Wert
    //
    int IntBuffer1 [32];            // 1. Integer-buffer (aktuell genugt einer)
    //
    Double DblVal1;                // 1. Double-value
    Double DblVal2;                // 2. Double-value
    Double DblVal3;                // 3. Double-value
    Double DblVal4;                // 4. Double-value
    Double DblVal5;                // 5. Double-value
    //
    char CharVal1;                // 1. (Single)- Tank-Wert
    char CharVal2;                // 2. (Single)- Tank-Wert
    char CharVal3;                // 3. (Single)- Tank-Wert
    char CharVal4;                // 4. (Single)- Tank-Wert
    char CharVal5;                // 5. (Single)- Tank-Wert
    //
    char CharBuffer1 [1024];        // 1. Char buffer (akutell einer genugt)
    //
    } TYPE_THREAD_FUNCTION_PARAMETERS;

    In the GUI-user program - I get fast by default-return value of the thread start function.

    Then I asked the DLL (some global state variables are used for this) when it is finished.

    According to the map-controller (RS232) contacted the waiting time depends on the 'mood' of the controller card.

    In the DLL-mark of the GUI-user-program routine now everything works fine - without using "SetCtrlVal!"

    In my GUI, there is a text box of the info/comment for messages. If I do a few outputs user using 'SetCtrlVal' I always errors, caused by the false "TYPE_THREAD_FUNCTION_PARAMETERS"-values in the service of thread. "» If I set a breakpoint at the beginning thread-function I see mostly erroneous values in my transfer structure variables. If I put a breakpoint in the thread-function-calling 'CmtScheduleThreadPoolFunction (...)"and at the beginning of the thread values are (mostly) correct!

    I tried several and different things - but:

    If I ONLY (!)  Commenting on the (!) of a line with "SetCtrlVal", the program works, all States are asked out of the DLL.

    If I replace the "SetCtrlVal" with a written record-file function clean everything works fine and after completing the program I can look at the log file and see all the user information. BUT with 'SetCtrlVal' instead or set or (...) it does not work.

    My description is maybe not entirely clear, but believe me: only ONE line the «SetCtrlVal "line - should be commented out to let the program run properly!»

    Because if the line "SetCtrlVal"is program-user-GUI, after the call to the thread in the DLL, the DLL-memory seems to be corrupted by the call "SetCtrlVal" in the user-GUI program.»

    Best regards

    F.

    There may be a problem in your structure that your variable is set.

    You said that, after the address of the variable in the thread function the appellant one ends. Now, as you can read help each value passed in parameter threadFunctionData of the layed function must point to an area of memory that persist when the fuction is running: If your variable is defined at the level of the functions it is not valid when the thread runs since the appellant finished and released its local memory.

    Your approach with a global variable is a valid alternative, but if it is the solution, you will find data passed to the thread function must be valid for all his life.

  • UAC prevents the use of the specific command

    I recently decided to add a password for my user account on my desktop computer.  I have windows 7.  After doing so I was not able to use my main storage successfully drive.  Everything on my SSD w / windows7 installed works fine but no matter what on my drive larger capacity of storage does not work.

    • All the games that I have backed up on the storage drive will have errors trying to load/run them.
    • I can't save new files to this disc, because I don't have permission.
    • I can't move files from the drive because I don't have permission.

    I tried to solve the problem by removing the password I created, but I still get the same errors trying to do things from above.  I also disabled all UAC only by moving the cursor to "never notify" but that did nothing.  I don't know what to do next, the other, a running system restore.  Any help would be appreciated.

    Thank you

    Chris

    There is no magic to this. Here are the basic steps to give a specific account to access a folder:

    1. Open the Security tab of the folder.
    2. Add the specific account name to the list of existing accounts.
    3. Give this account full access to the folder.
      To give this account full access to the child folders, continue with 4.
    4. Click the Advanced button.
    5. Replace existing permissions with the permissions of the folder subfolder parent (as determined in step 3).

    Add your account name (FLang in my case) to the set of names that have access to the selected folder. I numbered the steps 1 to 3.

    Give this account the rights of 'total control '.

    4 click on "Advanced".

    5 click on "change permissions".

    6 check for permissions to percolate in the subdirectories.

  • What is the use of the DUMP function

    Hi friends,

    What is the Dump function? What is the use of dump? where can I use dump?

    ex:

    Select (sysdate) dump of double;

    Please expline with good example,


    By,.
    Symph.

    Sometimes you can have data in your database that you expect to be returned or excluded by a query, but you do not know why it does not work as expected. With the help of DUMP, you can examine the contents of the byte-by-byte data to help identify issues...

    SQL> with t as (select '&data' as dta from dual)
      2  --
      3  -- end of test data
      4  --
      5  select dta, dump(dta), dump(dta,16) from t;
    Enter value for data: Fred Smith
    old   1: with t as (select '&data' as dta from dual)
    new   1: with t as (select 'Fred Smith' as dta from dual)
    
    DTA
    ----------
    DUMP(DTA)
    ---------------------------------------------------------
    DUMP(DTA,16)
    ---------------------------------------------------------
    Fred Smith
    Typ=96 Len=10: 70,114,101,100,255,83,109,105,116,104
    Typ=96 Len=10: 46,72,65,64,ff,53,6d,69,74,68
    

    So my entry of "Fred Smith" looks like it's just two names separated by a space, but in reality in this example, the 'space' is the character ascii 255 (FF hex). This can be seen in the DUMP information. If it's data to my database, I would now be able to determine why, for example, I wasn't getting it back in my query when you query for "Fred Smith" by using a space character.

    There are other options as well, for example, to examine the character set...

    SQL> select dump('Fred Smith',1017) from dual;
    
    DUMP('FREDSMITH',1017)
    ------------------------------------------------------------
    Typ=96 Len=10 CharacterSet=WE8MSWIN1252: F,r,e,d, ,S,m,i,t,h
    
    SQL> select dump('Fred Smith',1016) from dual;
    
    DUMP('FREDSMITH',1016)
    ----------------------------------------------------------------------
    Typ=96 Len=10 CharacterSet=WE8MSWIN1252: 46,72,65,64,20,53,6d,69,74,68
    

    Take the result of the DUMP function you can use for all sorts of things based on what your needs are... example...

    In binary or hex string conversion...

    SQL> ed
    Wrote file afiedt.buf
    
      1  with x as (select 'Fred' as txt from dual)
      2  --
      3      ,t as (select txt, regexp_substr(dump(txt),'[0-9,]*$') as bytes from x)
      4      ,s as (select txt, rownum rn, to_number(regexp_substr(bytes,'[^,]+',1,rownum)) as byte
      5             from   t
      6             connect by rownum <= length(regexp_replace(bytes,'[^,]*'))+1
      7            )
      8      ,b as (select txt, rn, byte, to_char(byte, 'fm0x') as hx
      9                   ,bitand(byte,128)/128||
     10                    bitand(byte,64)/64||
     11                    bitand(byte,32)/32||
     12                    bitand(byte,16)/16||
     13                    bitand(byte,8)/8||
     14                    bitand(byte,4)/4||
     15                    bitand(byte,2)/2||
     16                    bitand(byte,1) as bin
     17             from s)
     18  --
     19  select txt
     20        ,ltrim(sys_connect_by_path(byte,','),',') as bytes
     21        ,replace(sys_connect_by_path(bin,','),',') as bin
     22        ,replace(sys_connect_by_path(hx,','),',') as hx
     23  from b
     24  where connect_by_isleaf = 1
     25  connect by rn = prior rn + 1
     26* start with rn = 1
    SQL> /
    
    TXT  BYTES                          BIN                                      HX
    ---- ------------------------------ ---------------------------------------- --------------------
    Fred 70,114,101,100                 01000110011100100110010101100100         46726564
    
    SQL>
    

    or the conversion from the internal representation of a date in binary.

    SQL> ed
    Wrote file afiedt.buf
    
      1  with t as (select sysdate as dt, regexp_substr(dump(sysdate),'[0-9,]*$') as bytes from dual)
      2      ,s as (select dt, rownum rn, to_number(regexp_substr(bytes,'[^,]+',1,rownum)) as byte
      3             from   t
      4             connect by rownum <= length(regexp_replace(bytes,'[^,]*'))+1
      5            )
      6      ,b as (select dt, rn, byte
      7                   ,bitand(byte,128)/128||
      8                    bitand(byte,64)/64||
      9                    bitand(byte,32)/32||
     10                    bitand(byte,16)/16||
     11                    bitand(byte,8)/8||
     12                    bitand(byte,4)/4||
     13                    bitand(byte,2)/2||
     14                    bitand(byte,1) as bin
     15             from s)
     16  --
     17  select dt
     18        ,ltrim(sys_connect_by_path(byte,','),',') as bytes
     19        ,replace(sys_connect_by_path(bin,','),',') as bin
     20  from b
     21  where connect_by_isleaf = 1
     22  connect by rn = prior rn + 1
     23* start with rn = 1
    SQL> / 
    
    DT                  BYTES                     BIN
    ------------------- ------------------------- ------------------------------------------------------------------
    06/01/2010 08:56:46 218,7,1,6,8,56,46,0       1101101000000111000000010000011000001000001110000010111000000000
    

    If you have a real need for it is another matter, but it is good to know that it is possible.

  • a/o/u not used by the search function for the adobe reader

    Hi guys,.

    I tried to look up German words (which will contain a, o, u, ss pp etc.) in pdf files using adobe reader configurable search.

    Unfortunately the umlaute appear to be "swallowed" by the search function.

    e, g,

    Search /A "C:\Program Files (x 86) \Adobe\Reader ' = 'C:\Users\jlangenbach\Desktop\Hessen mobile PDFs\B 456_5515887_WE 9999_Strassenstuetzwand links.pdf' Loo

    This research "L" instead of "Loo".

    Does anyone have an idea what could be going wrong?

    even if this isn't the root of the problem I now "solved" the problem by saying hosting c#-program to fill the search form the hard way by controlling the Adobe reader-popping up

  • How to use locate the if function several occurences of the same character

    I try to use the location feature to conclude to the existence of ' ~' in my thong. My channel has several occurrences of ' ~' in there.
    But the location always returns the location of the first. How can I get him back the second occurrence of ' ~' in the string.

    Thanks in advance
    Kris

    Published by: user566193 on October 1, 2010 13:35

    OK, it's not pretty, but it works... I will describe the step-by-step process.

    Getting the first Occurrence

    (1) on the column that you want to find the tilda (~), click the fx button.

    (2) use the LOCATE function: LOCATE ('~ ', tablename.columnname)

    It's will give you the position of the first occurrence of the tilda number.

    Getting the second Occurrence

    (3) in order to find the location of a string in another string from a set position, you use the same function, but in this format: LOCATE (string1, string2, n)

    Note: If you look at the function OBIEE, it says to use LocateN, but actually, it does not work and you will get a syntax error, so use LocateN. Use instead SEE them as I've described, but with the same syntax as in the LocateN function.

    Well, in this function, the value of n must be value just after the first occurrence to find the second occurrence.

    The first occurrence is determined by the LOCATION feature in step 2, we simply need to 'Add 1' to the obtained position. It turns out however that the result of the LOCATION works, although this property returns a number isn't a number format. Therefore, we have to GET the result as an INTEGER. (Still with me? Good.)

    OK, so putting this together, we nest a function LOCATE in a LOCATION feature as follows:

    LOCATE ('~ ', tablename, columnname, CAST (LOCATE('~', tablename.columnname) AS INTEGER) + 1).

    The above formula will give you the second occurrence of your tilda. You can repeat this step for the third, etc.

  • What are the specifications for a fusion drive

    I'm looking into getting a new mac mini and I think to get a player of fusion. I currently have a mini 2011 that I install with a SSD that is dedicated to the operating system and applications, and the original for data (documents, pictures, music) hard disk. Some can give me the specs for a merger for a new mini unit (2015)? I would like to know if the SSD is 3g or 6g, what is the size of the SSD, and what is the speed of the hard drive. I guess the size

    The SSD is based PCle blade, which is much faster than a SATA III/6 GB/s SSD.

    Note that the basic model has only a hard drive or drive of available fusion while the other two models also have a large PCle based SSD as an option in addition to the rotation of the road and road of fusion. The SSD n a fusion drive is about 120 GB

  • Windows Fax and Scan - what the appropriate use for the concurrent users to save to the network program?

    I'll try to keep this simple - as I already asked this on other forums without the answer. My environment - Windows 7 Enterprise SP1 32-bit client machines. A computer needs to scan patient documents to a network shared by a group of users folder. There will be many people who use this computer even through all day (several shifts - environment 24 hours/7 days).  This is why I need multiple profiles from windows to all save the scan to the SAME network location.

    Currently I am trying to achieve with Windows Fax and Scan and using the ' Scan 'option under 'tools' routing. "  There is a check box (once in this option) for "network location".  I am using this option, but its does not work and that's the whole problem. Its supposed to AUTOMATICALLY record each scan to the specified network location, but it does no such thing. The scan is not registered at all in fact it is just in the interface user of Windows Fax and Scan... double you click it, and then it shows you the image.

    Some information note for helping people answer this question (and any help is appreciated):

    (1) * YES * the network folder, I am trying to record is a valid network folder and * IS * accessible via my network of different devices

    (2) * YES * the user of this journal on the computer with the scanner * ALL * read/write to have rights to this location of the network folder

    (3) * file YES and printing sharing is already active on clients

    If you please if someone either knows how to solve this problem, or at this stage if you can even suggest a different (cheaper the better) application that will scan to a network location please let me know.

    One might think to a disabled feature labeled as "scan routing" and then a field for "network location", it would be simple as plugging in the network folder and checking a box - apparently it isn't.

    Thank you.

    Tom Salvtti

    Hi Tom,

    Thanks for posting your query on the Microsoft Community.

    I would like to know some information.

    1. You are connected to a domain network?

    If Yes, then I suggest you to post your query on TechNet Forums as we have experts working on such issues and help you to the best.

    Check out the link:

    https://social.technet.Microsoft.com/forums/Windows/en-us/home?category=w7itpro

    Hope this information helps. Please let us know if you need any other help with Windows in the future. We will be happy to help you.

  • Where can I find a list of all environment variables that can be used in the getenv() function?

    Hello

    I tried to find a list of all the environment variables to the OM of InDesign, alas, without success. I have already stumbled on what follows.

    $.getenv ('computername');

    $.getenv ('username');

    Even in the wonderful Jongware of object model (Adobe InDesign CS5 (7,0) object model JS: Table of contents) there is no information on that.

    I am looking for reference library containing these values. I have no specific in mind script task.

    Any help much appreciated!

    Olli

    You answer me here. In the good old Wikipedia there is a page on this. Check it out:

    Environment variable - Wikipedia, the free encyclopedia

  • elements of Adobe 12 ceased the use of the edit function

    I wonder if anyoe else has encountered this problem. Everything worked well until 4 days ago. I'd appreciate any help.

    Hello

    I suggest that you ask in the relevant official Adobe forum here:

    https://forums.Adobe.com/welcome

    because they are more likely to have the necessary product expertise.

    Kind regards.

  • Please help with a correct use of the "snapshot" function

    Hello

    I have recently updated to Pro - 9 11-Pro.

    With the 9-Pro version, I could take a snapshop of a portion of a page in a PDF doc and paste it elsewhere in the same doc (another page), or a different PDF doc.

    I just don't seem to be able to do the same thing with 11-Pro.  I don't know that there is a way.

    All your comments/opinions will be appreciated.

    Thank you

    pflor

    Hmm... I can take the snapshot with Acrobat 9, but stick that this does not work for me, as you describe. I can only paste like a stamp with the help of the: Tools > comment & markup > places the picture on the Clipboard as stamp tool

    In Acrobat 11, this tool is available under: comment > Annotations > add stamp [tool] > Place the Image on the Clipboard as stamp tool

  • Use of the Antimalware service executable high drive

    Recently I got this problem where some programs have use high drive, especially the windows Defender (I think it's the antimalware service).

    It's about 90-95% procent by itself sometimes even 99 and 100% (the Total disk use). When he is at 100% the computer slows down. A few days ago, I deleted bitdefender antivirus because the computer froze before but now that slow down. And the use of 100% disk is not yet correct just 100.

    I hope I made it clear any help is appreciated!

    In order to diagnose your problem, we need run Windows Performance toolkit, the instructions that are in this wiki

    If you have any questions do not hesitate to ask
  • How can I find out the specifications of my hard drive?

    I have a Latitude D620 (great computer!) but the HARD part is a bit small (60 GB) drive. I found the product reference number and found the player on the site Web of Hitachi (the manufacturer), but it has 2 options for the interface, ATA-6 SATA 1.5 GB/s. I would like to get a new drive (and an envelope for the old man, so I can use it as an external), anyone able to tell me what interface do I need? I have found a cheap Hitachi drive with the SATA connection, but do not want to order if it could not work.

    Thank you

    Felix


Maybe you are looking for

  • How can I remove wrong email for Firefox Sync on my browser?

    Hi all I use Firefox 37 recently. I'm new to Firefox sync and made a stupid mistake. I myself registered with my email account but accidently left a character. It seems that the verification email has gone to someone who has that email address. I tri

  • Firefox 16.0.1 warns about closing multiple tabs but not defined options to warn

    Firefox itself upgrade just 16.0.1 version. Now, when you try to close multiple tabs, I get the warning "confirm close" even if the option "Warn me when closing multiple tabs" is not checked.I tried checking this option, confirming the change, then u

  • Toshiba 32L4333DG some apps stopped working

    HelloI don't know why but some applications, for example YouTube, has stopped working. A few days ago, everything was fine, but now when you try to press on an icon, there is no response. It is not question of connection because the web browser can s

  • WANT 7640: Download fails

    It's disgusting. After buying a new HP ENVY 7640 and following the instructions, I tried the automatic download of the software.He won at the same point.  Three times.Then, I entered this Support site, a source of alternative download.He won at the s

  • Win7 - is - safe change active partitions?

    I have a few have windows 7 system problems that I can't fix during which I was management disk checking and there are 2 partitions, one for the recovery of the system and the usual with all that on C drive partition. I noticed that the recovery part