Como criar um atalho na Área de Trabalho e no Menu Iniciar

Eu estou utimamente estou querendo que ao abrir meu programa (pela primeira vez) seja criado um atalho na Área de trabalho e no menu iniciar, ai vem um problema, cada sistema tem uma pasta e um jeito para o atalho (Obs: não pretendo usar jnlp pois foi descontinuado e nem sei usar). (eu uso linux por ex) eu sei que no linux os arquivos são.desktop (Arquivos de textos) e o menu iniciar eh na pasta ~/.local/applications/ Só que a area de trabalho pode variar de acordo com a linguagem do sistema. Já no windows é um arquivo .ink não fasso ideia de como gerar esse arquivo,( e no mac nem sei oq eh), eu sei que terei que criar um metodo para cada sistema, mais não sei como criar para cada um (Na vdd no linux sei +/-) . Alguem poderia me ajudar?. pretendo criar um instalador para meus programas e quardar eles em pastas ocultas por isso quero criar um atalho.

Corrigindo, no windows é .lnk, com "l" de "link" ao invés de "i".
Você pode encontrar todas as informações sobre o formato aqui.