Hola, en la segunda línea al intentar convertir de un objeto a una matriz de cadenas, muestra el error de tiempo de compilación como
"System :: String ^": una matriz nativa no puede contener este tipo administrado
"inicializando": no se puede convertir de "System :: String ^" a "System :: String ^ []"
código:
RegistryKey ^rk = Registry::LocalMachine->OpenSubKey("SOFTWARE\Microsoft\Microsoft SQLServer");
String ^instances[] = (String^)rk->GetValue("InstalledInstances");
Cómo arreglar esto .... Gracias por adelantado.
Respuestas
0 para la respuesta № 1Cambia la última línea a
String ^ instances = (String^)rk->GetValue("InstalledInstances");
(note la ausencia de corchetes). Si la clave contiene un multistring, use
array<String^>^ instances
= (array<String^>^)rk->GetValue("InstalledInstances");
Ver el Documentación para RegistryKey.GetValue para más información.
1 para la respuesta № 2
Usted declaró instances
como un tipo de matriz:
String ^instances[] = (String^)rk->GetValue("InstalledInstances");
En su lugar, declararlo como una cadena:
String ^instances = (String^)rk->GetValue("InstalledInstances");