Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.06.06;
Скачать: CL | DM;

Вниз

Как "запустить" функцию?   Найти похожие ветки 

 
ASoft   (2005-04-13 12:13) [0]

Уважаемые мастера,
нашел в справке Win32 такую функцию SetEnvVariable(), но Delphi не может ее идентифицировать, какой модуль нужно подключить для ее использования?
PS: SetEnvironmentVariable() есть в модуле Windows, но мне нужна глобальная функция для добавления переменных.
Спасибо.


 
Digitman ©   (2005-04-13 12:17) [1]


> нашел в справке Win32 такую функцию SetEnvVariable(),


нет там такой.
есть как раз та самая SetEnvironmentVariable(), в "глобальности" которой ты сомневаешься.

приведи ссылку на SetEnvVariable()....


 
Юрий Зотов ©   (2005-04-13 12:21) [2]

Выдержка из MSDN:
To programmatically add or modify system environment variables, add them to the HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment registry key, then broadcast a WM_SETTINGCHANGE message.


 
Думкин ©   (2005-04-13 12:25) [3]

> [1] Digitman ©   (13.04.05 12:17)

BOOL SetEnvVariable(LPSTR szName, LPSTR szValue, CMO cmo);

SetEnvVariable sets the specified environment variable to a certain value. The environment variable can also be elongated by specifying the command option flag fAppend or fPrepend. Under Windows NT, the environment variables affected are the ones specified in the registry. Under Windows 95, autoexec.bat is modified to set the values.

Arguments

szName

Specifies the name of the environment variable.

szValue

Specifies the new value that you want to associate with the environment variable.

cmo

Specifies the command option flag. You can use fOverwrite, fAppend, or fPrepend.

Return Value

If the function succeeds, it returns fTrue.
If the function fails, it returns fFalse.

See Also

RemoveEnvVariable


 
DiamondShark ©   (2005-04-13 12:28) [4]

Это из старого Setup API


 
Digitman ©   (2005-04-13 12:30) [5]


> Думкин ©   (13.04.05 12:25) [3]


это какой hlp-файл ?


 
Думкин ©   (2005-04-13 12:33) [6]

> [5] Digitman ©   (13.04.05 12:30)

Из Д7 Win32 Developr"s Reference


 
Думкин ©   (2005-04-13 12:38) [7]

"c:\Program Files\Common Files\Borland Shared\MSHelp\WIN32SDK.HLP"


 
Digitman ©   (2005-04-13 12:39) [8]

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


 
Eraser ©   (2005-04-13 12:39) [9]

Странно... в Help SDK, который с делфями (7) идёт- есть, правда как-то оформлена криво..., а в MSDN 2004 нету...
Может это какая-то "полуприкладная" функция...


 
ASoft   (2005-04-14 03:07) [10]

Digitman [8] ну и какой глубокий смысл использовать ф-цию из состава SetupAPI, когда для той же самой цели можно задействовать находящуюся прямо перед носом SetEnvironmentVariable() ? .. не понятно ...
SetEnvironmentVariable() используется для текущего открытого процесса.
SetEnvVariable() добавляет или изменяет переменную в системе. Или я ошибаюсь?
Может подскажете как создать новую глобальную переменную среды...


 
Anatoly Podgoretsky ©   (2005-04-14 09:52) [11]

Digitman ©   (13.04.05 12:30) [5]
Документирована и в MS SDK

Digitman ©   (13.04.05 12:39) [8]
Это не одно и тоже. Но я не уверен, стоит ли ее использовать, что то там с документированием не так. В этом отношение больще нравится совет от ЮЗ, но он явно системно-зависим.


 
Digitman ©   (2005-04-14 10:17) [12]


> Anatoly Podgoretsky ©   (14.04.05 09:52) [11]



> Документирована и в MS SDK


не возражаю.


> Это не одно и тоже


тоже не возражаю.

но


> ASoft


следует, наверно, различать глобальные переменные среды и переменные среды тек.пользователя

об этом ты ни словом не обмолвился


 
ASoft   (2005-04-14 11:19) [13]

Digitman[12]
Да, возможно.
Anatoly Podgoretsky[11] В этом отношение больще нравится совет от ЮЗ, но он явно системно-зависим.
Поясните, если можно.


 
Digitman ©   (2005-04-14 11:45) [14]


> ASoft   (14.04.05 11:19) [13]
> Да, возможно.


тогда уточни, значение переменной какого конкретно окружения тебе необходимо создать/модифицировать/удалить :

1. Окружения тек.процесса (не фиксируется в реестре, эффективно лишь в контексте тек.процесса)

2. Окружения сеанса тек.пользователя

3. Глобального окружения


 
ASoft   (2005-04-14 12:38) [15]

Digitmanх[14]
Да, уж...
Скорее всего - 2 п.
К примеру, типа "set path=", как раньше в DOS"е было...
И эта переменная "висела" в системе, а еще лучше, была записана и загружалась вместе с остальными переменными окружения.
PS: Этот пост смогу посмотреть теперь только ч/з 15-16 часов.
Всего хорошего


 
ASoft   (2005-04-15 02:52) [16]

Я пришел.
Как там на счет SetEnvVariable()?


 
Digitman ©   (2005-04-15 09:16) [17]

идентификатор SetEnvVar экспортируется библ-кой SetupDll.dll
возможно это то что нужно


 
ASoft   (2005-04-15 11:44) [18]

Digitman[17]
Спасибо, попробую...
А какими другими средствами можно создать переменную окружения [14] п.2, п.3?



Страницы: 1 вся ветка

Текущий архив: 2005.06.06;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.027 c
1-1116485300
Polenov
2005-05-19 10:48
2005.06.06
Выделить строчку айтема в листбоксе


1-1116600766
juice
2005-05-20 18:52
2005.06.06
Имя экземпляра класса


1-1116698048
Marina_Sm
2005-05-21 21:54
2005.06.06
Внешняя компонента для 1С


14-1116584907
Тульский
2005-05-20 14:28
2005.06.06
Есть ли выход?


14-1116583846
BugMaker
2005-05-20 14:10
2005.06.06
Подскажите, как правильно выделить части URL-адреса?