RemoveSharedDll
I'm using Appendix B shared dll management functions.
Since most of the shared dlls are self registering,
I think that a call to UnRegDll should be added in the remove section:
remove:
UnRegDll $R1
Delete /REBOOTOK $R1
instead of
remove:
Delete /REBOOTOK $R1