Откройте окно терминала и инициируйте Gnucash оттуда. Необходимо видеть сообщения об ошибках в терминале, который должен помочь Вам обнаружить проблему.
Лучше всего запустить приложение в WinDbg (отладчик Windows), затем подключиться к процессу и выполнить команду ! Handle
. У каждого открытого файла будет связанный дескриптор. Сбросив все дескрипторы для соответствующего процесса, вы увидите соответствующий путь к файлу.
Вот пример:
!handle 0 f process-id
Замените идентификатор процесса значением вашего идентификатора процесса. Вместо идентификатора процесса вы также можете использовать адрес процесса. Если это не показывает объект файла, то дескриптор файла уже был закрыт. В этом случае вам нужно обвести ручки. Это можно сделать с помощью команды ! Htrace
.
В коде вызовите функцию
System.IO.Directory.GetCurrentDirectory()
По умолчанию, если вы не изменили свойства отладки вашего проекта, текущий каталог будет запускаться как каталог bin \ Debug вашего проекта ( откуда запускается .exe).
В Visual Studio, в настройках проекта на вкладке отладки, вы можете установить «Рабочий каталог», если хотите.
Чтобы определить текущий рабочий каталог в коде или в непосредственном окно в точке останова, попробуйте
System.IO.Directory.GetCurrentDirectory()