Programming using ICSP headers(2x3)

I have designed a custom circuit using arduino before, and as the design progressed, i just kept the 328 chip to be programmed by ICSP headers. Now that my design is finalized, I want to enable it to flash HEX file via ICSP headers.

Currently, I have configured Arduino Nano as Arduino as ISP programmer. I flash bootloader first and then upload the program using Upload using Programmer using IDE.

I want to bypass all this and just flash HEX file. So doing this, do i have to flash bootloader everytime to a new chip? Secondly, is there any other program/application which will select the hex file and flash using arduino as isp without using IDE? I dont want command line.

Thank You

CrossRoads has a board that takes a hex file from an on board SD card and programs the target.

Nick Gammon has a discussion on this, see his web site.

Burn the boot loader to set the fuses, then it is no longer necessary.

I can make the board with sd card, will give it a try. I am using off-the-shelf 328P chips, what is the exact need to burn the bootloader initially?