Сохранить диалог в Delphi, данные находятся в другом разделе

Тестируя мое маленькое приложение, я столкнулся с проблемой в диалоге сохранения в Delphi. Обычно появляется диалог сохранения (в противном случае я сохраняю файл изображения), но вчера я тестировал свое приложение на компьютере, где все данные находились в другом разделе - в каталоге (D:) - в то время как система находилась в (C:) отдельно. Это не работает: saveDialog.InitialDir:= GetCurrentDir; (Диалоговое окно сохранения не появляется.) Я новичок в Delphi, и я не знаю, как решить проблему, если на некоторых компьютерах есть программы и данные в двух разных каталогах. Пожалуйста, помогите мне, спасибо заранее!

1 ответ

TSaveDialog отлично справляется с несколькими разделами. Ваша проблема связана с чем-то другим.

С учетом сказанного, вы действительно не должны полагаться на GetCurrentDir() вообще, так как он динамически изменяется в течение жизни вашего приложения, так что вы никогда не можете быть уверены, на что оно на самом деле указывает в данный момент. В любом случае, это само по себе не приведет к TSaveDialog терпеть неудачу.

TSaveDialog использования GetSaveFileName() внутренне, поэтому, когда это не удается, попробуйте позвонить CommDlgExtendedError() чтобы выяснить почему.

Другие вопросы по тегам