Windows Mobile 6.5 CAB подписи и проблемы с wceload / silent - PullRequest
2 голосов
/ 06 марта 2011

Я сгенерировал файл личного сертификата * .cer, подписал им CAB-файл, установил этот сертификат в Windows Mobile 6.5.Я хочу тихо установить эту CAB на устройстве.Я называю "wceload.exe / silent MyCab.CAB".Проблема в том, что ключ / silent не работает - мне предлагается подтвердить установку CAB, в то время как я ожидаю, что ключ / silent сам подтвердит все запросы.Кроме того, я бы хотел избежать диалога «Предыдущая версия ... установлена ​​...», если моя CAB уже была установлена ​​ранее.Есть ли способ сделать это на Windows Mobile?Я попытался установить ключ реестра HKLM / Software / Apps / My App / Instl в 0, но он не работает.Любая помощь приветствуется.

С уважением

Ответы [ 2 ]

1 голос
/ 13 сентября 2011

Моя CAB не подписана, но следующий способ работает на WM 6.5 для установки полностью бесшумно (никакого пользовательского интерфейса вообще - во время установки отображается занятый курсор). Установка выполняется программно (c # с использованием класса Process) поверх существующей установки.

wceload /nodelete /silent "\Storage Card\Blah\Blah.CAB"

Я был немного удивлен, когда документ здесь: [http://msdn.microsoft.com/en-us/library/bb158700.aspx] говорит:

Если CAB-файл не подписан и вы указываете параметры / silent или / noui при вызове wceload, wceload может игнорировать эти параметры.

Полагаю, в нем должно быть сказано "может или не может игнорировать эти параметры";)

Полный код C # ниже:

Cursor.Current = Cursors.WaitCursor;

try
{
    using (Process proc = new Process())
    {
        proc.StartInfo = new ProcessStartInfo("wceload", string.Format("/nodelete /silent \"{0}\"", cabFile));

        if (proc.Start())
        {
            proc.WaitForExit();
        }
    }
}
finally
{
    Cursor.Current = Cursors.Default;
}
1 голос
/ 05 апреля 2011

вы пробовали «горячую» загрузку с момента установки сертификата и до запуска wceload?

Вы можете попробовать добавить /noui в командную строку с параметром /silent, хотя это должно быть для устаревших приложений. http://msdn.microsoft.com/en-us/library/bb158700.aspx

Но вам может понадобиться доверенный сертификат. Вы можете отключить это требование, изменив [HKLM]\Security\Policies\Policies с [DWORD] 0 на [DWORD] 1.

см. Также:

...