На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное DigiMania RSS
msm.ru
Модераторы: ElcnU
  
> Создание ярлыка, Windows CE 5.0
    Здравствуйте.
    Недавно понадобилось написать приложение под вин це 5.0 на C#, одна из функций которого создавать ярлыки на рабочем столе. Так вот у меня никак не получается это сделать. Нашел пару примеров создания ярлыков:
    1. с ком объектом. но в приложения для вин це ком объекты добавить невозможно(в самой студии)
    2. без ком объекта. но приложения под вин це не поддерживают один из интерфейсов, используемых в данном примере(System.Runtime.InteropServices.ComTypes.IPersistFile).
    Как быть ?
      M
      Тема перенесена из Мобильные устройства
      Сообщение на автоудалении
      "Воля - это то, что заставляет тебя побеждать, когда твой рассудок говорит тебе, что ты повержен" Карлос Кастанеда
        Этот вопрос решился, файл ярлыка(.lnk) просто текстовый файл с путем к запускаемой программе:
        ExpandedWrap disabled
          string s = @"\Flash\Terminal CE\Terminal CE.exe";
                      int beginFileName = s.LastIndexOf(@"\");
                      int endFileName = s.LastIndexOf(".");
                      string fileName = s.Substring(beginFileName + 1, endFileName - beginFileName - 1);
                      string shortCutName = string.Format("{0}.lnk", fileName);
           
                      string pathToDesktop = @"\Windows\Desktop\";
                      string fullPath = string.Format("{0}{1}", pathToDesktop, shortCutName);
                      //File.Create(fullPath);
                      int pathLength = s.Length;
                      try
                      {
                          using (StreamWriter file = new StreamWriter(fullPath, true))
                          {
                              file.WriteLine(string.Format("{0}#\"{1}\"", pathLength + 2/*+кавычки*/, s));
                          }
                      }
                      catch(Exception ex)
                      {
                          MessageBox.Show("Error writing");
                      }

        Появился другой вопрос: не могу читать из текстового файла, в вин се иконки на нем нет, поэтому, подозреваю, надо тхт расширение через реестр регистрировать, в общем не понятно пока
          Ситуация немного прояснилась, если файл находится на флешке/флеш карте/флеш памяти устройства, классы File, Directory, Reader-ы с ним не работают, если на рабочем столе - все работает
            Вопрос решился по средствам морт скрипта. Морт скрипт копирует файл в озу и запускает мою прогу.
            1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
            0 пользователей:


            [ Script Execution time: 0,0801 ]   [ 15 queries used ]   [ Generated: 22.05.17, 15:41 GMT ]