С Новым годом! Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.69/35: Рейтинг темы: голосов - 35, средняя оценка - 4.69
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18030 / 7733 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16

Как идентифицировать съемный жесткий диск

24.12.2012, 15:10. Показов 6787. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Распознать среди других томов.

Читал через класс Win32_LogicalDisk, свойства DriveType и MediaType. Получил данные:

DriveTypeMediaTypeName
312C:
312E:
40T:

E - это съемный ЖД. Отделить от С:, как видите, не получилось.

Еще способы? Другое свойство попробовать читать?

У меня нет съемного ЖД. Сложно самому тестировать.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.12.2012, 15:10
Ответы с готовыми решениями:

Жесткий диск пуст и имеет объем свободного простаранства Г гигабайт
Жесткий диск пуст и имеет объем свободного простаранства Г гигабайт. Разработайте приложение, вычисляющее: 1) Сколько книг, каждая из...

Жесткий диск определяется как съемный диск
Подскажите, пожалуйста, почему системный жесткий диск определяется как съемный диск? Мать GA-MA790X-ds4 (грешу на какую-то ее фичу, но...

Как восстановить съемный жесткий диск
Неудачно извлек съемный жесткий диск из встроенного в телевизор USB-порта, в результате диск не отображается на компьютере. Пробовал...

10
 Аватар для Kogb
367 / 128 / 28
Регистрация: 17.07.2011
Сообщений: 253
Записей в блоге: 1
24.12.2012, 16:32
Попробуй получить DriveType через АPI GetDriveType
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
24.12.2012, 17:42
Цитата Сообщение от Dragokas Посмотреть сообщение
У меня нет съемного ЖД.
У меня есть внешний USB диск на 1Тб. Ни как не отличается. И в свойствах диска идет как обычный "локальный диск".
Цитата Сообщение от Kogb Посмотреть сообщение
через АPI GetDriveType
будет тоже самое, как и у диска DriveType 3 (Drive Fixed)
0
 Аватар для dzug
695 / 236 / 18
Регистрация: 17.01.2011
Сообщений: 583
Записей в блоге: 1
24.12.2012, 19:58
А это не поможет
Вложения
Тип файла: xls Серийный номер жесткого диска.xls (62.0 Кб, 48 просмотров)
1
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
24.12.2012, 21:54
Цитата Сообщение от dzug Посмотреть сообщение
А это не поможет

Не по теме:

Увидел модуль с именем Цепихович и понял, что не поможет:D

2
887 / 189 / 16
Регистрация: 18.07.2011
Сообщений: 260
25.12.2012, 12:33
Лучший ответ Сообщение было отмечено как решение

Решение

Очень интересная задача.
Моё решение:
Bash
1
2
3
4
5
6
7
8
9
10
11
@echo off
set regpath=HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2\CPC\Volume
wmic volume get DeviceID, DriveLetter /format:csv > list.csv
for /f "tokens=2,3 delims=," %%I in ('more +2 list.csv') do call :ImKnown "%%J" "%%I"
exit /b
 
:ImKnown
set volume=%~2
set volume=%volume:~10,-1%
reg query %regpath%\%volume% /v Data | find "5500530042005C005600490044" >nul&& echo %1 - съёмный || echo %1 - не съёмный
exit /b
Данный скрипт находит все внешние устройства (по крайней мере, у меня), в то числе и CD-DVD-ROM.
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
25.12.2012, 12:40
Цитата Сообщение от gimntut Посмотреть сообщение
Данный скрипт находит все внешние устройства
У меня возвращает: volume - псевдоним не найден
list.csv = 0 байт
0
887 / 189 / 16
Регистрация: 18.07.2011
Сообщений: 260
25.12.2012, 12:47
У меня Win8.
Решение для XP дам, когда доберусь до компьютера.
0
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
25.12.2012, 15:04
Лучший ответ Сообщение было отмечено как решение

Решение

Цитата Сообщение от Dragokas Посмотреть сообщение
Распознать среди других томов.
Задача оказалась не простая. Т.к. внешний жесткий диск определяется как обычный нормальный жёсткий диск, то единственный способ я считаю идентифицировать по способу подключения к компьютеру ( собственно, так и определяет человек, визуально - есть снаружи диск или нет )
Решил заюзать DeviceIoControl, вещь та ещё!
Смысл в том, что если диск возвращает DRIVE_FIXED и в то же время подключение по USB, то можно однозначно сказать, что это внешний диск.

На форме Text1, в котором буква диска именно так = "С:" и кнопка.

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
Private Enum STORAGE_QUERY_TYPE
    PropertyStandardQuery = 0
    PropertyExistsQuery
    PropertyMaskQuery
    PropertyQueryMaxDefined
End Enum
Private Enum STORAGE_PROPERTY_ID
    StorageDeviceProperty = 0
    StorageAdapterProperty
End Enum
 
Private Type STORAGE_PROPERTY_QUERY
    PropertyId As STORAGE_PROPERTY_ID
    QueryType As STORAGE_QUERY_TYPE
    AdditionalParameters(0) As Byte
End Type
Private Type OVERLAPPED
    Internal As Long
    InternalHigh As Long
    offset As Long
    OffsetHigh As Long
    hEvent As Long
End Type
Private Enum STORAGE_BUS_TYPE
    BusTypeUnknown = 0
    BusTypeScsi
    BusTypeAtapi
    BusTypeAta
    BusType1394
    BusTypeSsa
    BusTypeFibre
    BusTypeUsb
    BusTypeRAID
    BusTypeMaxReserved = &H7F
End Enum
Private Type STORAGE_DEVICE_DESCRIPTOR
    Version As Long
    Size As Long
    DeviceType As Byte
    DeviceTypeModifier As Byte
    RemovableMedia As Byte
    CommandQueueing As Byte
    VendorIdOffset As Long
    ProductIdOffset As Long
    ProductRevisionOffset As Long
    SerialNumberOffset As Long
    BusType As STORAGE_BUS_TYPE
    RawPropertiesLength As Long
    RawDeviceProperties(0) As Byte
End Type
 Const GENERIC_READ = &H80000000
 Const FILE_SHARE_READ = &H1
 Const OPEN_EXISTING = 3
 Const FILE_SHARE_WRITE = &H2
 Const DRIVE_UNKNOWN = 0
 Const DRIVE_NO_ROOT_DIR = 1
 Const DRIVE_REMOVABLE = 2
 Const DRIVE_FIXED = 3
 Const DRIVE_REMOTE = 4
 Const DRIVE_CDROM = 5
 Const DRIVE_RAMDISK = 6
 Const IOCTL_STORAGE_BASE As Long = &H2D
 Const METHOD_BUFFERED = 0
 Const FILE_ANY_ACCESS = 0
Private Declare Function GetDriveType Lib "kernel32.dll" Alias "GetDriveTypeA" (ByVal nDrive As String) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Private Declare Function CreateFile Lib "kernel32" Alias "CreateFileA" (ByVal lpFileName As String, ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long, lpSecurityAttributes As Any, ByVal dwCreationDisposition As Long, ByVal dwFlagsAndAttributes As Long, ByVal hTemplateFile As Long) As Long
Private Declare Function DeviceIoControl Lib "kernel32" (ByVal hDevice As Long, ByVal dwIoControlCode As Long, lpInBuffer As Any, ByVal nInBufferSize As Long, lpOutBuffer As Any, ByVal nOutBufferSize As Long, lpBytesReturned As Long, lpOverlapped As OVERLAPPED) As Long
Private Function CTL_CODE(ByVal lDeviceType As Long, ByVal lFunction As Long, ByVal lMethod As Long, ByVal lAccess As Long) As Long
    CTL_CODE = (lDeviceType * 2 ^ 16&) Or (lAccess * 2 ^ 14&) Or (lFunction * 2 ^ 2) Or (lMethod)
End Function
Private Function IOCTL_STORAGE_QUERY_PROPERTY() As Long
    IOCTL_STORAGE_QUERY_PROPERTY = CTL_CODE(IOCTL_STORAGE_BASE, &H500, METHOD_BUFFERED, FILE_ANY_ACCESS)
End Function
 
 
Private Function GetDisksProperty(ByVal hDevice As Long, utDevDesc As STORAGE_DEVICE_DESCRIPTOR) As Boolean
    Dim ut As OVERLAPPED
    Dim utQuery As STORAGE_PROPERTY_QUERY
    Dim lOutBytes As Long
    With utQuery
        .PropertyId = StorageDeviceProperty
        .QueryType = PropertyStandardQuery
    End With
    GetDisksProperty = DeviceIoControl(hDevice, IOCTL_STORAGE_QUERY_PROPERTY, utQuery, LenB(utQuery), utDevDesc, LenB(utDevDesc), lOutBytes, ut)
End Function
 
 
Private Function GetDriveBusType(ByVal strDriveLetter As String) As String
    Dim hDevice As Long
    Dim utDevDesc As STORAGE_DEVICE_DESCRIPTOR
    hDevice = CreateFile("\\.\" & strDriveLetter, GENERIC_READ, FILE_SHARE_READ Or FILE_SHARE_WRITE, ByVal 0&, OPEN_EXISTING, 0, 0)
    If hDevice <> -1 Then
        utDevDesc.Size = LenB(utDevDesc)
        Call GetDisksProperty(hDevice, utDevDesc)
        Select Case utDevDesc.BusType
            Case BusType1394
                GetDriveBusType = "1394"
            Case BusTypeAta
                GetDriveBusType = "Ata"
            Case BusTypeAtapi
                GetDriveBusType = "Atapi"
            Case BusTypeFibre
                GetDriveBusType = "Fibre"
            Case BusTypeRAID
                GetDriveBusType = "RAID"
            Case BusTypeScsi
                GetDriveBusType = "Scsi"
            Case BusTypeSsa
                GetDriveBusType = "Ssa"
            Case BusTypeUsb
                GetDriveBusType = "Usb"
            Case BusTypeUnknown
                GetDriveBusType = "Резерв"
            Case Else
        End Select
        Call CloseHandle(hDevice)
    End If
End Function
Private Sub Command1_Click()
drLet$ = Text1.Text
Select Case GetDriveType(drLet$)
 Case DRIVE_UNKNOWN
   drivetype$ = " DRIVE_UNKNOWN"
 Case DRIVE_NO_ROOT_DIR
 drivetype$ = "DRIVE_NO_ROOT_DIR "
 Case DRIVE_REMOVABLE
 drivetype$ = "DRIVE_REMOVABLE "
 Case DRIVE_FIXED
 drivetype$ = " DRIVE_FIXED"
 Case DRIVE_REMOTE
 drivetype$ = "DRIVE_REMOTE "
 Case DRIVE_RAMDISK
 drivetype$ = " DRIVE_RAMDISK"
Case DRIVE_CDROM
 drivetype$ = "DRIVE_CDROM"
  Case Else
        End Select
MsgBox "Диск является " & drivetype$ & ", подключен по " & GetDriveBusType(drLet$)
 
End Sub
1
Эксперт WindowsАвтор FAQ
 Аватар для Dragokas
18030 / 7733 / 892
Регистрация: 25.12.2011
Сообщений: 11,502
Записей в блоге: 16
25.12.2012, 15:48  [ТС]
dzug, не будет. Это и есть DriveType.

Не по теме:

К тому же в коде на дописан отлов ошибок и обход сообщения "Устройство не готово" по свойству isReady.
Но здесь мы это не обсуждаем.



Уточняющие ответы:
- Вы пишете, что у Вас нет съемного ЖД. Тогда каким образом Вы протестировали из таблицы?
Практическая значимость - тема берет начало отсюда: Запись презентаций на 300 носитетелей . Результаты теста (табличка) дал тов.Beren.

- Что конкретно подразумевается под съемным диском? только жесткие?
Да.
Остальные можно различать по критериям:
DriveType = 2 и Имя диска = A: или B: - значит дисковод.
DriveType = 2 - значит flash-drive.
B - конечно можно назначить и ЖД, но тогда DriveType будет = 3.
Вот собственно DriveType Enum:
Value Meaning
0 Unknown
1 No Root Directory
2 Removable Disk
3 Local Disk
4 Network Drive
5 Compact Disc
6 RAM Disk

- По каким интерфейсам предполагается подключение?
USB.
Лично у меня материнская плата ASUS P8P67, которая имеет опцию ~ "Разрешить отключение ЖД..."
Любой SATA-диск отображается в системном лотке как "Устройство, готовое к извлечению" (там же где и флешки).
По сути такой ЖД становиться тоже съемным. Позволю себе позже расширить эту тему до определения и таких случаев.

- Распознать когда? При подключении, или когда уже подключено?
Уже дал ответ выше. Код крутится циклом. Как только устройство подключено,
на него должен скопироваться файл, проверка контрольной суммы, отключение ус-ва.
А вообще, в каком контексте (зачем) задан этот вопрос?

- Каковы вообще исходные данные: буквы томов, или все-таки устройства? (на у-ве может быть несколько томов)
Да, может. Код должен найти их все. На какой записывать... первый по физической разметке. Как его найти - другой вопрос. Давайте не в этой теме.
0
Телекомпания ВИD
 Аватар для anny05
1364 / 115 / 19
Регистрация: 14.10.2012
Сообщений: 100
26.12.2012, 13:45
Лучший ответ Сообщение было отмечено как решение

Решение

Осталось мне внести свою скромную лепту.

Вношу с задержкой, поскольку пришлось ждать тестирования на чужом съемном HDD. И потом, мне не нравится выкладывать непроверенные решения.

Но еще до тестирования у меня возникли мысли относительно данной проблемы, и мне бы не хотелось, чтобы они пропали зря. Могут кому-то пригодиться, ведь абсолютно идентичные задачи встречаются редко.
При тестировании использовались операционные системы Windows XP.


1. Способ через WMI. Метод ненадежный, да и выводит не всегда (критика WMI описана здесь: Получение информации о процессоре, накопителях и материнской плате в среде Access 2007).

Пример использования WMI:
Visual Basic
1
2
3
4
5
Set WMI = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2")
Set AllDrives = WMI.ExecQuery ("Select * from Win32_DiskDrive")
For each Disk in AllDrives
 Wscript.Echo Disk.InterfaceType
Next
Для Win32_PhysicalMedia - подходящие параметры:

а) MediaDescription (более точное определение физ. устройства; зависит от параметра MediaType)
б) MediaType (тип физического устройства; существует 66 значений данного параметра, нужными являются: 15-Winchester Removable Disk и 29-Hard Disk).
в) Model (наименование модели диска)
г) Removable (является ли устройство съемным без необходимости выключения питания)
Цитата Сообщение от Dragokas Посмотреть сообщение
Любой SATA-диск отображается в системном лотке как "Устройство, готовое к извлечению" (там же где и флешки).
- скорее всего, именно с этим и связан параметр Removable, хотя нет уверенности, и проверить не на чем.

