Получите полное качество Значок использования значка 16 x 16. ExtractAssociatedIcon и ImageList

Вам необходимо создать базу данных из файла .mdf , а затем использовать драйвер mssql, чтобы использовать ее с узлом (используйте драйвер mssql: http://www.tutorialsteacher.com / nodejs / access-sql-server-in-nodejs ).

Создание базы данных из файла .mdf:

--SQL Script
Create database dbname 
On 
(   
Filename= 'path where you copied .mdf files',   
Filename ='path where you copied .ldf log' --Optional
)
For attach; 

ИЛИ выполните следующие действия:

  • Сначала поставьте .mdf и .ldf файл в папку C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\
  • Затем перейдите в SQL Server Management Studio, щелкните правой кнопкой мыши «Базы данных» и выберите опцию «Присоединить», чтобы открыть диалоговое окно присоединения баз данных
  • Нажмите кнопку «Добавить», чтобы открыть и найти файлы базы данных из папки C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\
  • Нажмите кнопку «ОК». SQL Server Management Studio загружает базу данных из файла .MDF.

8
задан Community 23 May 2017 в 11:53
поделиться

2 ответа

Необходимо использовать 2 imagelists, один для smallimages и один, чтобы largeimages получил лучший результат, я думаю. (listview имеет два свойства, LargeImageList и SmallImageList),

Редактирование (найденный новой информацией, которая работала, когда я попробовал):

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

    Dim BigIcon As Icon = Nothing
    BigIcon = Icon.ExtractAssociatedIcon("c:\zebra.zip")
    Dim largeimages As New ImageList
    Dim smallimages As New ImageList

    largeimages.Images.Add("1", BigIcon)

    'Fix a smaller version with interpolation
    Dim bm As New Bitmap(BigIcon.ToBitmap)
    Dim thumb As New Bitmap(16, 16)
    Dim g As Graphics = Graphics.FromImage(thumb)
    g.InterpolationMode = Drawing2D.InterpolationMode.HighQualityBicubic
    g.DrawImage(bm, New Rectangle(0, 0, 16, 16), New Rectangle(0, 0, bm.Width, bm.Height), GraphicsUnit.Pixel)
    g.Dispose()
    bm.Dispose()
    smallimages.Images.Add("1", thumb)
    ListView1.SmallImageList = smallimages
    ListView1.LargeImageList = largeimages
    thumb.Dispose()
    ListView1.Items.Add("Test", "Test", "1")
10
ответ дан 5 December 2019 в 12:13
поделиться

В этой статье проекта кода и демонстрации ExtractIconEx на PInvoke.net вы можете написать следующее:

FileAssociationInfo info = new FileAssociationInfo(".docx");

ProgramAssociationInfo pai = new ProgramAssociationInfo(info.ProgID);
ProgramIcon ico = pai.DefaultIcon;
Icon icoLarge = Martin.Hyldahl.Examples.ExtractIconEx.ExtractIconExample.ExtractIconFromExe(ico.Path, ico.Index, false);

вы должны изменить подпись ExtractIconFromExe на

public static Icon ExtractIconFromExe(string file, int nIconIndex, bool large)

и измените код на несколько строк до

if (large)
   readIconCount = ExtractIconEx(file, nIconIndex, hIconEx, hDummy, 1);
else
   readIconCount = ExtractIconEx(file, nIconIndex, hDummy, hIconEx, 1);
4
ответ дан 5 December 2019 в 12:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: