

jesu
Members-
Content Count
40 -
Joined
-
Last visited
Community Reputation
3 Neutral-
Yes, Windows 11 Notepad screws files. This never happened in Windows 10 after many years using it. You open a file double-clicking it, edit it and just click save expecting that it respects your encoding. Sometimes it does, sometimes not. Sure, you can use Save as to be sure that it uses the encoding you want, but that was never neccessary before. Just to be clear, I'm not talking about Delphi files. The fact is that we need to restore these files without loosing time doing it by hand. I've used the table in this page to type the characters in my procedure: https://www.utf8-chartable.de/ where I see that Should I encode ka_AcentosMal in some other way?
-
Yes, the forum messed some characters like: Á -> c3 81 í -> c3 ad
-
Hello. Since I upgraded to WIndows 11 I've had some text files screwed. Unfortunately, we still need to use ANSI in some files but sometimes (likely by notepad) that is replaced with UTF8. I've created a procedure like this to restore them (I don't know it these codes will be messed in the forum): procedure TFprincipal.ArreglarAcentos; const ka_AcentosBien : array[1..14] of string = ( 'á', 'é', 'í', 'ó', 'ú', 'Á', 'É', 'Ó', 'Ú', 'ñ', 'Ñ', 'ü', 'Ü', 'Í' ); ka_AcentosMal : array[1..14] of string = ( 'á', 'é', 'Ã', 'ó', 'ú', 'Ã�', 'É', 'Ó', 'Ú', 'ñ', 'Ñ', 'ü', 'Ü', 'ÃŒ' ); var i: integer; vb_encontrado: boolean; begin vb_encontrado := false; for i := Low(ka_AcentosMal) to High(ka_AcentosMal) do begin if (pos(ka_AcentosMal[i], mystring) > 0) then begin // ProcDebug('encontrado: ' + ka_AcentosMal[i] + ' reemplazo: ' + ka_AcentosBien[i]); vb_encontrado := true; mystring := StringReplace(mystring, ka_AcentosMal[i], ka_AcentosBien[i], [rfReplaceAll]); end else begin // ProcDebug('no encontrado: ' + ka_AcentosMal[i]); end; end; end; This procedure seems to work well except for i uppercase accented, which in utf8 is c3 + 8d. It seems that Delphi does something special with character 8d and my search doesn't work. How should I do it? Thanks.
-
Thanks for all the suggestions. I have the feeling that VCL should somehow protect events that can recreate controls. Something like if Creating then ForceQueue incompatible operations
-
I don't know. I've used that piece of code for more than 20 years. Maybe Screen.Fonts didn't exist or it didn't return the same. Ok, I've reduced the program so anyone can test it. Just press F9, change Tamaño to 16 and you should see the error. Trying to reproduce the error outside of the IDE seems much harder. BugEditor.zip
-
I use this procedure to get installed fonts and allow to choose one: procedure TFprincipal.GetFontNames; var DC: HDC; begin DC := GetDC(0); EnumFonts(DC, nil, @EnumFontsProc, Pointer(FontNameR.Items)); ReleaseDC(0, DC); FontNameR.Sorted := True; end; but the problem seems to happen not when I change font name, but when I increase font size, and it doesn't happen always. If I choose a second time the same font size, the second time it seems to work.
-
Hello. Using 12.3 + patch 1. I'm seeing this error: changing font at runtime. This is my code: procedure TFprincipal.FontNameRClick(Sender: TObject); begin ga_TipoLetra := FontNameR.Text; Font.Name := ga_TipoLetra; gn_FontSize := StrToInt(ComboSize.Text); Font.Size := gn_FontSize; Screen.MessageFont := Self.Font; ToolBar.Font.Size := Min(gn_FontSize, 14); end; The error happens at the end of that code in procedure TWinControl.DefaultHandler(var Message); inside VCL.Controls. Is it a bug or should I do something different? Thanks
-
The problem of using a custom component is that if a vulnerability is discovered in Edge, we can blame Microsoft and expect that they solve it. If it happens in Chromium, who would solve it?
-
Thanks. The search only returns this page: https://github.com/MicrosoftEdge/WebView2Feedback/issues/3097 where they talk about random issues that are solved restarting the computer. Is there any other way I could/should try to restart the webview?
-
Hello. I have an application in which I show some webpages and pdfs, so I'm using tedgebrowser. I have copied WebView2Loader.dll. In the same computer, some days it works, other days it doesn't work. I have a declaration: WebBrowser: TEdgeBrowser; First of all I do is to initialize it: WebBrowser.CreateWebView; and I have a procedure to know when it fails: procedure TFPrincipal.WebBrowserCreateWebViewCompleted(Sender: TCustomEdgeBrowser; AResult: HRESULT); begin // el problema de esto es que se llama de forma asíncrona y tarda un buen rato if Succeeded(AResult) then begin // ProcDebug('finalizó creación edge'); if WebBrowser.ControllerInterface <> nil then WebBrowser.ControllerInterface.Set_IsVisible(Integer(LongBool(True))); end else begin ShowMessage('>> Fallo en creación navegador hresult: ' + IntToStr(Aresult)); end; end; when it fails it returns hresult: -2147023496. I've tried to find the meaning and I arrived here: https://learn.microsoft.com/en-us/microsoft-edge/webview2/reference/winrt/microsoft_web_webview2_core/corewebview2weberrorstatus?view=webview2-winrt-1.0.2903.40 but I can't identify the issue. How can I know where's the problem? Thanks.
-
One of the first things I did with the vm is uninstall Onedrive and alike. Usually I don't browse inside the vm, but I'll need to download and install some programs, and some of our applications include internet connections to third parties. I've always used vms for Delphi without these problems, but this is the first time I use version 12.3 and also the first time I use Windows 11 (I can´t delay using this crap any longer) and VirtualBox 7, so I'd like to know which of them triggered this issue. I suppose I'm not the only one with this configuration. If I exclude e:\Embarcadero and C:\Users\usuario\Documents\Embarcadero\Studio\23.0\CatalogRepository (I don't understand why the installer used that folder ignoring the one I chose during installation) would that be enough or I'll have to exclude also any components I use like e:\Raize,.... ?
-
What I pasted is a very minimal part of the log. So you don´t think those buffer overflows are a Delphi problem? Ok, I disabled everything in Defender and, after reinitiating the vm, this time it started fast. What should I do? Run always without Defender?
-
Hello. I've created a VM with VirtualBox 7.1.6 and Delphi 12.3. Once the IDE is ready it works acceptably, but the IDE starts extremely slow (it can need several minutes to start using only 1% CPU). I've installed Process Monitor but I'm not sure what to look for and I don't see nothing strange. This is a small part of the log: How can I know where is the problem? Thanks.
-
What new features would you like to see in Delphi 13?
jesu replied to PeterPanettone's topic in Delphi IDE and APIs
-Make updates less painful. At least save a list of GetIt components installed and reinstall them automatically in next version. -Add animations to VCL -And/or add an option to FMX to create Windows-only applications that allow to use native Windows controls like TToolBars and alike -Find a way to do the same that anonymous methods can do but without the same problems for readability. And sponsoring updating third party controls like JVCL and others to be in line with current UI could be an incentive for some people to upgrade. -
This happens in the first execution of bds after installation, so that problem shouldn't exist if Getit had uninstalled them rightly. I uninstalled Navigator by hand because I had read that was the only one that gave trouble. It seems I was wrong.