Frequently Asked Questions on Proteus (FAQ)

Below  you will find questions which we frequently receive on Proteus and their answers; if you still can not find what you need, write to: szp@zanella-hifi.com.

Answers

Q: What are the advantages in using Proteus instead of other existing programming languages?
A: A program written in Proteus is very compact: hundreds of high-level, predefined functions let you achieve great results with little efforts. Being an interpreted language, you can fix your programs on-the-fly directly on the field. If you need to protect your work, scripts can be encrypted and digitally signed, using a development system that can be kept on a floppy disk. Any Proteus program can run as a service, without modifications. The power of Proteus in managing text files and working on strings is uncomparable: no other language has the same flexibility. The keyboard emulation functions allow to connect hundreds of devices, personalizing dataflow as needed. You can write console programs in a few minutes and with little efforts; these applications are true 32-bit programs that can be used with a Telnet Server and allow full access to all Windows resources: serial ports, sockets, network devices, pipes, ODBC data sources, etc.

Q: How much time is needed to learn Proteus?
A: The development system includes dozens of examples, that teach you very quickly the fastest solutions to the most common problems you will face when writing programs in Proteus. Many programming languages are distributed with only a few code fragments, that merely explain function syntax: Proteus Center goes beyond that, by integrating a repository for your scripts, a data base of examples and a user manual rich of information and suggestions at the tip of your fingers. If you have previous programming experience, you will find yourself writing Proteus programs in a couple of hours.

Q: Why should I write a service in place of a normal application?
A: Windows NT, 2000, XP and 2003 offer the possibility to install services. A service is an application that is started as soon as the operating system boots; it does not care about users logging in. By installing a Proteus script as a service you have the ability of acquiring and storing data, managing print servers and other things without the need of giving access to an operator. In the industrial field this translates to greater security, because operators simply can not damage the operating system (even by mistake), install unauthorized application or create problems to normal operativity. Even when a PC is used interactively, having a few fundamental functions moved to a service make it impossible for a user without administrative rights to stop the program. NOTE: newer operating systems (Windows Vista, 7, 8) do not allow keyboard emulation from a service; in this case, use Proteus as a normal application.

Q: What are the advantages in using Proteus in place of a hardware keyboard emulation device?
A: Hardware keyboard emulators are usually complex to configure and require special Y cables to connect a standard keyboard; when using notebooks, a dongle that simulates an external keyboard is frequently needed to make them work, increasing the size of the device that you must move around. Data received by an hardware emulator is usually transmitted verbatim, without modifications; sometimes, special character terminators (like unusual key-combos) simply can not be emulated. Proteus, on the other side, can emulate any key; it can also split and process information as they are received, adding date and time, inserting prefixes, postfixes and delays as needed and adding additional static or dynamic information (which can be looked up in real time from a database); received data can be sorted before emulation, quantities can be summed up, unnecessary data removed, etc. Proteus can begin keyboard emulation when all data is succesfully received, because it has no limitation on input buffer size: in this way you can avoid partial transmissions that happen when, for example, a portable terminal is accidentally removed from its cradle. Proteus can select the window where keys must be sent, thus avoiding that data is sent to the wrong application which was inadvertently brought to foreground. Proteus can also temporarily save received data to a text file or database, for additional control and security. New protocols can be easily implemented in Proteus, thus new devices from different brands can replace those being used, or dataflow can be adapted to a specific format. Even devices that usually do not send data in keyboard emulation (e.g. network devices, serial, USB and Bluetooth devices..) can be integrated by using Proteus. Last, but not least, keep in mind that any hardware device that you add is subject to malfunctions; when using Proteus you don't have to worry about it.

Q: What is a console program? Why should I need it?
A: Most programs running today under Windows operating systems are graphical, with buttons, icons and menus. On other operating systems, like Unix and AS/400, it is still common to see console applications, similar to those that can be run inside an MS-DOS prompt. Console applications usually don't support mouse and don't show graphical symbols: only alphanumerical characters and, sometimes, a few semi-graphical symbols to draw lines and boxes. This kind of application is very light, because less CPU power is needed to manage the interface. One of the reasons that could lead you to write a console application today is to run it through a Telnet Server. Telnet is a protocol, belonging to the TCP/IP family, that supports several terminal clients: e.g. VT100, VT220, ANSI, 5250, 3270, etc. By connecting a Telnet client to a Telnet Server you can run remote applications and interact with them, just like the program was running on the client. This is very useful, for example, if you need to give the operators a portable terminal: most RF terminals have a Telnet client embedded; by installing a Telnet Server in Windows and writing programs in Proteus you can create a multi-user system with little efforts, at the same time exploiting all the powerful features of Windows.

Q: How is Proteus protected?
A: Proteus is protected in different ways: a USB dongle; a software key. Software key is usually offered to foreign customers; this key is generated from the hardware ID of the computer where the software will be installed.

