Como posso testar programaticamente se um caminho / arquivo é um atalho?

Preciso testar se um arquivo é um atalho. Ainda estou tentando descobrir como as coisas serão configuradas, mas eu posso ter apenas o caminho, o conteúdo real do arquivo (como um byte []) ou os dois.

Algumas complicações incluem que eu poderia estar em um arquivo zip (nesse caso, o caminho será um caminho interno)

questionAnswers(2)

yourAnswerToTheQuestion