Das folgende Beispiel kopiert eine Dialogfeldressource aus einer ausführbaren Datei, HAND.EXE, zum anderen Fuß.EXE, indem Sie die folgenden Schritte:
Der folgende Code implementiert diese Schritte.
HRSRC hResLoad; / / handle für geladene Ressource HANDLE hExe; / / handle auf bestehende.EXE-Datei HRSRC hRes; / / Handle/Ptr. res.-info. in hExe HANDLE hUpdateRes; / / update Ressource Handle Char * LpResLock; / / Zeiger auf Resource Daten BOOL Ergebnis;
/ / Lade die.EXE-Datei, die im Dialogfeld enthält, die Sie kopieren möchten.
hExe = LoadLibrary("hand.exe");
Wenn (hExe == NULL) {ErrorHandler ("Could not load Exe.");
} / / Suchen Sie die Dialogfeldressource in der.EXE-Datei.
hRes = FindResource (hExe, "AboutBox", RT_DIALOG);
Wenn (hRes == NULL) {ErrorHandler ("konnte nicht gefunden im Dialogfeld werden.");
} / / Das Dialogfeld in globalen Speicher laden.
hResLoad = LoadResource (hExe, hRes);
Wenn (hResLoad == NULL) {ErrorHandler ("Could not load Dialogfeld.");
} / / Das Dialogfeld in globalen Speicher sperren.
LpResLock = LockResource(hRes);
Wenn (LpResLock == NULL) {ErrorHandler ("konnte keine Sperre Dialogfeld.");
} / / Öffnen Sie die Datei, die Sie die Dialogfeldressource hinzufügen möchten.
hUpdateRes = BeginUpdateResource ("foot.exe", FALSE);
Wenn (hUpdateRes == NULL) {ErrorHandler ("konnte Datei nicht geöffnet zum Schreiben.");
} / / Die Dialogfeldressource zur Updateliste hinzufügen.
Ergebnis = UpdateResource (hUpdateRes, / / Ressource handle RT_DIALOG, / / Änderung der Dialogfeldressource "AboutBox", / / Dialogfeld name MAKELANGID (LANG_NEUTRAL, SUBLANG_NEUTRAL), / / neutrale Sprache
LpResLock, / / Ptr Ressource Info SizeofResource (hExe, hRes)); / / Größe der Ressource Info.
Wenn (Ergebnis == FALSE) {ErrorHandler ("könnte nicht hinzufügen Ressource.");
} / / Write-Änderungen zu Fuß.EXE und schließen Sie es dann.
If (!.EndUpdateResource (hUpdateRes, FALSE)) {ErrorHandler ("konnte nicht schreiben Änderungen an der Datei.");
} / / Clean up.
If (!.FreeLibrary(hExe)) {ErrorHandler ("konnte nicht kostenlose ausführbare Datei.");
}