Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Indigo Rose AutoPlay Media Studio (часть 1)

Модерирует : gyra, Maz

Widok (03-09-2007 23:10): лимит страниц. продолжаем здесь  Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

   

tavria2



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
--[[ Функция возвращает параметры командной строки, указанные пользователем при запуске приложения.  В случае, если приложение создано, как SFX-архив (в режиме "Web/Email executable"), то будет произведена корректировка  глобальной переменной "_SourceFolder", вместо пути к папке в которую распаковывается SFX-архив, будет подставлен  реальный путь к вашему приложению.]]--
 
function CommandLineArgs()
    tArgs = _CommandLineArgs; -- параметры командной строки
    if (Table.Count(tArgs) > 0) then -- есть переданные параметры
        if (String.Find(tArgs[Table.Count(tArgs)], "SFXSOURCE:", 1, false) ~= -1) then -- приложение является SFX-архивом
            -- полный путь + имя файла SFX-архива (в таблице параметров всегда будет последним)
            local cPathSFX = String.Right(tArgs[Table.Count(tArgs)], String.Length(tArgs[Table.Count(tArgs)]) - 10);
            local tSplitPath = String.SplitPath(cPathSFX); -- разлаживаем путь на составляющие
            if (tSplitPath.Folder ~= "") then -- если в пути присутствует папка
                tSplitPath.Folder = String.Left(tSplitPath.Folder, String.Length(tSplitPath.Folder) -1); -- удаляем завершающий слэш "\"
            end
            _SourceFolder = tSplitPath.Drive..tSplitPath.Folder; -- назначаем глобальной переменной "_SourceFolder" - новый путь (к SFX-архиву)
            Table.Remove(tArgs, Table.Count(tArgs)); -- удаляем SFX-путь из таблицы пользовательских параметров
        end        
    end
    if (Table.Count(tArgs) == 0) then  tArgs = nil;  end -- если нет пользовательских параметров
    return tArgs -- возвращаем пользовательские параметры, в виде таблицы
end
 
------------------------------------------------------------------------------------------------------------
 
tUserArgs = CommandLineArgs(); -- корректируем путь в "_SourceFolder" и получаем параметры переданные приложению
local cPathApp = _SourceFolder.."\\".._SourceFilename; -- путь + имя файла
if (not tUserArgs) then -- если приложение запущено без параметров
    -- Код программы до перезагрузки
    -- ...

 
    cPathApp = "\""..cPathApp.."\"".." -reboot1"; -- путь + имя файла + параметр "-reboot1", указывающий на 1-ю перезагрузку
    -- запись в Автозагрузку, для одноразового запуска

    Registry.SetValue(HKEY_CURRENT_USER, "Software\\Microsoft\\Windows\\CurrentVersion\\RunOnce", "RebootApp", cPathApp, REG_SZ);
    System.Reboot(); -- перезагрузка
else -- если приложение запущено с параметрами
    if (tUserArgs[1] == "-reboot1") then
        -- Код программы после 1-й перезагрузки
        -- ...

        
        cPathApp = "\""..cPathApp.."\"".." -reboot2"; -- путь + имя файла + параметр "-reboot2", указывающий на 2-ю перезагрузку
        -- запись в Автозагрузку, для одноразового запуска

        Registry.SetValue(HKEY_CURRENT_USER, "Software\\Microsoft\\Windows\\CurrentVersion\\RunOnce", "RebootApp", cPathApp, REG_SZ);
        System.Reboot(); -- перезагрузка
    elseif (tUserArgs[1] == "-reboot2") then
        -- Код программы после 2-й перезагрузки
        -- ...

 
    end
end

Всего записей: 1127 | Зарегистр. 19-01-2005 | Отправлено: 12:54 30-01-2007 | Исправлено: tavria2, 15:26 30-01-2007
   

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Программы » Indigo Rose AutoPlay Media Studio (часть 1)
Widok (03-09-2007 23:10): лимит страниц. продолжаем здесь


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru