1. Pascal / Говнокод #4321

    +90

    1. 1
    2. 2
    if DirectoryExists(ExtractFilePath(Application.ExeName)+'Folder')=false then
    CreateDir(ExtractFilePath(Application.ExeName)+'Folder');

    Запостил: Мартин, 09 Октября 2010

    Комментарии (13) RSS

    • Ну и?..
      Ответить
    • ага, создатьпапку типа c:\Program Files\AppFolder (вместо c:\Program Files\App\Folder)
      Ответить
      • ExtractFilePath() возвращает путь с разделителем. Говно не в этом, а в дублировании кода.
        Ответить
    • Говно здесь в If условие = false, вместо If not условие.
      Ответить
    • Много говна:
      1. = false вместо not
      2. Использование 2 раза ExtractFilePath(Application.ExeName)+'Fo lder' вместо того, что бы завести под это дело переменную.
      3. Да и вообще, CreateDir просто вернет false, если директория уже существует, так что проверка тут вообще не нужна.
      Ответить
      • + нет проверки на успешность выполнения createdir - может прав создания папки нету...
        Ответить
        • Тогда все равно надо будет делать проверку DirectoryExists, т.к. может папка не создалась из-за того, что уже существует, а может из-за отсутствия прав или возможностей.
          Ответить
        • + на современных виндах потенциально Writeln('Hello, UAC!'); { за писание в %ProgramFiles% гнать из профессии ссаными тряпками }
          и вообще плясать от абсолютного пути вместо workingDir - неправильно
          Ответить
          • не факт, что ExtractFilePath(Application.ExeName) = workingDir
            может тут нужна именно папка с ехешником - откуда нам знать?
            Ответить
    • ну не знает человек forcedirectory ну и ладно...
      Ответить

    Добавить комментарий