ВБА / ВБ6 - Ми Доцументс + Енвиронмент Вариаблес
Као што је приказано у програму Виндовс Екплорер, чини се да је фасцикла „Моји документи“ у корену, али то није случај. Налази се у поддиректоријуму Ц: Доцументс анд Сеттингс. Проблем је у томе што овај поддиректоријум узима име корисника и мења се не само са једног рачунара на други, већ и на рачунарима који подржавају више корисника.
Следећи кодови омогућавају приступ фасцикли „Моји документи“ по подразумеваном подешавању без обзира на то да ли је корисник пријављен.
Витх ВБА
Само налепите следећи код у општи модул:Оптион Екплицит
Приватни тип СХИТЕМИД
цб Ас Лонг
абИД Ас Бите
Енд Типе
Приватни тип ИТЕМИДЛИСТ
мкид Ас СХИТЕМИД
Енд Типе
Привате Цонст ЦСИДЛ_ПЕРСОНАЛ Ас Лонг = & Х5
Привате Децларе Фунцтион СХГетСпециалФолдерЛоцатион Либ "схелл32.длл" _
(БиВал хвндОвнер Ас Лонг, БиВал нФолдер Ас Лонг, _
пидл Ас ИТЕМИДЛИСТ)
Функција приватног декларисања СХГетПатхФромИДЛист Либ "схелл32.длл" Алиас "СХГетПатхФромИДЛистА" _
БиВал пидл Ас Лонг, БиВал псзПатх Ас Стринг Ас Лонг
Јавна функција Реп_Доцументс () Ас Стринг
Дим лРет Ас Лонг, ИДЛ као ИТЕМИДЛИСТ, сПатх Ас Стринг
лРет = СХГетСпециалФолдерЛоцатион (100 &, ЦСИДЛ_ПЕРСОНАЛ, ИДЛ)
Иф лРет = 0 Тада
сПатх = Низ $ (512, Цхр $ (0))
лРет = СХГетПатхФромИДЛист (БиВал ИДЛ.мкид.цб, БиВал сПатх)
Реп_Доцументс = Лево $ (сПатх, ИнСтр (сПатх, Цхр $ (0)) - 1)
Елсе
Реп_Доцументс = вбНуллСтринг
Енд Иф
Енд Фунцтион
Да бисте позвали функцију, једноставно направите дугме и налепите следећи код:
Привате Суб ЦоммандБуттон1_Цлицк ()
Ћелије (5, 2) = Реп_Доцументс ()
Енд Суб
Са ВБ6
Под ВБ6, користите променљиву окружења УсерПрофиле (ово такође ради са ВБА):Дим сПатхУсер као СтрингсПатхУсер = Енвирон $ ("УСЕРПРОФИЛЕ") & "моја документа" \ т
МсгБок сПатхУсер
Функције окружења
Функција Енвирон $ се користи за примање вредности променљиве окружења.На пример, када сте користили команду ВИНДИР (Виндовс), добили бисте фасциклу у којој је инсталиран Виндовс (Ц: Виндовс).
Ове варијабле се могу користити у батцх датотекама, кроз услужни програм Рун и у програмском окружењу као што су ВБ и ВБА.
- Уношење% УсерПрофиле% референцира тренутног корисника.
- Типинг% УсерПрофиле% Ми Доцументс се односи на фасциклу Ми Доцументс.
- Уношење% ВинДир% добија Виндовс фасциклу.
- Уношењем% тмп% добијате приступ привременим датотекама.
Виндовс Вариаблес
- Варијабле за заданог корисника
- ТЕМП привремени директоријум
- ТМП привремени директоријум
- Системске варијабле
- ЦомСпец променљива стаза за командну линију.
- ФП_НО_ХОСТ_ЦХЕЦК?
- НУМБЕР_ОФ_ПРОЦЕССОРС?
- ОС Враћа ОС у употреби.
- Пут?
- ПАТХЕКСТ?
- ПРОЦЕССОР_АРЦХИТЕЦТУРЕ Враћа архитектуру процесора (к86 итд.)
- ПРОЦЕССОР_ИДЕНТИФИЕР Враћа ИД процесора.
- ПРОЦЕССОР_ЛЕВЕЛ?
- ПРОЦЕССОР_РЕВИСИОН Враћа број ревизија процесора
- ТЕМП привремени директоријум.
- ТМП привремени директоријум.
- Виндир фолдер где је инсталиран Виндовс.
- Фасцикла СистемРоот у којој је инсталиран Виндовс.