· RustDesk Team · Lançamento · 2 min de leitura
Como executar o Flutter 3.24 no Windows 7?
O Flutter deixou de oferecer suporte ao Windows 7 / 8 na versão 3.22; precisamos modificar o Flutter Engine.

Recentemente adotamos o Flutter 3.24.5 no RustDesk, que deixou de funcionar no Windows 7. Para resolver o problema, modificamos o Flutter Engine.
Solução para o Flutter 3.24.5 no Windows 7
Flutter e Dart anunciaram que Dart 3.3 e Flutter 3.19 seriam as últimas versões compatíveis com Windows 7 e 8. Para usar o Flutter 3.24.5, precisamos reverter algumas alterações do Dart.
Link: Anúncio oficial
1. Corrigir Platform.localHostname em ambientes chineses
O Dart usava gethostname, fazendo Platform.localHostname falhar nesses ambientes. Depois adotou GetHostNameW, disponível apenas a partir do Windows 8. Para o Windows 7, essa mudança deve ser revertida, embora isso afete Platform.localHostname em ambientes chineses.
Issue: Platform.localHostname fails on Chinese Windows
2. Restaurar o tratamento de registros de unwinding
O Dart tratava a ausência de RtlAddGrowableFunctionTable no Windows 7, mas essa compatibilidade foi removida. É necessário reverter o commit correspondente.
Commit: Remove Windows7 handling of unwinding records API
3. Corrigir links simbólicos relativos para diretórios
A correção do Dart alterou File::GetType usando PathCchCombineEx, disponível apenas a partir do Windows 8. Essa alteração também deve ser revertida.
Commit: Fix a bug where relative symlinks to directories did not work on Windows
Conclusão
Executar o Flutter 3.24.5 no Windows 7 exige reverter mudanças importantes do Dart. Isso afeta Platform.localHostname em ambientes chineses e links simbólicos relativos, mas é necessário para quem depende do Windows 7.
Veja a implementação em nosso CI e como aplicamos o motor modificado.



