Определить текущий HINSTANCE?

Вот решение VB.Net, которое я использовал.

Первый делают класс для сравнения дат:

Private Class DateComparer
    Implements System.Collections.IComparer

    Public Function Compare(ByVal info1 As Object, ByVal info2 As Object) As Integer Implements System.Collections.IComparer.Compare
        Dim FileInfo1 As System.IO.FileInfo = DirectCast(info1, System.IO.FileInfo)
        Dim FileInfo2 As System.IO.FileInfo = DirectCast(info2, System.IO.FileInfo)

        Dim Date1 As DateTime = FileInfo1.CreationTime
        Dim Date2 As DateTime = FileInfo2.CreationTime

        If Date1 > Date2 Then Return 1
        If Date1 < Date2 Then Return -1
        Return 0
    End Function
End Class

Тогда используют компаратор при сортировке массива:

Dim DirectoryInfo As New System.IO.DirectoryInfo("C:\")
Dim Files() As System.IO.FileInfo = DirectoryInfo.GetFiles()
Dim comparer As IComparer = New DateComparer()
Array.Sort(Files, comparer)
46
задан dicroce 17 November 2009 в 16:26
поделиться

3 ответа

Если память служит, GetModuleHandle (NULL); возвращает дескриптор экземпляра.

76
ответ дан 26 November 2019 в 20:18
поделиться

__ ImageBase - ваш друг, особенно в случае библиотек.

Обратите внимание, что связанное сообщение в блоге (написано Р. Ченом, хотя и не совпадает с тем, на которое ссылается автор Брайан Бонди) стоит прочитать (включая комментарии!)

19
ответ дан 26 November 2019 в 20:18
поделиться

Если вы используете MFC, вы можете использовать AfxGetInstanceHandle.

Если вы не используете MFC, вы можете использовать: GetWindowLong (hWnd, GWL_HINSTANCE)

8
ответ дан 26 November 2019 в 20:18
поделиться
Другие вопросы по тегам:

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