acceso a disco desde Visual C++ 2005

29/09/2004 - 10:52 por Jordi Maycas | Informe spam
Hola, necesitaria alguna rutina para poder leer y escribir en disco a nivel
de sector... tengo una pequeña aplicacion que me genera codigo arrancable
(mbr..) y me gustaria reescribirla toda, desde VC++ 2005 Express, para
hacerlo mas bonito.

Alguna idea?

Preguntas similare

Leer las respuestas

#1 Tomas Restrepo \(MVP\)
03/10/2004 - 18:49 | Informe spam
Jordi,

Hola, necesitaria alguna rutina para poder leer y escribir en disco a


nivel
de sector... tengo una pequeña aplicacion que me genera codigo arrancable
(mbr..) y me gustaria reescribirla toda, desde VC++ 2005 Express, para
hacerlo mas bonito.



Para esto realmente necesitaras el Platform SDK (que no es incluido con VC++
express, pero que puedes bajar gratis de MSDN), y usar un método como los
delineados en los siguientes artículos:

http://support.microsoft.com/defaul...-us;262347
http://support.microsoft.com/defaul...-us;100027

(el primero describe como hacerlo en Win95 y derivados... en derivados de
NT, ten en cuenta el segundo articulo y usa ReadFile/WriteFile despues de
bloquear el volumen... nota que no puedes tocar asi normalmente el volumen
del sistema).

Tomas Restrepo

Respuesta Responder a este mensaje
#2 Jordi Maycas
04/10/2004 - 13:19 | Informe spam
si pero esto va con CreateFile, o sea que seria para crear un fichero, pero
yo lo quiero es acceder al MBR y poner ahi codigo.
"Tomas Restrepo (MVP)" escribió en el mensaje
news:
Jordi,

Hola, necesitaria alguna rutina para poder leer y escribir en disco a


nivel
de sector... tengo una pequeña aplicacion que me genera codigo arrancable
(mbr..) y me gustaria reescribirla toda, desde VC++ 2005 Express, para
hacerlo mas bonito.



Para esto realmente necesitaras el Platform SDK (que no es incluido con
VC++
express, pero que puedes bajar gratis de MSDN), y usar un método como los
delineados en los siguientes artículos:

http://support.microsoft.com/defaul...-us;262347
http://support.microsoft.com/defaul...-us;100027

(el primero describe como hacerlo en Win95 y derivados... en derivados de
NT, ten en cuenta el segundo articulo y usa ReadFile/WriteFile despues de
bloquear el volumen... nota que no puedes tocar asi normalmente el volumen
del sistema).

Tomas Restrepo



Respuesta Responder a este mensaje
#3 Tomas Restrepo \(MVP\)
05/10/2004 - 01:42 | Informe spam
Jordi,

si pero esto va con CreateFile, o sea que seria para crear un fichero,


pero
yo lo quiero es acceder al MBR y poner ahi codigo.



CreateFile() no abre un archivo,abre lo que le digas... puedes usarlo para
abrir volumenes, discos fisicos, archivos, puertos COM, etc. Todo depende
simplemente de la sintaxis con que pases la ruta (la razon de que esto sea
asi es como funciona todo el subsistema de IO del Nucleo de NT y la
existencia de un espacio de nombres comunes...)


Tomas Restrepo

Respuesta Responder a este mensaje
#4 Jordi Maycas
05/10/2004 - 09:11 | Informe spam
e incluso abriria... el termino no seria este.. un sector de un disco... te
explico, quiero algo como:

readsect(unidad,cara, pista, sector);
writesec(unidad, cara, pista, sector);

con funciones BIOS esta tirado, el problema es hacerlo desde vc++ 2005, si
es q se puede.

"Tomas Restrepo (MVP)" escribió en el mensaje
news:
Jordi,

si pero esto va con CreateFile, o sea que seria para crear un fichero,


pero
yo lo quiero es acceder al MBR y poner ahi codigo.



CreateFile() no abre un archivo,abre lo que le digas... puedes usarlo para
abrir volumenes, discos fisicos, archivos, puertos COM, etc. Todo depende
simplemente de la sintaxis con que pases la ruta (la razon de que esto sea
asi es como funciona todo el subsistema de IO del Nucleo de NT y la
existencia de un espacio de nombres comunes...)


Tomas Restrepo



Respuesta Responder a este mensaje
#5 Jordi Maycas
05/10/2004 - 12:31 | Informe spam
he visto esto:
http://www.codeguru.com/Cpp/W-P/sys...php/c5765/

pero no hay algo mas claro?

"Jordi Maycas" escribió en el mensaje
news:%
e incluso abriria... el termino no seria este.. un sector de un disco... te
explico, quiero algo como:

readsect(unidad,cara, pista, sector);
writesec(unidad, cara, pista, sector);

con funciones BIOS esta tirado, el problema es hacerlo desde vc++ 2005, si
es q se puede.

"Tomas Restrepo (MVP)" escribió en el mensaje
news:
Jordi,

si pero esto va con CreateFile, o sea que seria para crear un fichero,


pero
yo lo quiero es acceder al MBR y poner ahi codigo.



CreateFile() no abre un archivo,abre lo que le digas... puedes usarlo
para
abrir volumenes, discos fisicos, archivos, puertos COM, etc. Todo depende
simplemente de la sintaxis con que pases la ruta (la razon de que esto
sea
asi es como funciona todo el subsistema de IO del Nucleo de NT y la
existencia de un espacio de nombres comunes...)


Tomas Restrepo







Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida