Hallo Emil,
Zitat:
lStructSize := SizeOf(TOpenFileName);
Bist Du sicher, dass das so richtig ist? Ich habe weder nachgesehen noch es ausprobiert, aber möglicherweise ergibt SizeOf nur die Größe des Pointers auf den String. Sicherer wäre es IMO so:
lStructSize := Length(TOpenFileName) * SizeOf(Char);