Changer l'IDE de mon disque dur

05/07 à 00:28Bonjour,
je viens de renouveler mon ordinateur et pour certain logiciels, j'aurai besoin de remettre le même code IDE que celui de mon ancien DD sur le nouveau.
je l'avais déjà fait il y a quelques années suite à un post sur ce forum, mais je n'ai plus mes posts d'il y a é ou " ans (dommage)
quelqu'un pourrait il me rappeler comment faire, et aussi, à savoir si l'IDE d'un ancien DD en PATA est utilisable sur un nouveau DD en SATA ?
Merci d'avance.


----------
Les hommes construisent trop de murs et pas assez de ponts.
image



05/07 à 14:25Bonjour,

Cette solution peut-être que j'avais donné ?

Disque non reconnu;
Si vous devez déplacer un disque dynamique vers un autre ordinateur gérant les disques dynamiques, l'ordinateur le détectera en tant que disque étranger tant que la base de données des disques dynamiques ne sera pas à jour. Pour ce faire, lancez l'outil " Gestion des disques ". Faites un clic droit sur le numéro d' objet correspondant au disque étranger puis sélectionnez " Importer des disques étrangers ".

Pour l'outil gestion des disques > panneau de configuration > Outils d'administration > Gestion de l'ordinateur > à gauche tu as gestion des disques.

Je ne comprends pas ta question sur IDE en Pata et Sata.
Ce n'est pas la même technologie, le cablage est tout autre.

@+


----------
C'est pas toujours facile !
[URL=http://www.casimages.com]image[/URL]


Changer l'IDE de mon disque dur
05/07 à 22:13Bonjour,

Non J_D, mon disque est bien reconnu avec sa lettre de lecteur, c'est le N° d'identification de mon DD que je veux pouvoir changer.
celui ci est donné par Windows d'une manière tout à fait aléatoire, et certaine protections de logiciel font que, si ce n'est pas ce N° qu'il retrouve, il n'acceptent pas de refonctionner.
si quelqu'un sait ??? a moins qu'il y ait possibilité de retrouver les posts écrits il y a quelques années sur ce site, mais j'en doute.


----------
Les hommes construisent trop de murs et pas assez de ponts.
image


  • quick_
05/07 à 22:41Bonjour,

Oui, tu peux. Dans ton espace membre, en cliquant sur le titre "Mes participations aux forums", ça t'ouvre 8 ou 9 pages de discussions auxquelles tu as participé.

Tu peux aussi affiner tes recherches sur Memo en te servant de Google, à condition de te souvenir de quelques mots-clés employés dans la discussion que tu recherches (genre "jppcp", "DD", "IDE", etc.)
Il suffit de taper dans Google : jppcp ide dd site:memoclic.com (par exemple).

06/07 à 00:21Bonjour,

Une possibilité, mais surtout faire très attention(!)

Uniquement pour NT/2000/XP

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
const TailleSecteur=512; //Taille supposée en octets, d'un secteur
type
TDump=array[0..TailleSecteur-1] of byte;

partial_boot_sector_info=packed record
Fs:string; // Systeme de fichiers
FsOffs:DWORD; // offset du nom du Systeme de fichiers dans le secteur boot sector
SerialOffs:DWORD; // offset du nom du numéro de série de fichiers dans le secteur boot sector
end;

TForm1 = class(TForm)
Memo1: TMemo;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Déclarations privées }
public
{ Déclarations publiques }
end;

var
Form1: TForm1;

implementation
{$R *.dfm}

{ TForm1 }

//lecture d'un secteur du disque
procedure ReadSector(drive:char;logicalsector:DWORD;var Dump:TDump);
var hDevice:THandle;
bytesread:DWord;
begin
FillChar(Dump,TailleSecteur,0);
hDevice:= CreateFile(PChar('\\.\'+drive+':'),
GENERIC_READ, FILE_SHARE_READ or FILE_SHARE_WRITE,
nil, OPEN_EXISTING, 0, 0);

if (hDevice = INVALID_HANDLE_VALUE)
then begin
CloseHandle(hDevice);
exit;
end;

// Setting the pointer to point to the start of the sector we want to read ..
SetFilePointer (hDevice,(logicalsector*TailleSecteur), nil, FILE_BEGIN);

ReadFile (hDevice, Dump, TailleSecteur, bytesread, nil);
CloseHandle(hDevice);
end;

procedure WriteSector(drive: char; logicalsector: DWORD;
Dump: TDump);
var hDevice:THandle;
byteswritten:DWord;
begin
hDevice:= CreateFile(PChar('\\.\'+drive+':'),
GENERIC_WRITE, FILE_SHARE_READ or FILE_SHARE_WRITE,
nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);

if (hDevice = INVALID_HANDLE_VALUE)
then begin
CloseHandle(hDevice);
exit;
end;

// Setting the pointer to point to the start of the sector we want to read ..
SetFilePointer (hDevice,(logicalsector*TailleSecteur), nil, FILE_BEGIN);

WriteFile (hDevice, Dump, 512, byteswritten, nil);
CloseHandle(hDevice);
end;

procedure ChangeNumSerie(drive: char; NewSerial: string;Rapport:TMemo=nil);
const max_pbsi = 3;
pbsi:array[0..max_pbsi-1] of partial_boot_sector_info
=((Fs:'FAT32'; FsOffs:$52; SerialOffs:$43),
(Fs:'FAT'; FsOffs:$36; SerialOffs:$27),
(Fs:'NTFS'; FsOffs:$03; SerialOffs:$48));
var Dump:TDump;
i,j:integer;
trouve:boolean;
Serial,NSerial:String;
NSerie:array[0..3] of byte;
NSerieDWord:DWord;
begin
if NewSerial=''
then Serial:='1234-5678'
else Serial:=uppercase(NewSerial);

NSerial:='';
for i:=1 to length(NewSerial) do
if NewSerial[i] in ['0'..'9','A'..'F'] then NSerial:=NSerial+NewSerial[i];

if length(NSerial)<>8
then begin
ShowMessage('Problème sur lenuméro de série : doit avoir 8 caractères héxadécimaux');
exit;
end;

NSerieDWord:=strtoint('$'+NSerial);
Move(NSerieDWord,NSerie,4); //Le nouveau numéro de série est prêt

ReadSector(drive,0,Dump); //Lit le boot record

if Assigned(Rapport) then
Rapport.Lines.add('Dump du secteur de boot');

for i:=0 to high(dump) do
if Assigned(Rapport) then
Rapport.Lines.add(inttostr(i)+' : '+IntToHex(Dump[i],2)+' '+chr(Dump[i]));

//On Cherche un secteur de boot valide
trouve:=false;
i:=0;
while ((i<max_pbsi) and (not trouve)) do
begin
trouve:=CompareMem(@pbsi[i].fs[1],@Dump[pbsi[i].FsOffs],length(pbsi[i].Fs));
if trouve
then if Assigned(Rapport)
then Rapport.Lines.add('Secteur de boot '+pbsi[i].fs+' valide trouve!')
else showmessage('Secteur de boot '+pbsi[i].fs+' valide trouve !')
else inc(i);
end;

if not trouve
then begin
if Assigned(Rapport)
then Rapport.Lines.add('Je ne sais pas changer le numéro de série sur ce système de fichier !')
else showmessage('Je ne sais pas changer le numéro de série sur ce système de fichier !');
exit;
end;
// afficher le numéro de serie
Serial:='';
for j:=3 downto 0 do
begin
Serial:=Serial+IntToHex(Dump[pbsi[i].SerialOffs+j],2);
if j=2 then Serial:=serial+'-';
end;

NSerial:='';
for j:=3 downto 0 do
begin
NSerial:=NSerial+IntToHex(NSerie[j],2);
if j=2 then NSerial:=Nserial+'-';
end;

if Assigned(Rapport)
then Rapport.Lines.add('Numéro de série actuel :'+Serial+' Nouveau num : '+Nserial)
else showmessage('Je ne sais pas changer le numéro de série sur ce système de fichier !');

if (MessageDlg('Etes-vous sur de vouloir changer le numéro de série ?', mtInformation, [mbYes, mbNo], 0) = mrNo) then exit;

//Copie du nouveau numéro de série dans le boot sector
for j:=0 to 3 do
Dump[pbsi[i].SerialOffs+j]:=NSerie[j];
WriteSector(drive,0,dump);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
ChangeNumSerie('E','1234-5678',memo1);
end;

C'est tout ce que j'ai en magasin [:)(] .


----------
C'est pas toujours facile !
[URL=http://www.casimages.com]image[/URL]


Changer l'IDE de mon disque dur
06/07 à 08:25Bonjour,

Merci quick, j'ai retrouvé tout mes posts, super, et pour la réponse à ce sujet, c'était là :
http://www.memoclic.com/forum/81083-peut-on-definir-le-ndegre-id-de-son-ordinateur/
Merci encore

Maintenant, ce N° d'ID est il du même genre entre un DD en PATA et un SATA ?


----------
Les hommes construisent trop de murs et pas assez de ponts.
image


06/07 à 08:49Bonjour,

ça à l'air d'avoir fonctionné sur le disque SATA, je n'ai plus qu'à réinstaller mes logiciel en espérant que cela fonctionne correctement.
merci encore


----------
Les hommes construisent trop de murs et pas assez de ponts.
image


Le post anonyme est désactivé.
Merci de vous identifier

« Forum technique (liste des messages)7 enregistrements / page 1/1

À la Une de MemoClic

Le saviez vous ? Vous pouvez installer cette bannière ↑ gratuitement sur votre site !