д) SerialNumber (серийный номер)

При тестировании, к сожалению, определился только параметр SerialNumber. И определяется, судя по всему, только для IDE-накопителей, SATA-не распознает.
Параметр MediaType оказался бы очень полезным.

Для Win32_DiskDrive - подходящие параметры:

а) Model (наименование модели диска)
б) InterfaceType (тип интерфейса подключения дискового устройства; возможные значения: SCSI, HDC, IDE, USB, 1394)
в) PNPDeviceID (идентификационный параметр диска, получаемый с помощью Plug and Play; при невозможности получения наименования модели и серийного номера следует использовать обработку этого параметра, либо напрямую читать и обрабатывать данное значение из реестра (см. ниже))

Все три параметра корректно определялись при цестировании.
Существует еще один полезный параметр г):

г) MediaType (тип дискового устройства; для Windows Server 2003, Windows XP, Windows 2000, и Windows NT 4.0 возможные значения: Removable media, Fixed hard disk, Unknown; начиная с Windows Vista возможные значения: External hard disk media, Removable media other than floppy, Fixed hard disk media, Format is unknown).
д) SerialNumber (серийный номер; параметр не поддерживается на системах Windows Server 2003, Windows XP, Windows 2000, и Windows NT 4.0)

Тестирование показало, что для системного и съемного дисков параметр MediaType = "Fixed hard disk media" одинаков на Windows XP. За отсутствием систем Vista/7 проверить параметр на них не удалось.

Вывод: для решения поставленной задачи достаточно детектировать параметр Win32_DiskDrive => InterfaceType, поскольку съемные диски чаще всего подключаются через USB. Для съемного диска он показал - "USB", для системного - "IDE".
Альтернатива - проверять, заняты ли USB-порты, и если да, то чем (USB-накопитель, HDD и т.д.).



2. Способ через реестр. В ветви HKEY_LOCAL_MACHINE\SYSTEM\CurrentControl Set\Enum\ для каждого интерфейса есть свой подраздел, например, IDE или USBSTOR. Поэтому параметры можно брать напрямую отсюда, что немного увеличивает быстродействие (по сравнению с WMI). Кроме того, к WMI могут быть применены политики безопасности, либо эта служба может быть вообще отключена.

Согласно небольшому исследованию, системные диски прописываются, как правило в подраздел IDE, а внешние HDD, подключаемые через USB - в подраздел USBSTOR, как и флеш-накопители.


3. Преимущества использования WMI и считывания из реестра: простота использования в скриптах.
Недостатки: в общем случае - недостаточное быстродействие WMI по сравнению с иными способами; для новых устройств должно пройти достаточное вреся, пока они установятся на ПК, а все необходимые параметры запишутся в реестр (к ответу на вопрос
Цитата Сообщение от Dragokas Посмотреть сообщение
А вообще, в каком контексте (зачем) задан этот вопрос?
). Вопрос также задавался в контексте степени автоматизации (т.е. требуется ли вообще "крутить цикл" и выяснять момент подключения или же предполагалось, что устройство уже подключено до запуска кода, ведь цикл грузит систему; изящнее, но сложнее - хук на подключение).



4. Поэтому существуют и другие способы считывания параметров, например:

а) Использование метода прямого физического доступа к диску с правами администратора;
-> (съемный HDD не определился)

б) чтение с использованием SCSI по обходному пути;
опознание: вместо "\\.\PhysicalDrive" используется контроллер "\\.\Scsi", административные права не требуются.
-> (съемный HDD не определился)

в) использование метода прямого физического доступа с минимальными правами;
опознание: в CreateFile вместо "GENERIC_READ | GENERIC_WRITE" используется параметр "0"
-> (определились параметры обоих физических дисков, оба - "fixed")

г) чтение параметров SMART;
-> (определился только системный диск)

В указанных случаях определялись основные атрибуты физических дисков, такие как модель, серийный номер и т.д.; тип интерфейса подключения не являлся определяемым параметром (оcновной интерфейс - IDE).


5. Результаты тестирования решения от Pro_grammer:

Диск является DRIVE_REMOVABLE , подключен по Резерв (Floppy, пустой, с дискетой)
Диск является DRIVE_FIXED, подключен по Ata (системный HDD)
Диск является DRIVE_FIXED, подключен по Usb (съемный HDD)
Диск является DRIVE_CDROM, подключен по Atapi (физический CD-ROM, пустой и непустой)
Диск является DRIVE_CDROM, подключен по Scsi (виртуальный CD-ROM, пустой и непустой)
Диск является DRIVE_REMOVABLE , подключен по Usb (флеш-накопитель, присутствует)
Диск является DRIVE_REMOVABLE , подключен по (флеш-накопитель, отсутствует)



6. Win32_LogicalDisk => DriveType и MediaType не определяют, является ли HDD внешним, т.к. это логический уровень.
DriveType - определяет тип логического диска.
MediaType - определяет точный тип носителя логического диска. Существует 22 значения данного параметра (0-неизвестный формат; 11-съемный носитель, отличный от дискеты (Removable media other than floppy); 12-фиксированный жесткий диск (Fixed hard disk media); остальные значения относятся к различным форматам гибких дисков Floppy).


7. Следует учитывать, что на физическом устройстве может быть несколько томов. Алгоритм 1 - по внешнему физическому устройству HDD определяются "внешние" тома. Алгоритм 2 - соответственно, наоборот. Алгоритм 3 (возможно применим к практической значимости) - внутренние диски уже заранее заданы на конкретной системе либо определены, все остальные будут являться внешними.

Определять можно, например, так. На любой Windows-системе всегда есть системный том (%SYSTEMDRIVE%). По нему следует найти сам физический диск и интерфейс, по которому он подключен. Все остальные интерфейсы автоматически могут считаться "внешними". Вычислять остальные "внутренние" тома не имеет смысла, так как могут использоваться несколько физических "внутренних" дисков (с данными). Сравнение производить по типу интерфейса.

Выяснить соответствие между физическими и логическими дисками помогут следующие параметры:

а) Win32_PhysicalMedia => Tag
б) Win32_DiskDrivePhysicalMedia => Antecedent, Dependent
в) Win32_DiskDriveToDiskPartition => Antecedent, Dependent
г) Win32_LogicalDiskToPartition => Antecedent, Dependent

Если все-же нужно получить все DeviceID, вот пример для IDE: Win32_IDEControllerDevice => Dependent


8. Тонкий момент. RAID-конфигурации с несколькими дисками хоть и не часто, но встречаются. А RAID не всегда может выдавать серийники и другие параметры своих нескольких дисков...
Редко, но возможна ситуация, когда на некоторых современных ПК IDE вообще не используется, а вмеcто этого системный диск подключен по интерфейсу USB. Внешний HDD в этом случае может подключаться через I/O USB (не следует отождествлять понятия "разъем" и "гнездо расширения").


9. Решение от gimntut. Подтверждаю: под Windows XP ничего не возвращает. Решения для Windows XP пока нет.
В ветви MountPoints2 прописывается информация о бывших и существующих локальных, сетевых и съемных дисках, а именно - точки монтирования, причем диски обозначаются как буквами, так и идентификаторами. При открытии диска ОС смотрит, какой программой его открыть (параметр BaseClass со значением по умолчанию: Drive). Ветка может использоваться и вредоносным ПО.
Не всегда существует под-ветка CPC.
Помимо MountPoints2, информация о накопителях прописывается и в другие ветви реестра.
4
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
26.12.2012, 13:45
Помогаю со студенческими работами здесь

Как установить Debian на съемный жесткий диск?
Есть ноут с виндой, есть съемный жесткий диск на террабайт. В съемном всякие личные файлы и отдельный том (150гб) под дебиан. Куда...

Съемный жесткий диск TS500GSJ25M TRANSCEND не видит компьютер,как узнать сгорел ли он?!
У меня съемный жесткий диск-TS500GSJ25M TRANSCEND-его не видит комп,как узнать сгорел ли он?! Он ещё шумит как тетрис. ну помните...

Вынуть данные (жесткий съемный диск или CD диск)
Мобил рек упал и стал компу невидим, CD с некорректной записью (диск полон, но содержимое не отображается). Откуда дешевле восстановить...

Съемный жесткий диск перестал открываться ! Пожалуйста, посоветуйте, как это исправить!(описание см. внутри)
Недавно купила съёмный жесткий диск seagate backup plus(1 терабайт). Два дня работал нормально, даже перенесла на него некоторые файлы. ...

Съемный жесткий диск
Возникла проблема при подключении съемного жесткого диска к ноуту. . -он вообще никак не определяется. .нет надписей о новом устройстве....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru