2014-12-09 1 views
0

Я создал простострую панель инструментов/Visual Studio Express в VB для своей работы, которая содержит ссылки на все программное обеспечение и ярлыки, которые мы используем на ежедневной основе (см. Изображение ниже, название компании/имена приложений для защиты невинных: p) Order Management ToolBoxПользовательские сменные ярлыки

Это было создано только для меня, а затем я модифицировал код для работы на моем коллеге. Изменения, которые необходимо изменить, были адресами для каждого из приложений. Скажем, например, приложение 1 находится прямо на диске C: \ для меня, но для моего сотрудника он похоронен в C: \ Program Files \ blah blah blah. Я должен был бы войти и жестко закодировать этот путь для каждого разного пути к приложению, а затем, если что-то случится и изменится путь, я должен его повторно переделать, прежде чем развертывать его.

Что бы я хотел сделать, чтобы пользователь мог изменить путь, поэтому все, что мне нужно сделать, это развернуть исполняемый файл, и пользователь может самостоятельно изменить путь. Какой был бы лучший способ сделать это? Было бы лучше, если бы исполняемый файл искал текстовый файл для чтения/записи? Есть ли более простой и эффективный способ сделать это? Я открыт для любых предложений на данный момент.

+0

Я нашел достойный учебник по использованию StreamWriter/Reader. Кажется, работает до сих пор, однако как я разбираю строку? Текстовым файлом, который я создал для ссылки, являются все пути (т. Е. C: \ Windows \ blah). Есть ли способ заставить текстовый файл сказать что-то вроде «App1 = C: \ Windows \ blah.exe» и проанализировать строку, чтобы получить только путь? – Alex

ответ

0

Если вы отключаете только имя программы, оно будет искать в разделе реестра AppPaths. См. HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\App Paths. Плюс это откроет что угодно. Если вы хотите открыть текстовый файл a.txt, зарегистрируйтесь как a.exe. Ввод a будет выполнять команду (notepad c:\somewhere\a.txt).

+0

Можете ли вы показать пример программы, которая не является стандартной для Windows? Скажем, Google Chrome? – Alex

+0

У меня нет хром Google. Но вы можете посмотреть в своем собственном реестре на примерах. Все коммерческие программы используют это. – BambiLongGone

+0

Почему этот тег VB6, если вы не используете. В VB6 GetSetting получит только путь. или API имеет специфические функции (GetSetting был перенесен из Win16 inis в реестр Win32). Плюс просто используйте split для break on =, а второй элемент в массиве будет контуром. Путь окон - это правильный путь, а не ваш путь. – BambiLongGone