Answers to questions that are applicable to every plug-in.
Getting startedQ. What are FileMaker plug-ins?
FileMaker Pro Plug-Ins provide additional functionality to enhance FileMaker Pro. Plug-ins can add new external functions, making it possible to do things which can not be done with FileMaker Pro alone.
FileMaker Plug-ins can add functionality in a lot of areas. With plug-ins it is for example possible to read a file from disk, communicate with a serial port, show special dialogs, encrypt data and much more!
Plug-ins can be created for each operating system (or platform) on which FileMaker Pro runs.
FileMaker Pro 15 runs on macOS 10.10 or later and on Windows 7 or later.
Please be aware that not all plug-ins are available on every platform. Developers need to create and test a plug-in for a specific platform. Also it is possible that a specific fucntion can not be created on a specific platform.
The best way to start is to download the demo from our web site and take a close look at the included example files.
FileMaker 4.0 introduced a limited way to create plug-ins with the External function API. Plug-in functions for this API look like this:
External( "function name" , "parameter" )
FileMaker Pro 7 introduced a richer way to build plug-ins, this so called FileMaker 7 Native API allowed for more paramaters and Unicode.
Plug-in functions for this API look like this:
Function_name( parameter1; parameter2; etc... )
To see with which version of FileMaker Pro a plug-in will work please refer to the specific plug-in web page. For more information on compatibility with FileMaker Pro 15 see the Troi FMP 15 compatibility page.
With FileMaker Pro Advanced you are able to make standalone runtimes which can also use plug-ins.
Yes, they all work with files hosted by FileMaker Server. For this the plug-in needs to be installed at the FileMaker Pro client.
We expect our plug-ins to function normally on Citrix and similar systems. Several users have reported good results. However some plug-ins may use system resources, like a serial port or an IP address and/or port, that can not be shared.
See also Sending remote events with Activator.
We ourself have not tested plug-ins on Citrix and if you have information on this please let us know.
Yes, Andy Knasinski tested Troi Coding, Troi Dialog, Troi File, Troi Number and Troi Text, and each worked as normal. He also tried Troi Serial on Citrix. He wrote: “When running multiple sessions on the same COM port it came up and said “port in use” as I would have expected.”
InstallingQ. On which machines do I need to install the plug-ins?
You need to install it for each FileMaker Pro client which is going to make use of the functionality of the plug-in. The files can be single user or shared with others.
With FileMaker 12 and later you can store plug-ins in a container field and install them from within FileMaker Pro. In our downloads for FileMaker 12 and later you will find an EasyInstallTroiPlugins.fmp12 example file that shows this.
Plug-ins are installed in this location:
(or equivalent for other FileMaker versions)
Users/username/Library/Application Support/FileMaker/FileMaker Pro/15.0/Extensions/
(or equivalent for other FileMaker versions)
You only need to install a plug-in on FileMaker Server when you want to use it in server-side or web-side scripts. To register a plug-in for use on FileMaker Server you need a special server/web license.
When you want to use a plug-in client-side, including with files hosted by FileMaker Server, you need to install it on the FileMaker client and register it with a regular (single or multiple) user license.
To make a plug-in do its work you need to add calls to the External functions of that plug-in. For some plug-ins this needs to be done in a script and for others in defining a calculation in the Specify Calculation dialog box. See the documentation and examples that come with the download of the plug-in for information on specific plug-in functions.
HostingQ. Can I use FileMaker Client to host files that make use of plug-ins?
Yes, but also here you need to install the plug-in on each FileMaker Pro client which is going to make use of the functionality of the plug-in.
Yes, provided you have installed a Windows version of the plug-in on the clients. The reverse situation also works.
FileMaker RuntimesQ. Do plug-ins work with a bound runtime created with the Developer Utilities found in FileMaker Pro Advanced?
Yes, this will work.
Yes, the plug-ins need to be placed in a subfolder in the directory of the bound runtime. You might need to create this subfolder: create a folder with the name “Extensions”.
No, the plug-ins are not bound together with your solution. You still have to add the plug-ins to the appropriate folder.
Yes, this is required when you distribute a registered plug-in to your end-users. All the versions of our plug-ins have a ‘built-in’ registration function. See the folder “For Solution Developers” in the download for more information on this.
LicensesQ. Do I need to buy the plug-ins for the PC to have them work on a hosted file?
Yes. We have a special Developer distribution license for solution developers: Developer Distribution License Information
RegistrationQ. I can't seem to get my registration file to work. What am I doing wrong?
After payment we will send you a registration string that works cross platform.
Pay attention to this:
- The names of the files are different for macOS and Windows. On Mac name the registration file “Troi Payment Certificate.txt”. On Windows name it “TroiPay.txt”. (Do not include the quotes in the file names).
- Place the registration file in the same directory as your FileMaker Pro application. Do not put it in the same folder as the plug-in or the ‘Extensions’ subfolder in the FileMaker application folder.
- If you have more than one copy of the FileMaker Pro application on your computer put a copy of the registration file in each folder.
On macOS your folder should look similar to this :
For more troubleshooting tips please see the Registration support page.
FileMaker Pro 15 and 14Q. Do you have 64-bit compatible versions of the Troi plug-ins?
Yes, all our current plug-ins are 64-bit compatible. See the Troi 64-bit compatibility page for a list.
No, FileMaker 14 and 15 are 64-bit processes, for which plug-ins need to be compiled for 64-bit.
Note: it is possible to run FileMaker Pro 14 legacy in 32-bit mode. For this you need to open the FileMaker Pro app in 32-bit mode on macOS (see ‘Get Info’ of the FileMaker app). On Windows you need to install the (separate) 32-bit FileMaker Pro application. You can use this to run older plug-ins that are not compiled yet for 64-bit. Older plug-ins may not be fully compatible with FileMaker 14 though.
FileMaker GoQ. Is it possible to load plug-ins on FileMaker Go?
No, plug-ins created for FileMaker Pro can not run with FileMaker Go on an iPhone or iPad. Unfortunately there is no plug-in API for FileMaker Go for iPhone or for iPad.
To access functions of a plug-in from FileMaker Go you can use the “Perform Script on Server” script step (available from FileMaker 13), with the plug-in running on FileMaker Server.
Note that the script will always run in the context of the FileMaker server computer. This means that the plug-in will only have access to files, data etc. on the FileMaker server computer.
If the plug-in function returns a result, like for example the characters of a file or a thumbnail, the script running needs to store this result in a (new) record so that FileMaker Go users can access this result.
More informationQ. Is there a list of error codes that a plug-in might return?
Yes, see Troi OSErrrs, a FileMaker file with all known macOS and Windows error codes.
In each plug-in download you will find a database called Overview.fmp12 that lists all external functions this plug-in adds and their syntax. You will also find this info in pdf form in the User Guide of each plug-in, which is included in each download package too.
If your question is not answered here, please look in the documentation that comes with the plug-in or in one of the specific plug-in FAQs. If you have suggestions please email a FAQ suggestion.