[Traduzione in corso...]
sorry, maybe i dont understand correctly was is your problem.
I did in this way:
I choose USB HID communication.
though about protocol how send data from PC to interface.
Write PC application to pack my data into packet, and send this package to interface.
Interface will parse it, prepare and send CAN message.
So basicaly interface only parse and send. PC application does all rest things.
Now i can fill message fields, press button and CAN message will be sent. Also i can put this function to thread or timer function and i will send CAN message periodical.