I wrote a background application after receiving the command through the socket, it will call another window program to display the received number. If you use the command line to run the socket process, you can run the window program normally. If you add this command line to rc.local, the socket process will run, and you can see the log showing that the command was received, but the window program failed to run. Call the window procedure as follows:
char tmpparm[1024];
snprintf(tmpparm,1024,"/usr/local/SocketRCV/ShowCode %s" ,valuestring);
system(tmpparm);
View process information, script calls and rc.local calls are the same user group, and files are given 777 permissions.