I don’t think you can change the program name (unless you rename Toad.exe before you run it). But you can use dbms_application_info.set_module or dbms_application_info.set_action to help make your session more easily identifiable.
For many users I see in Application name (db2top) “toad.exe”. When I use dbms_application_info.set_module or dbms_application_info.set_action it change globally “toad.exe” to eg. “toad_user”, but it don’t give me an information about specific user.
Changing toad.exe to toad_user.exe works but it a little workaround, isn’t it?
Oh! Now I understand. DB2Top is another monitoring tool. And you want Toad.exe to show up differently in the "Application Name" column of DB2Top! Well, I don't know where DB2Top gets its information from, so I can't really answer that. All along, I thought you wanted to change the how the program name appears in V$SESSION. As far as I know, that's not possible, but there are many other columns that can be used to identify a session such as USERNAME, OSUSER, MACHINE, etc.
You can see other connections with JDBC (starts with DBeaver, sqrrl) passing param "clientProgramName"
Toad does not use JDBC, it uses OCI. So maybe that is the difference. I am not aware of any ClientProgramName parameter.
OK, I did some searching about DB2Top - it seems this is a DB2 monitoring tool. Are you using the DB2 database? If so, you are in the wrong forum. This is the Toad for Oracle forum. Toad for DB2 is a different product with different developers and a different forum.