Вверх ↑
Этот топик читают: Гость
Ответов: 95
Рейтинг: 10
#1: 2010-10-24 19:00:12 ЛС | профиль | цитата
Очень прошу помочь разобраться. Сделал не большое расширение меню. Суть такая... Жмешь на картинку правой кнопкой мыши в контекстном меню вылазит дополнительный пункт "загрузить на фото хостинг", после нажатия в буфер обмена копируется обратная ссылка на уже загруженную картинку. Во всем вроде разобрался, все работает но вот одна проблема с расширениями.. в компонент Context нужно вписать расширение но только одно( дело в том что у каждого формата они разные у меня это OISpngfile,OISjpegfile,OISgiffile,OISbmpfile, на другом компе это FastStone.png, Jpeg и т.д... Подскажите как быть не создавать же 999 длл файлов((
Прикладываю схему для ПНГ, которая работает на моем компе(OISpngfile)

Очень надеюсь на вашу помощь
карма: 1

0
файлы: 1code_21228.txt [3.1KB] [102]
Администрация
Ответов: 15295
Рейтинг: 1519
#2: 2010-10-24 20:53:56 ЛС | профиль | цитата
это поле нужно только для автоматической инсталяции расширения в реестр. Чтобы применить его к другим типам файлов необходимо создать аналогичные ключи(те, которые появляются при инстации очевидно) из ветки OISpngfile для всех остальных типов
карма: 26
1
Голосовали:bardak
Ответов: 95
Рейтинг: 10
#3: 2010-10-25 07:10:49 ЛС | профиль | цитата
Dilma
Спасибо огромное, теперь все понятно... а не подскажите где можно поискать список возможных расширений для png, bmp, jpeg, gif...?
На сколько я понял их на столько много, что будет проще сделать консольную программку которая будет запускаться при инстилляции, регистрировать dll, считывать из реестра значение .png и т.д., а потом записывать уже в определенные ветки?
Add(Console,2953706,56,203)
{
Title="context"
link(onStart,14487903:doExec,[])
}
Add(Registry,13269114,231,119)
{
Key=".png"
link(onRead,5216994:doString,[])
}
Add(Registry,4328348,413,112)
{
Data="{004A9534-B7A6-0B5B-2B05-92D702AEB329}"
link(Key,5133078:Text,[(426,100)(388,100)(388,176)(349,176)])
}
Add(FormatStr,5216994,294,119)
{
DataCount=1
Mask="%1shellexContextMenuHandlerspng.FName"
link(onFString,5133078:doAdd,[])
link(Str1,13269114:RData,[(300,107)(268,107)(268,163)(237,163)])
}
Add(StrList,5133078,343,119)
{
AddType=1
link(onChange,4328348:doWrite,[])
}
Add(Registry,15325301,231,210)
{
Key=".gif"
link(onRead,8666615:doString,[])
}
Add(Registry,8990949,413,203)
{
Data="{004A9534-B7A6-0B5B-2B05-92D702AEB329}"
link(Key,10530245:Text,[(426,191)(388,191)(388,267)(349,267)])
}
Add(FormatStr,8666615,294,210)
{
DataCount=1
Mask="%1shellexContextMenuHandlerspng.FName"
link(onFString,10530245:doAdd,[])
link(Str1,15325301:RData,[(300,198)(268,198)(268,254)(237,254)])
}
Add(StrList,10530245,343,210)
{
AddType=1
link(onChange,8990949:doWrite,[])
}
Add(Registry,13407503,231,294)
{
Key=".jpeg"
link(onRead,4539982:doString,[])
}
Add(Registry,14664403,413,287)
{
Data="{004A9534-B7A6-0B5B-2B05-92D702AEB329}"
link(Key,4817127:Text,[(426,275)(388,275)(388,351)(349,351)])
}
Add(FormatStr,4539982,294,294)
{
DataCount=1
Mask="%1shellexContextMenuHandlerspng.FName"
link(onFString,4817127:doAdd,[])
link(Str1,13407503:RData,[(300,282)(268,282)(268,338)(237,338)])
}
Add(StrList,4817127,343,294)
{
AddType=1
link(onChange,14664403:doWrite,[])
}
Add(Hub,6865898,175,203)
{
OutCount=3
link(onEvent1,13269114:doRead,[(210,209)(210,125)])
link(onEvent2,15325301:doRead,[])
link(onEvent3,13407503:doRead,[(210,223)(210,300)])
}
Add(WinExec,14487903,119,203)
{
FileName="regsvr32 /s ex_png.dll"
link(onExec,6865898:doEvent1,[])
}

карма: 1

0
3
Сообщение
...
Прикрепленные файлы
(файлы не залиты)