• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

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

    Запись на курс до 25 апреля. Получить промодоступ ...

объявление Api-функций

  • Автор темы sum44
  • Дата начала
S

sum44

ситуация следующая: мне нужно определить тип диска с помощью API-функции GetDriveType.
нашел в инете почти подходящую статью как это делается, немного изменил код, но ничего не
получилось.
вообще я создал модуль и объявил в нем API-функцию GetDriveType:
Код:
Declare Function GetDriveType Lib "kernel32" Alias "GetDriveTypeA" (ByVal nDrive As String) As Long.
'''
и вот код обработчика нажатия на кнопку:
Код:
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim myDrive As Integer
myDrive = 67
Debug.Print(Chr(myDrive) & ":" & " - " & GetDriveType(Chr(myDrive) & ":"))	 
End Sub
End Class
доходит до строчки, где Debug.Print и выдает такое сообщение:
Unable to find an entry point named 'GetDriveType LibA' in DLL 'kernel32'.

я так понимаю, что компилятор не может найти API-функцию в библиотеке kernel32.
Объясните пожалуйста, как исправить ситуацию. Заранее спасибо.
 
S

skysun

Какая винда у тебя? Вот что дает msdn vs6. Мож у тебя виста то читай доки.
QuickInfo
Windows NT: Requires version 3.1 or later.
Windows: Requires Windows 95 or later.
Windows CE: Unsupported.
Header: Declared in winbase.h.
Import Library: Use kernel32.lib.
Unicode: Implemented as Unicode and ANSI versions on Windows NT.

Кроме того у тебя судя по коду VB.net. Ты уверен что там API-функции декларируются как в VB6
 
S

sum44

спасибо за ответ. тему закрываю, т.к. решил забить на VB и делать программу на C++
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!