Нет, нет, по крайней мере, не надежно. Имейте в виду, что имя файла может вообще не быть. Например, я мог бы открыть приложение, такое как блокнот, напечатать что-нибудь и напечатать. Какой файл я печатаю? Никто.
В приведенном выше сценарии большинство приложений предоставляют какое-либо имя файла по умолчанию, например, «без названия», и иногда вы можете найти это имя, проанализировав имя задания на печать. Например, если вы вызываете GetJob
, элемент JOB_INFO_1
структуры *1004* будет содержать указатель на имя задания на печать, и это имя часто будет содержать имя файла.
Однако, каждое приложение форматирует его по-своему, а некоторые вообще не предоставляют его. Таким образом, ответ заключается в том, что вы можете найти имя файла, возможно, в 75% случаев, приложив много усилий, но просто не существует 100% решения.