Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.09.23;
Скачать: [xml.tar.bz2];

Вниз

IScheduledWorkItem.SetAccountInformation   Найти похожие ветки 

 
alxx   (2002-09-11 15:55) [0]

Пытаюсь программировать планировщик. Если добавлять задание и не давать пароля, то задача не выполняется. Однако, в MSDN сказано:

HRESULT SetAccountInformation(
LPCWSTR pwszAccountName,
LPCWSTR pwszPassword
);


pwszPassword
[in] String that contains the password for the account specified in pwszAccountName.
Set this parameter to NULL if the local account is specified or, optionally, for an account other than local system if the TASK_FLAG_RUN_ONLY_IF_LOGGED_ON flag was not passed to IScheduledWorkItem::SetFlags. (The TASK_FLAG_RUN_ONLY_IF_LOGGED_ON flag is provided so that applications can schedule tasks in their own accounts without knowing their own accounts" passwords.)


т.е. я так понимаю, если сделать так: SetAccountInformation("", nil); то задача должна выполняться для текущего аккаунта даже если пароль не задан. Но! выполняется она как то непонятно. Звук есть, а окна и сообщения на экран НЕ ВЫВОДЯТСЯ. Где я не прав?


 
alxx   (2002-09-11 16:00) [1]

Кстати, нигде не могу найти декларации
TASK_FLAG_RUN_ONLY_IF_LOGGED_ON!


 
alxx   (2002-09-11 17:22) [2]

A?


 
Ученик   (2002-09-11 17:24) [3]

#define TASK_SUNDAY (0x1)
#define TASK_MONDAY (0x2)
#define TASK_TUESDAY (0x4)
#define TASK_WEDNESDAY (0x8)
#define TASK_THURSDAY (0x10)
#define TASK_FRIDAY (0x20)
#define TASK_SATURDAY (0x40)
#define TASK_FIRST_WEEK (1)
#define TASK_SECOND_WEEK (2)
#define TASK_THIRD_WEEK (3)
#define TASK_FOURTH_WEEK (4)
#define TASK_LAST_WEEK (5)
#define TASK_JANUARY (0x1)
#define TASK_FEBRUARY (0x2)
#define TASK_MARCH (0x4)
#define TASK_APRIL (0x8)
#define TASK_MAY (0x10)
#define TASK_JUNE (0x20)
#define TASK_JULY (0x40)
#define TASK_AUGUST (0x80)
#define TASK_SEPTEMBER (0x100)
#define TASK_OCTOBER (0x200)
#define TASK_NOVEMBER (0x400)
#define TASK_DECEMBER (0x800)
#define TASK_FLAG_INTERACTIVE (0x1)
#define TASK_FLAG_DELETE_WHEN_DONE (0x2)
#define TASK_FLAG_DISABLED (0x4)
#define TASK_FLAG_START_ONLY_IF_IDLE (0x10)
#define TASK_FLAG_KILL_ON_IDLE_END (0x20)
#define TASK_FLAG_DONT_START_IF_ON_BATTERIES (0x40)
#define TASK_FLAG_KILL_IF_GOING_ON_BATTERIES (0x80)
#define TASK_FLAG_RUN_ONLY_IF_DOCKED (0x100)
#define TASK_FLAG_HIDDEN (0x200)
#define TASK_FLAG_RUN_IF_CONNECTED_TO_INTERNET (0x400)
#define TASK_FLAG_RESTART_ON_IDLE_RESUME (0x800)
#define TASK_FLAG_SYSTEM_REQUIRED (0x1000)
#define TASK_FLAG_RUN_ONLY_IF_LOGGED_ON (0x2000)
#define TASK_TRIGGER_FLAG_HAS_END_DATE (0x1)
#define TASK_TRIGGER_FLAG_KILL_AT_DURATION_END (0x2)
#define TASK_TRIGGER_FLAG_DISABLED (0x4)
#define TASK_MAX_RUN_TIMES ( 1440 )


 
alxx   (2002-09-11 17:35) [4]

Спасибо. У меня такого просто не было, видимо старые версии какие-то...
Но проблема то, похоже все равно остается. Приложения, которые запускает планировщик остаются невидимыми, даже если их показывать ShowWindow(Application.Handle, SW_SHOW);

А если задать нормальный правильный пароль, то все работает нормально.


 
alxx   (2002-09-12 10:04) [5]

Никто не знает?


 
Ученик   (2002-09-12 10:07) [6]

>alxx © (12.09.02 10:04)
Приведи код, так будет быстрее


 
alxx   (2002-09-12 12:48) [7]

Спасибо, я разобрался уже.
Там оказывается надо имя пользователя дать, а пароль nil, и флаг
TASK_FLAG_RUN_ONLY_IF_LOGGED_ON.



N:=SizeOf(Buf)-1;
Windows.GetUserName(Buf, N);
sUSER := StringToOleStr(PChar(@Buf[0]));

pWorkItem.SetAccountInformation(sUSER,nil);
SysFreeString(sUSER);

pWorkItem.SetTaskFlags(TASK_FLAG_RUN_ONLY_IF_LOGGED_ON);




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

Форум: "Основная";
Текущий архив: 2002.09.23;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.008 c
1-73666
kazaam
2002-09-13 08:25
2002.09.23
Как сделать кнопку нестандартной формы?


1-73591
KLOP
2002-09-10 16:43
2002.09.23
Не получается поменять диск у пути, в строковой переменной


3-73509
cutter-pro
2002-08-30 12:55
2002.09.23
Ненормальный скролинг в DBGrid


1-73751
Брат
2002-09-11 16:30
2002.09.23
Как програмно открыть общий доступ к папке?


1-73718
Alex Che
2002-09-11 12:07
2002.09.23
Время (очень быстрый таймер)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский