A control program development aid device which is connectable to a programmable controller having password protect function through communication means and is formed by installing a control program development aid device program module to a personal computer; said control program development aid device comprising: command creating means for creating operation commands in response to a specified operation, said operation commands including program write-in command and program read-out command; and add-on function executing means for carrying out an add-on function by responding to the creation of an operation command by said command creating means by adding a protect releasing command and a protect setting command each with a specified unpublished password in front and behind said created operation command and issuing said commands to said programmable controller, said add-on function executing means carrying out said add-on function as a software module different from said control program development aid device program module with a function as said control module program development aid device; and wherein said control program development aid device program module is adapted to: check at the time of startup thereof whether or not said software module with said add-on function exists in an external memory device of said personal computer, and link said software module with said add-on function as a part of a program of said control program development aid device program module that causes said add-on function to operate on checking that said software module with said add-on function exists in said external memory device of said personal computer, wherein said personal computer has a hardware key detachably attached thereto, said hardware key containing a memory that stores a specified password code; wherein said software module with said add-on function is configured to operate said add-on function based on a condition of certification of said hardware key determined by matching said specified password code with a password code stored in a hardware certification module, and wherein the unpublished password used by said add-on function corresponds to said specified password code in said hardware key. command creating means for creating operation commands in response to a specified operation, said operation commands including program write-in command and program read-out command; and add-on function executing means for carrying out an add-on function by responding to the creation of an operation command by said command creating means by adding a protect releasing command and a protect setting command each with a specified unpublished password in front and behind said created operation command and issuing said commands to said programmable controller, check at the time of startup thereof whether or not said software module with said add-on function exists in an external memory device of said personal computer, and link said software module with said add-on function as a part of a program of said control program development aid device program module that causes said add-on function to operate on checking that said software module with said add-on function exists in said external memory device of said personal computer, wherein said personal computer has a hardware key detachably attached thereto, said hardware key containing a memory that stores a specified password code;