2 important Types of error and alert



1º - Duplication of property. , at the moment that and generated unit in delphi . which of them this correct ? I can modify one of them withanother name Sizexxx type?

INeroDirectoryEntryContainerDisp = dispinterface
property Size[lHiWordSize: Integer]: Integer writeonly dispid 10;
property Priority: Integer writeonly dispid 11;
property DirOrder: Integer writeonly dispid 12;
property DataStartSec: Integer writeonly dispid 13;
property FixedDataStartSec: Integer writeonly dispid 14;
property FileNumber: Integer writeonly dispid 15;
property id: Integer writeonly dispid 16;
property Flags[bEnable: WordBool]: Integer writeonly dispid 17;
property Name: WideString readonly dispid 1;
property SubDirectory: INeroDirectory readonly dispid 2;
property Content[var pContent: INeroFileContent]: NERO_ENTRY_ERROR readonly dispid 3;
property SourceFilePath: WideString readonly dispid 4;
property Size[var plHiWordSize: Integer]: HResult readonly dispid 5;
property FilePriority: Integer readonly dispid 6;

Other examples :
[Error] NEROLib_TLB.pas(1894): Identifier redeclared: ‘Size’
[Error] NEROLib_TLB.pas(1896): Identifier redeclared: ‘DirOrder’
[Error] NEROLib_TLB.pas(1897): Identifier redeclared: ‘id’
[Error] NEROLib_TLB.pas(1898): Identifier redeclared: ‘DataStartSec’

2º - Unsafe type, Unsafe code, Unsafe typecast , … this can malfunctioning my application ?

Other examples :

[Warning] NEROLib_TLB.pas(3772): Unsafe type ‘LicenseKey: Pointer’
[Warning] NEROLib_TLB.pas(3775): Unsafe code ‘@ operator’
[Warning] NEROLib_TLB.pas(3842): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(3844): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(3846): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(3852): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(3854): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(3856): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(3858): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(3865): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(3866): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(3873): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(3874): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(3876): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(3878): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(3881): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(3882): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(3883): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(3884): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(4114): Unsafe type ‘LicenseKey: Pointer’
[Warning] NEROLib_TLB.pas(4117): Unsafe code ‘@ operator’
[Warning] NEROLib_TLB.pas(4278): Unsafe type ‘LicenseKey: Pointer’
[Warning] NEROLib_TLB.pas(4281): Unsafe code ‘@ operator’
[Warning] NEROLib_TLB.pas(4454): Unsafe type ‘LicenseKey: Pointer’
[Warning] NEROLib_TLB.pas(4457): Unsafe code ‘@ operator’
[Warning] NEROLib_TLB.pas(4598): Unsafe type ‘LicenseKey: Pointer’
[Warning] NEROLib_TLB.pas(4601): Unsafe code ‘@ operator’
[Warning] NEROLib_TLB.pas(5038): Unsafe type ‘LicenseKey: Pointer’
[Warning] NEROLib_TLB.pas(5041): Unsafe code ‘@ operator’
[Warning] NEROLib_TLB.pas(5202): Unsafe type ‘LicenseKey: Pointer’
[Warning] NEROLib_TLB.pas(5205): Unsafe code ‘@ operator’
[Warning] NEROLib_TLB.pas(5273): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(5274): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(5275): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(5319): Unsafe type ‘LicenseKey: Pointer’
[Warning] NEROLib_TLB.pas(5322): Unsafe code ‘@ operator’
[Warning] NEROLib_TLB.pas(5390): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(5391): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(5393): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(5395): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(5615): Unsafe type ‘LicenseKey: Pointer’
[Warning] NEROLib_TLB.pas(5618): Unsafe code ‘@ operator’
[Warning] NEROLib_TLB.pas(5686): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(5687): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(5689): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(5691): Unsafe typecast of ‘OleVariant’ to ‘TVarData’
[Warning] NEROLib_TLB.pas(5911): Unsafe type ‘LicenseKey: Pointer’
[Warning] NEROLib_TLB.pas(5914): Unsafe code ‘@ operator’
[Warning] NEROLib_TLB.pas(6078): Unsafe type ‘LicenseKey: Pointer’
[Warning] NEROLib_TLB.pas(6081): Unsafe code ‘@ operator’
[Warning] NEROLib_TLB.pas(6195): Unsafe type ‘LicenseKey: Pointer’
[Warning] NEROLib_TLB.pas(6198): Unsafe code ‘@ operator’
[Warning] NEROLib_TLB.pas(6402): Unsafe type ‘LicenseKey: Pointer’
[Warning] NEROLib_TLB.pas(6405): Unsafe code ‘@ operator’


Part 1: NeroCOM is following weird COM guidelines, I hope in next version they will correct the problem. Curently, just rename all these foru variables, writeonly or readonly from let’s say Size to SizeR and it should work.
Part 2: You are getting these warnings becuase You have turned on warnings for .NET compatibility in Delphi 7. In Project-Options-Compiler messages turn off last three Unsafe messages alert and it will work.
Good luck and best regards,