Eher ungewöhnlich, dass sich die ID ändert. Über die ID "spricht" man als Programmierer in seinem Code ja auch an:
Code:
btnClose = 1001;
btnSave = 1002;
Das sich das
Handle ändert ist logisch, denn Windows vergibt bei jedem Programmstart neu. Was ja auch Sinn ergibt, denn Windows benötigt eine systemweit einmalige ID für das Control und das ist das
Handle, weil es sehr Wahrscheinlich ist, dass die Programmierer in ihren Anwendungen die Schaltfläche zum Schließen btnColse genannt haben. Deswegen kann deine Beobachtung, dass sich die Control-ID bei jedem Start anders ist, falsch ist.