Sürücü "İlkeler" Sekmesi Windows'ta gösterilmiyor


2

Windows'un önceki sürümlerinde, Aygıt Yöneticisi'nde Özelliklerinde "İlkeler" sekmesini gösteren, ancak Windows 8 / 8.1'de artık olmayan bir Marvell sürücüsü var.

Bu gibi bir şey:

Windows 7 ve Vista'da iyi işler olmasına rağmen, Windows 8'de bu yeni sekme mevcut değildir. Kazdım ve ana suçlu (?) mv91xxm.dll, iletişim kutusunu ele alır. Bir decompiler (NikPEViewer) bana bir gösterdi MFC simgesi , bir ihracat denilen ESATAPortPropPageProviderve orijinal adı hotplug.exe bir Zamanlar. Marvell'deki tembel programcılar bu dosyayı 2009'dan beri güncellemeyi unuttular.

Bu iletişim kutusunun ana aracı, Marvell Denetleyici'de Sürücü Önbellek Modunu etkinleştirmek ve Windows'ta (denetleyiciye bağlı sürücüler için) "Güvenle Kaldırma" davranışını devre dışı bırakmaktır.

Sorunu nasıl çözeceğimi bilmiyorum, ne de güncellemeler mi yoksa bir kayıt defteri anahtarı mı oluşturduğunu bilmiyorum. HKLM\System\CurrentControlSet\Services\mvs91xx ) veya ne olursa olsun bazı dosyaları düzenler.

Her türlü yardım takdir edilmektedir.

Not: Sürücüleri Mega'ya yükledim. Kazmak istemeniz durumunda.

[Güncelleme 01-05-2014]

Marvell'e e-posta gönderdim resmi web sitesi aracılığıyla ve onlar sürücülerin üreticileriyken, web sitelerinde indirilemeyen sürücüleri desteklemiyorlar.

Değerli Müşterimiz,   Marvell'in son kullanıcılara bıraktığı onaylı sürücüler sadece web sitemizde yer almaktadır:

http://www.marvell.com/support/downloads/search.do

Aradığınız sürücü burada değilse, biz sağlamazız.

Web sitemizde bulunan sürücüler, son kullanıcılara sunduğumuz tek destek & gt; (Marvell'le NDA sahibi olmayan müşteriler).

Başka destek gereksinimleriniz varsa, lütfen bilgisayarınızın üreticisine başvurun.   Teşekkür ederim

Eklemek için numarayı kullanma TreatAsInternalPort Kayıt defteri anahtarı temelde çalışmaz, çünkü bağlantı noktaları AHCI için varsayılan Microsoft sürücüsü tarafından yönetilmez. Bağırsaklarım ki, Microsoft bu sürücülerin yapılandırma değerlerini Windows 8’de değiştirdiğini söylüyor.

Yanıtlar:


3

analiz

Aynı donanıma sahip değilim ve Windows 8.x kullanmıyorum, bu yüzden sağlayacağım bazı statik analiz .

Teller

İlk başta 64-bit'i taradım. mvs91xx.dll Strings yardımcı programını kullanarak kütüphane dosyası.

Dizeler, aktardığınız dosyayı yalnızca 3 veya daha fazla UNICODE (veya ASCII) karakter uzunluğunda olan UNICODE (veya ASCII) dizeleri için tarar.

Kaynak: Teller

İşte tam çıktı:

!This program cannot be run in DOS mode.
Rich
.text
`.data
.pdata
@.rsrc
@.reloc
EEE
('8PW
700PP
```hhh
xppwpp
SeShutdownPrivilege
Change Cahce Module Policy
You must restart your computer before the new settings will take effect.
 Do you want to restart your computer now?
RSDS
d:\project\2013_10\magni_svn\windows\win\sys\amd64\mv91xxm.pdb
%f&
B@H
L$ H
D$ `
D$(H
D$$
D$HH
D$0f
D$XH
\$P
s I
NtH
(tL
t?3
\$0H
t$8H
D$PD
D$1
D$3A
T$0A
8M;
t.H
|$8H+
T$0H
tJH
0t4H
|$8H
L$0
D$(
D$ 
|$0H
D$0D
L$(H
D$ 
L$PH3
\$`I
s I
d$X
d$P
!D$0
D$T
D$4
D$8
D$<
D$X
D$PH
D$PH
L$XH
d$(
d$ 
D$0A
D$4
D$0
D$<
L$X
D$0
d$ 
%L!
u'H
d$ 
d$ 
tUH
D$(
D$ 
L$0H3
\$XH
D$(
D$ 
D$4H
D$(H
D$@E3
D$4P
D$ 
D$4H
D$(H
D$0E3
D$4
D$ 
L$0
L$0
L$@
L$@
ATH
d$ 
t2M
d$ 
t$@H
0A\
VWATAUAVH
t7H
t!H
\$PH
l$XH
 A^A]A\_^
SVWH
\$ 
\$ 
uxH
D$ 
\$ 
t/L
D$ 
\$ 
D$ 
\$ 
uoE3
\$ E3
\$ H
\$ 
uaL
D$ 
\$ 
D$ 
\$ 
_^[
\$0H
t$8H
@SH
McP
A8H
HcH<H
9PE
f9Q
LcA<E3
(E;
t"M+
d$0
L$0
\$0
L$8D
\$8L3
\$@H
\$XE3
T$`H
L$X
D$PH
|$P
tAH
D$8
D$HH
D$0H
D$@H
D$(H
D$ L
L$PL
D$XH
T$`3
D$hH
D$p3
@UH
EP=csm
E0H
@UH
Ep=csm
E8H
@UH
E`=csm
EHH
@UH
=csm
E$H
@UH
E(=csm
E4H
@UH
E@=csm
ELH
@UH
EX=csm
EhH
@UH
Ex=csm
@UH
@UH
pd 
pd 
strchr
atol
_XcptFilter
malloc
_initterm
free
_amsg_exit
__C_specific_handler
msvcrt.dll
SetupDiOpenDevRegKey
SETUPAPI.dll
HeapAlloc
GetCurrentProcess
HeapFree
GetProcessHeap
GetLastError
DisableThreadLibraryCalls
OutputDebugStringA
CloseHandle
LocalFree
Sleep
RtlVirtualUnwind
RtlLookupFunctionEntry
RtlCaptureContext
QueryPerformanceCounter
GetTickCount
GetCurrentThreadId
GetCurrentProcessId
GetSystemTimeAsFileTime
TerminateProcess
UnhandledExceptionFilter
SetUnhandledExceptionFilter
KERNEL32.dll
OpenProcessToken
RegSetValueExA
RegQueryValueExA
LookupPrivilegeValueA
AdjustTokenPrivileges
RegCloseKey
InitiateSystemShutdownExA
ADVAPI32.dll
EnableWindow
SetWindowLongPtrA
GetDlgItem
MessageBoxA
GetFocus
SendDlgItemMessageA
GetWindowLongPtrA
USER32.dll
DestroyPropertySheetPage
CreatePropertySheetPageA
COMCTL32.dll
MVCOINST.dll
ESATAPortPropPageProvider
N@ 
kU'9
&D(
HMXB
9;5
?q=
?Zd;
?3=
?/L[
S;uD
?$#
;1a
z?aUY
D?$?
*?}
d|F
U>c{
#Tw
zc%C1
.:3q
,%I
-64OS
NKeb
eSATAport
MatchingDeviceId
eSATAportCount
DriverPolicySet
0123
wwwwwwwwwwwwwwwwwwwwww
wwwwwwwwwwwwwwwwwwwwww
www
wwww
wwwwwwwwwww}
wwwwwwww
wwwwwwwwwwwwww
wwwwwwwwwwwwww
wwwwwww}
wwww
wwwwwww}x
}wwwwwww}
wwww
wXk
qN]
tno
<sa
_`__``_``a`_`_aaaa`
     !        !     
i\\\\\\\\[\\\\\\\[\\a///2/////////2/22///
i\^
da2/
BB<<<<777111,,,*/
i\^
na2/
RFGHJCDKLL=>>88+/
h\^
}qq
[`//"QRT$
1=>>8+2
j\^
sccy
\`2/"OQ
$%=>>*2
i\^
sccy
\a//"NO
66**
L=>(2
i\]~
rccy
\a//"WN
FTHI*++LL=(/
h\^|~
rccs
\`//'VW
RFTHJCDKLL)2
j\]x|~
rccp~
\_//'VV
QRFTHJCDKL(/
i\^wx|~pcccccb
\`//'UV
OQRFGHJCDK(/
i\]wwx|pcckrss
\a//0UU
NOQRSGHIJD(2
i\^vwwxpccr
\`///YU
WNOQRFTHIJ)/
j\]uvwwmccp
\`//9YY
VWNO5;*THI)2
j\]uuvwmccp
\a//9XY
VVWN
STH)2
i\]ouuvmccbbbbbs
\a//@XX0
RST)/
i\]oouulefffggkt
\`/2@ZXX:
;NPRF(/
h\]loouuvwwx|~
\_2/@ZZXXYYUUUVWNOPQ(/
i\]ffggkkqqqzzz{{{
\_//?MMMMEEEAAAA3345
i\\\\\\\\\\\\\\\\\\\`//&&&&&--&&&&-&&&&./
illlllllll
##"
nPh
_s-
>w+
3Zz
]ZZZZZZZZZZZWV-1---------1-
mV2.AHBC5D;<<(-
kV2.P:#
!!+=>(-
kV239
$=(-
{co
kV73@
GJ'
0<(-
^e~
xco
kV78@
OGJKD;*1
]d}~wca``
kV78F
OOGJKD*1
\dy}rch{
kV7EF
MNOGIK/1
\buyrcj
kV?EE
RR.#:I/-
[btuncfssv
kV?LE
&%"
9G41
]_ptqhhhjj
kV?LTE
@NO41
]_mptuy}~
lV6SUTTQQQRRN91
[WXXXYXXYXYYWV-)))))))))),,
uVh
_s-
F5><<==.
ECK2LPV.
E@J3MOU.
D?H31IT.
-,%
B;G1JKS.(
E9A011R.&#
E/4678:."&' 
NQWhX^XXXe
rpq
t}~]
djklnoc
sgba`_f|
ux||||
#  #  # 
#! # 
#! #! # 
#  # 
#gdc 
#  #! # 
#  #  # 
#  # 
#  # 
#  #  #  #
! #
t5! #! #
lR! #
.Bu
mS! #
<Bv
lR! #
lR! #
d0_
lR! #
b0`
lR! #
`0_
lR! #
]1`
lR! #
[0_
lR! #
V0_
lR! #
U0_
lR! #
O0_
lR! #
M0_
lR! #
K0_
lR! #
F0_
lR! #
lR! #
lS! #
lR! #
lR! #
b;wi=ua=ua=ua=ua<u`=ua=ua<u`9d[qikunntnntnnunntnnunnunntpwyr
cVgdc
y]q
nkgdc
wYl
gdc
rP`
gdc
oJY
gdc
y|~$s
hJ[
rcgdc
4@egdc
5@fgdc
5@fgdc
4@egdc
5Afgdc
4@egdc
5@fgdc
5@fgdc
4@egdc
4@egdc
5@fgdc
5Afgdc
5@egdc
5@fgdc
BL@BM@BM@BL@BL@BL@BL@BM@CMABM@BL@BL@ 
#w\Rv\Rw]Sw\Rw\Rw\Sv\Rv\Rw\Rw]Sw]Sw]StYQ1-/ 
_s-
t6REE 
F_s-
t6RDD 
<_s-
t5REE 
=^s,
t5RDE 
=_s-
u6RDD 
y0_
=_s-
=REE 
t0_
=^s,
=REE 
j0_
=_s-
=SEE 
f0_
=_s-
=REE 
[0_
>w+^
=^s,
=REE 
=_s-
=SEE 
<^s,
=SEE 
_s-
;tcc 
3ZzWo
vWj
pM\
XBe
4@e
?Ru
CXz
CXz
CYz
CXz
BXz
CXz
CY{
=_s-
|Xfdc
_s-
Zgec
_s-
Zfdc
_s-
Zfdc
y=z
^s-
Zfdc
^<y
_s-
Yfdc
>_s-
vVh
7<K
8<K
7<K
8<K
Policies
MS Shell Dlg
This setting enables driver caching to improve disk performance. This setting will be ignored and un-checked if enabled safely remove disk
Enable driver cache mode.
Note:
The setting will not take effect until you restart system
This setting enables remove disk safely. To disconnect disk from controller, click the Safely Remove Hardware icon in the taskbar notification area.
Enable safely remove disk.
VS_VERSION_INFO
StringFileInfo
040904e4
CompanyName
<Marvell>
FileDescription
Coinstaller
FileVersion
1.0.0.2
InternalName
hotplug.exe
LegalCopyright
2009 (c) <Marvell>.  All rights reserved.
OriginalFilename
hotplug.exe
ProductName
driver feature policy
ProductVersion
1.0.0.2
VarFileInfo
Translation

Şaşırtıcı olmayan bir şekilde, sonuç çöp ücretsiz değil. Sadece en önemli bitleri vurgulayacağım.

Kütüphane bilgisi

Telif hakkı bilgileri 2009'dan beri güncellenmese de, dosya en son Ekim 2013'te zaman damgasına göre değiştirildi. Bu dosyaya gömülü derleme dizini tarafından onaylanmış görünüyor:

d:\project\2013_10\magni_svn\windows\win\sys\amd64\mv91xxm.pdb

.pdb dosya uzantısı Program Veri Tabanı , hata ayıklama bilgilerini depolayan özel bir Microsoft biçimidir. Aslında bir de var msvcrt.dll string, kütüphanenin bazı versiyonlarını kullanarak derlendiği anlamına gelir. Microsoft Visual C ++ .

Yan not olarak, kullandıkları (d) Apache Subversion yazılım versiyonlama ve revizyon kontrol sistemi olarak.

Windows 8.x uyumluluğu

Kütüphane Ekim 2013'te güncellendiğinden, Windows 8 ve muhtemelen Windows 8.1 ile de uyum sağlayacağını düşünmek mantıklıdır. Kontrol etmek mvs91xx.cat katalog dosyası ile ilgili detaylar mvs91xx.dll kütüphane dosyası:

Tag                     9B1349794EE18ECCCBBD7F38FEEA9D44CC42746E
Thumbprint algorithm    sha1
Thumbprint              9b 13 49 79 4e e1 8e cc cb bd 7f 38 fe ea 9d 44 cc 42 74 6e
OSAttr                  2:6.1,2:6.2,2:6.3
File                    mvs91xx.dll

OSAttr:2:6.0

OSAttr öznitelik, imza gereksinimleri ile uyumlu olan hedef Windows sürümünü belirtir. sürücü paketi . Özniteliğin değeri aşağıdakileri belirtir:

  • Değer 2 Katalog dosyasının Windows işletim sisteminin NT tabanlı sürümleriyle uyumlu olduğunu belirtir.
  • Değer 6.0 Katalog dosyasının Windows Vista ile uyumlu olduğunu belirtir.

Not Eğer sürücü paketi Birden çok Windows sürümüyle uyumluysa, ayrı kullanmanız gerekir. CATATTR belirtmek için seçenekler OSAttr Her Windows sürümü için öznitelik.

Kaynak: PnP Olmayan Bir Sürücü Paketi için Katalog Dosyası Oluşturma

Bu durumda OSAttr değer üç NT tabanlı Windows sürümü içerir: Windows 7 ( 6.1 ), Windows 8 ( 6.2 ) ve Windows 8.1 ( 6.3 ). Bu, sürücü paketinin Windows 8 / 8.1 ile, en azından kağıda uyumlu olduğu anlamına gelir; hala Politikalar bölmesi Windows 8.x'te kullanılamaz. İşletim sistemi veya kütüphane dosyası suçlu olup olmadığını bilmiyorum.

Kayıt defteri işlevleri

Sürücü ayarları genellikle kayıt defterinde saklanır ve kütüphane bazı Windows’lar içerir. kayıt işlevleri :

RegSetValueExA
RegQueryValueExA
RegCloseKey

Politika ile ilgili dizgileri aramakla karşılaştım DriverPolicySet. Kütüphaneyi tersine mühendislik yaparak, kayıt fonksiyonlarının gerçekten kullanıldığını ve yukarıda belirtilen dizginin okunan ya da yazılmış kayıt defteri yolunun bir parçası olduğunu onayladım.


Manuel politika ayarlaması

Aranıyor "DriverPolicySet" İnternette çok az sayıda, ancak ilginç sonuçlar geldi. Özellikle bir Japon bir gemide yayın ve bir rusça bir forumda cevap . Bilgi parçalarını çevirip bir araya getirerek, kelimenin tam anlamıyla daha net bir görüntü elde ettim.

DriverPolicySet

DriverPolicySet değer bir dizedir ( REG_SZ ) hangi değerlere ayarlanabilir:

  • 0 - Tüm politikaları devre dışı bırakın.
  • 1 - Yalnızca önbelleğe almayı etkinleştirin.
  • 2 - Yalnızca güvenli bir şekilde çıkarmayı etkinleştirin.
  • 3 - Hem önbelleğe almayı hem de güvenli bir şekilde kaldırmayı etkinleştirin.

Genellikle aşağıdaki kayıt defteri anahtarında depolanır:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E97B-E325-11CE-BFC1-08002BE10318}\0001

Uyarılar

  • Kayıt defteri değeri orada değilse, kendiniz oluşturmanız gerekir.

  • Değişiklikleri uygulamak için sistemi yeniden başlatmanız gerekir.

  • {4D36E97B-E325-11CE-BFC1-08002BE10318} o cihaz sınıfı GUID SCSI ve RAID denetleyicilerine atandı. İçinde tanımlanır mvs91xx.inf dosya.

  • 0001 son kısım mevcut kontrolör sayısına bağlı olarak biraz farklı olabilir. Örneğin, olabilir 0000veya 0002yerine.


İŞE YARADI. Tekrar ediyorum, çalıştı.
DarkGhostHunter

@DarkGhostHunter Bunu duyduğuma sevindim. Kayıt değerinin tam olarak nerede saklandığını belirtebilir misiniz?
and31415

Temel olarak, "DriverPolicySet" eklemek ve "1" e ayarlamak, sürücünün diskin dahili bağlantı noktalarına sahip olmasını sağladı - bu nedenle, diğer değerlere değiştirmek istenen özellikleri etkinleştirmeli veya devre dışı bırakmalıdır. Daha önce o reg anahtarına gelmiştim, ama önemli olmasa da. Galiba bazı Rusça ve Japonca forumları gördüm, ama o kadar kazıma gelmedim. Tebrikler, ödül aldınız. Ve Marvell kullanıcılarına çok iyi bilinen bir sorunu düzeltti. Şerefe!
DarkGhostHunter

@DarkGhostHunter Böylece elle eklemek zorunda kaldı DriverPolicySet değeri, yani zaten orada değildi? Ayrıca, kayıt defteri yolu hangisiydi? Kayıt defteri değerini el ile düzenlemek zorunda olmanıza rağmen, sürücü paketi gerçekten Windows 8.x ile uyumlu görünüyor.
and31415

En başından beri orada değildi, bu yüzden muhtemelen Marvell oradaki işareti kaçırdı. Kayıt defteri yolu aynıydı, ancak bitti 0002 (Ağaç denetleyicilerim var). Gerçekten de, sürücüler paketi uyumludur, bu nedenle "Politikalar" sekmesi, tüm amacı ihlal eden tek özelliktir. mvx91xx.dll.
DarkGhostHunter

2

açıklamalar

Söylediğiniz gibi, sürücüleri Windows 8'e aktardıklarında güncellemediler. Bu da mümkündür (muhtemelen muhtemelen ) onlar ki kaldırmayı seçti Windows 8 sürücüsünden bir hata ve / veya Windows 8 ile uyumsuzluk nedeniyle ve / veya Windows 8’in farklı arayüz tasarımı nedeniyle (normal olarak bildirim alanı simgesini varsayılan olarak görmezsiniz).

Çözüm

En iyisi, basitçe temas Marvell ve onlara sekmenin eksik olduğunu bildirin ve düzeltmek için sürücüyü güncellemelerini isteyin. Ya bunu yapacaklar ya da özellikle neden çıkardıklarını açıklayacaklar.

İşle etrafında

Bu arada, sayfanın işlevselliğine ihtiyacınız varsa, mevcut olduğu bir sisteme erişiminiz varsa tam olarak hangi kayıt defteri girişlerinin ayarlandığını belirleyebilirsiniz (örneğin, Windows 7'de):

  1. Koşmak İşlem İzleyicisi
  2. Kayıt defteri dışındaki her şeyi filtrelemek için ayarlayın
  3. Yakalamayı durdur ve sonuçları temizle
  4. Politikalar çıkıntı
  5. Onay kutusunu değiştir
  6. ProcMon'a geçin ve çekime başlayın
  7. Sekmeye hızla geri dön
  8. Click [Apply]
  9. ProcMon'a hızla geri dönün ve çekimi durdurun
  10. İlgili bulmak için kayıt defteri değişikliklerine bakın.

Alternatif Geçici Çözüm

Artık uyumlu bir sisteme erişiminiz yoksa (örneğin, sisteminize geçici bir Windows 7 kopyası yükleyemezseniz), alternatif bir deneyebilirsiniz (ve satıcı bağımsız ) üzerinde belirtilen çözüm sayfa Sorunuzda yayınladığınız ekran görüntüsünü bulduğunuz yerde (gönderen kişi Windows 8’de test etmedi, ancak Marvell’den bir yanıt beklemiyorsanız çekime değer)

  1. Şu yöne rotayı ayarla HKLM\SYSTEM\CurrentControlSet\services\msahci
  2. Adlı bir anahtar oluşturun Controller0
  3. Adlı bir alt anahtar oluşturun Channel0
  4. Adlı bir DWORD oluşturun TreatAsInternalPort ve ayarla 1
  5. İçin tekrarla Channel1, Channel2, vb. ve gerekirse Controller1, vb.
  6. Yeniden Başlatma

İşte o dizindeki kişilerin kendileri için çalıştığı varsayılan ayarları içeren bir kayıt defteri betiği:

REGEDIT4
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msahci\Controller0\Channel0]
"TreatAsInternalPort"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msahci\Controller0\Channel1]
"TreatAsInternalPort"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msahci\Controller0\Channel2]
"TreatAsInternalPort"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msahci\Controller0\Channel3]
"TreatAsInternalPort"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msahci\Controller0\Channel4]
"TreatAsInternalPort"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\msahci\Controller0\Channel5]
"TreatAsInternalPort"=dword:00000001

Alternatif geçici çözümü deneyeceğim. Bu arada, işte posta Marvell'e gidiyor.
DarkGhostHunter
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.