Программно применить шаблон?

 

Нужен максимально эффективный способ в исходном коде с использованием исключительно винапи.

Библиотеку не предлагать.

Эмуляцию действий пользователя тоже.

Помогите плз, я тут одну классную штуку надумал...

 
          33511 - графики -> шаблоны -> загрузить шаблон;
          34800  \ 
                  > порядковый номер шаблона из выпадающего списка (отсчет с нуля, т е 1 это второй в списке);
          34863  /
          33220 - графики -> шаблон -> сохранить шаблон;
 
Надеюсь этого достаточно :)
 

Ну... по крайней мере дальше не очень сложно.

Спасибо :)

 
TheXpert:

Ну... по крайней мере дальше не очень сложно.

то есть узнать имя пункта несуществующего меню для тебя легче чем WM_COMMAND отправить?
 
В смысле несуществующего ?
 
sergeev:
то есть узнать имя пункта несуществующего меню для тебя легче чем WM_COMMAND отправить?

Там по алфавиту. Скорее всего через поиск, так что небольшая проблема.

А вот большая проблема -- сохранить шаблон. Кто-нибудь поможет?

 
если шаблон один, то проблем не возникает. При вызове 33220 шаблон устанавливается на первый в порядке по имени, остается нажать на кнопку. Если много, то надо бежать по списку выбирая нужный.
 
FAQ:

Не, Рустам, ты не понимаешь, мне нельзя самому эмулировать действия пользователя. Т.е. или строгая автоматика без возможности вмешательства, или минимальный интерактив, с последующей опять же жесткой и надежной идентификацией действий.

Проблема с загрузкой легко решаема. Всего-то делов построить список и сопоставить.

С сохранением я пока решил немного костыльно, но другого способа не вижу.

Пока так:

-- запоминаю текущее время, сплю секунду (необязательн).

-- Шлю 33220 через SendMessage. т.е. синхронно

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


Если у кого-то есть способ эффективнее и лучше, большая просьба озвучить.

 
Нет, я точно так же решал. возможно лучше просто писать сразу в файл ?
 
FAQ:
Нет, я точно так же решал. возможно лучше просто писать сразу в файл ?
Что писать? Не понимаю тебя сейчас.