Определить домашнее местоположение приложения - PullRequest
0 голосов
/ 08 марта 2012

Я пытаюсь создать программу, в которой пользователь должен запускать .exe со своего рабочего стола ... Если они пытаются запустить его откуда-то еще, я бы хотел, чтобы во всплывающем файле .vbs я создал, чтобы показатьсказать им, чтобы разместить его на рабочем столе.Я уже сделал программу, и она отлично работает, но люди не могут прочитать инструкции, поэтому я подумал, что это может быть хорошим подходом.К сожалению, у меня проблемы с этим, и я иду в никуда.Если бы кто-то мог мне помочь, это было бы очень признательно.

Ответы [ 3 ]

7 голосов
/ 08 марта 2012

Я не совсем понимаю, почему вы хотите это сделать, но вы можете проверить в Main, чтобы увидеть, было ли приложение запущено с рабочего стола

static void Main()
{

  var AsmPath =System.IO.Path.GetDirectoryName( 
    System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase ) ;

   var desktopPath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);

  if (AsmPath == desktopPath)
  (
      MessageBox.Show ("You can only run this from the desktop");
      Application.Exit();
  )
  else 
       Application.Run(new Form1());
}
1 голос
/ 08 марта 2012

Если вам нужно что-то сделать с точки зрения рабочего стола человека (например, где хранить файлы относительно рабочего стола), вы можете просто запросить это местоположение и использовать его в качестве основы для любой последующей работы.

string UserDesktopPath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
0 голосов
/ 08 марта 2012

Я с Конрадом не знаю, почему ты хочешь это сделать. Но если вы говорите о том, чтобы поместить exe-файл на рабочий стол и выполнить его оттуда (в отличие от ярлыка), то вы сможете использовать Assembly.GetExecutingAssembly (). Location и сравнить его с расположением рабочего стола пользователя с System.Environment. GetFolderPath (Environment.SpecialFolder.Desktop)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...