Q: The programs I write in Proteus can be freely examined and modified. How can I protect my intellectual property? What can I do to avoid that one of my customers uses my program on other PC or resells/distributes it to others?
A: Proteus embeds a flexible and powerful protection system that overcomes all these problems. Inside the package there is an utility that encrypts your source code with random keys and adds a digital signature based on the Proteus protection dongle serial number (which is different for each key); your encrypted and digitally signed programs can now be given to your customers in complete security. With just three lines of code you can avoid redistribution of your software: simply check the serial number of the dongle used by the customer to run the application, and stop the program if the serial does not match.

Q: Is it possible to create Proteus applications that do not require the protection dongle?
A: No, it is not: when you sell a program developed using Proteus your customer needs to buy a licence of Proteus. Special discounts are applied on list prices when a developer buys a certain amount of licences for reselling.

Q: Is there a "runtime", cheaper version of Proteus that only allows to run encrypted programs? And a "developer" or "educational" version?
A: No, Proteus is available in a single version; discounts are applied only when buying many licences at a time. By using the demo version of Proteus, a developer can write and test (for at most 3 minutes) all his programs.

Q: What are the languages in which Proteus is available?
A: At present time, only English and Italian. The manuals, all the examples and Proteus messages are completely translated in these two languages.

Q: I understand that Proteus is very powerful, but what if I need to add new functions?
A: A developer can write new functions in Proteus, but can also link external functions, written in Visual C++ and built as a DLL. In the package there is the source code for a DLL explaining how to add new personalized functions.

Q: What problems could arise when using Proteus as a service?
A:
If error 1067 or other errors appear when you start a Proteus service, check the following circumstances and corresponding solutions:

C:\Documents and Settings\All Users\Application Data\SZP\PCenter\Service

there will be a file "Protsvc1.reg" whose contents is similar to this:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\SZP\Proteus]
"Script1"="C:\\Documents and Settings\\All Users\\Application Data\\SZP\\PCenter\\Repository\\script.prt"

Simply import this REG file and start the service

Start -> Control Panel -> Administrative Tools -> Services -> Proteus Service 1

(double click or select Properties); in the tab Connection, specify an account that has administrative privileges and has access to the folder where the PRT script and the service Proteus1.exe are located (usually C:\Documents and Settings\All Users\Application Data\SZP\PCenter\Service)
 

Q: A few characters are not stuffed correctly in keyboard emulation; how can I fix this behaviour?
A:
When using keyboard emulation on a Citrix client, it could be necessary to translate a few characters by using the extended notation (Alt + 3 digits), because Citrix maps these keys incorrectly. If you follow the scheme presented in the examples that come with Proteus you only need to modify the function KTRANS by adding a few exceptions for these keys:

FUNCTION KTrans(s)

l = STRLEN(s)
r = ""
FOR x = 1 TO l
c = SUBSTR(s, x, 1)
SWITCH c STREQ
  ON " "
    r = r "{ALT DOWN}{NUMPAD0}{NUMPAD3}{NUMPAD2}{ALT UP}"
  ON "-"
    r = r "{ALT DOWN}{NUMPAD0}{NUMPAD4}{NUMPAD5}{ALT UP}"
  ON "~"
    r = r "{ALT DOWN}{NUMPAD1}{NUMPAD2}{NUMPAD6}{ALT UP}"
  ON "{"
    r = r "{ALT DOWN}{NUMPAD1}{NUMPAD2}{NUMPAD3}{ALT UP}"
  ON "}"
    r = r "{ALT DOWN}{NUMPAD1}{NUMPAD2}{NUMPAD5}{ALT UP}"
  ON "+", "^", "%", "(", ")", "[", "]"
    r = r "{" c "}"
OTHER
  r = r c
OFF
NEXT
RETURN r
 

Start of page
Midnight Lake iPhone Case Black Women Shoes Black Flat Shoes Leather Flats Black Patent Ballerinas Black Ballet Shoes Casual Shoes Black Shoes Women Balle Record Player Cufflinks Best iPhone XR Clear Cases iPhone XS/XS Max Leather Cases Sale Best iPhone 8/8 Plus Silicone Cases iPhone 7/7 Plus Cases & Screen Protector New Cases For iPhone 6/6 Plus iPhone 8 Case Sale iPhone Xr Case Online iPhone 7 Case UK Online iPhone X Case UK Sale iPhone X Case Deals iPhone Xs Case New Case For iPhone Xr UK Online Case For iPhone 8 UK Outlet Fashion Silver Cufflinks For Men Best Mens Cufflinks Outlet Online The Gold Cufflinks Shop Online Cheap Shirt Cufflinks On Sale Nice Wedding Cufflinks UK Online Top Black Cufflinks UK Online Mens Cufflinks Online Silver Cufflinks For Men Men Cufflinks UK Sale Gold Cufflinks UK Online Gold Cufflinks UK Silver Cufflinks UK Shirt Cufflinks Discount Online Mens Cufflinks Deals & Sales Girls Shoes For Dance Fashion Ballet Dance Shoes Best Ballet Flats Shoes UK Online Cheap Ballet Pointe Shoes UK Online Best Ballet Shoes Outlet Best Dance Shoes Sale Cheap Ballet Flats Sale UK Best Pointe Shoes Online UK Ballet Dance Shoes UK Shoes For Dance UK Best Ballet Slippers Shop Best Yoga Shoes Hotsell