Automatically add the computer name or some other unique identifier to the edat2 file

25 views
Skip to first unread message

Chris Blais

unread,
Sep 14, 2016, 4:11:03 PM9/14/16
to E-Prime
Is there an easy way to automatically get, say the computer name, IP address, or some other unique identifier and save it as a parameter in the edat2 file?

For example, you would type My.Computer.Name in visual basic to get this info.

We do individual differences research on up to 20 computers at one time. These computers are linked together via dropbox. What inevitably happens is the RA assistant will mistype the subject number making it difficult to "match" the set of experiments to the same person. We currently have currently added a startup option to select the computer, but this is subject to the same issue. 

We would like to avoid placing all tasks in a single es2 experiment because those breaks spent interacting with the RA are important for keeping the subject engaged.

Thanks for any info you can offer!


Chris Blais

unread,
Jan 8, 2017, 6:28:25 PM1/8/17
to E-Prime
Bump. Anyone? Pstnet won't help because I don't have an active support contract even though I have over a half dozen professional dongles.

David McFarlane

unread,
Jan 9, 2017, 3:40:31 PM1/9/17
to e-p...@googlegroups.com
I do not know of any way for E-Prime to get built-in unique identifiers
from machines. So you have to supply your own unique identifiers for
your data. Here is a list of approaches. (You have already tried #1 &
2 and found them lacking, I include them just for completeness.)

1) Assign unique subject number ranges to each computer (but easy for
experimenters to mess up).

2) Add a StartupInfo Parameter for experimenters to enter the machine
identifier (this suffers from the same problem as #1, but at least
brings more direct attention to the item).

3) Customize the .ebs2 file on each machine to set an attribute with the
machine identifier (using a StartupInfo Parameter, or c.SettAttrib in code).

4) Add an external text file on each computer to supply a machine
identifier, then use inline code in your program to read & log that ID.

5) Add a StartupInfo file on each computer to add an attribute with a
unique machine identifier (see the StartupInfo Editor section in the New
Features Guide).


Notes:
#3 requires customizing each .ebs2 file for each subject running
station. This could get messy, but you could do this using a central
development workstation to compile customized .ebs2 files as needed.

#4 & 5 have the virtue that you use the same .ebs2 file on each subject
running station, and only change some external support file. #4
requires messing with some inline code. #5 could work with no inline
code at all, so I would do that. (In fact, I have done something much
like this for a program that needed a port address customized for
different machines).

Just my $.02,
---------------
David McFarlane
E-Prime training online:
http://psychology.msu.edu/Workshops_Courses/eprime.aspx
Twitter: @EPrimeMaster (https://twitter.com/EPrimeMaster)
Reply all
Reply to author
Forward
0 new messages