|
Иконки файлов | ☑ | ||
---|---|---|---|---|
0
Phil_McLaren
12.04.13
✎
08:00
|
Добра!
Нужно программно получать иконки файлов. Ограничений по расширению нет, файл в доступе будет (пользователь перетаскивает на форму). В 77 был метод АтрибутыФайла, но альтернативы ему в 82 не вижу В shell32.dll есть shgetfileinfo, но идеи, как его вызвать, нет - vbscript не подходит, поскольку Script Host не тянет подключение библиотек Подключение любого рода компонент (в т.ч. самописных) не вариант. Буду рад идеям и наводкам |
|||
1
1Сергей
12.04.13
✎
08:05
|
>>В 77 был метод АтрибутыФайла...
И что, он иконки вытягивал? |
|||
2
Wobland
12.04.13
✎
08:10
|
альтернатива атрибутам файла в восьмёрке - объект типа файл
|
|||
3
Phil_McLaren
12.04.13
✎
08:43
|
(1) сколь я помню, один из параметров заполнялся иконкой
(2) а вот он как раз этого не делает так или иначе, не вижу чем получить иконку по факту на форме есть таблица с файлами, и очень было бы здорово дать каждому из них значок ради вящей визуализации |
|||
4
Wobland
12.04.13
✎
08:47
|
(3) я вообще не помню и не могу помнить. но мой СП против иконок.
имею мнение, что это затраты на это баловство не окупятся причинённой пользой |
|||
5
Phil_McLaren
12.04.13
✎
08:54
|
(4) не могу поспорить, практическая ценность невелика
тут уже спортивный интерес присутствует |
|||
6
Wobland
12.04.13
✎
09:04
|
вот тут ресурсИД...
http://msdn.microsoft.com/en-us/library/ms682212(v=vs.85).aspx |
|||
7
Phil_McLaren
12.04.13
✎
09:08
|
да, тоже это находил. для вызова ExtractIcon нужно использовать shell32, так что даже сторонний подобный код в ScriptHost не вызвать
COM бы какой-нибудь, вызвать метод и получить ico, хэндл иконки в файле найти нетрудно |
|||
8
Wobland
12.04.13
✎
09:08
|
Как использовать функцию SHGetFileInfo для получения значков, связанных с файлами
http://support.microsoft.com/kb/319350 но это C# |
|||
9
Wobland
12.04.13
✎
09:10
|
а это джава
FileSystemView.getFileSystemView().getSystemIcon(new File(arg[0])) а джавовский код я умею исполнять ;) |
|||
10
Wobland
12.04.13
✎
09:13
|
вроде без этого не взлетит: import java.io.File;
источник: http://www.sql.ru/forum/actualthread.aspx?tid=198362 не знаю, короче.. |
|||
11
Cube
12.04.13
✎
09:22
|
ПиктограммыФайлов.png из какой-то последней конфы от 1С (БП 3.0, кажется): http://storage2.static.itmages.ru/i/13/0412/h_1365744054_6917769_d41d8cd98f.png
Остальные, если сильно захочешь, дорисуешь сам :) |
|||
12
Wobland
12.04.13
✎
09:29
|
(11) весь цимес в том, чтобы спрашивать у конкретной ОС, а не давать что-то "предопределённое". впрочем, моя позиция может отличаться от авторской ;)
|
|||
13
Phil_McLaren
12.04.13
✎
10:50
|
(8), встречал такие примеры. собственно, если бы мог c# код припаять безболезненно к проекту (т.е. без компонент и регистрации библиотек в системе), то сам бы написал
(9) а вызвать подходящий код на яве возможно будет под Script Host`ом? я в этой же работе использую vbscript, соответственно без лишних файлов и прочего получаю результат (10) давай подумаем) (11,12) да... надо динамически получать |
|||
14
Wobland
12.04.13
✎
11:15
|
(13) обMSScriptControl=Новый COMОбъект("MSScriptControl.ScriptControl");
обMSScriptControl.language="javascript"; Старт=обMSScriptControl.eval("new Date().getTime()"); на работе я занят работой, а эта задача требует уже отвлечения от работы. и вечером в пятницу мне довольно лениво будет что-то думать. так что, извини, не сегодня ;) |
|||
15
Phil_McLaren
12.04.13
✎
11:16
|
(14) конечно, спасибо, что уделил внимание)
я напомню в понедельник, если еще будет актуально ;) |
|||
16
masenshi
12.04.13
✎
11:36
|
(0) декомпилятор на 1С
|
|||
17
Phil_McLaren
16.04.13
✎
08:43
|
итак... ап!
желание перехитрить систему все еще велико) возможные пути видны те же - vbscript, jscript, powershell гугл уже вспотел от моих поисков, так что тут нужны свежие идеи -) |
|||
18
IamAlexy
16.04.13
✎
08:44
|
нафейхоа?
из типовой возьми коллекцию с типовыми наиболее часто употребимыми иконками файлов.. |
|||
19
Phil_McLaren
16.04.13
✎
08:51
|
(18) как я уже говорил, по существу это просто challenge своего рода) профанацию типа предложенной я всегда успею реализовать, тем более что это все так, фишка, к функционалу отношения не имеет
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |