¿Hay un límite máximo de cuánto tiempo se pueden pasar las cadenas a la aplicación de la consola Delphi? Estoy pensando en pasar muchos datos JSON. Leería los datos con la función ParamStr (x).Longitud máxima de los argumentos de la línea de comando pasados a la aplicación de consola Delphi
Longitud máxima de los argumentos de la línea de comando pasados a la aplicación de consola Delphi
Respuesta
La línea de comandos es limited por el sistema operativo a 2047 caracteres.
Si desea utilizar más datos, puede usar un archivo.
En Windows XP o posterior, la longitud máxima es de 8191 caracteres . En Windows 2000 o NT4, la longitud máxima es de 2047 caracteres. De acuerdo con el enlace que proporcionaste – Mick
Esta respuesta no es correcta, según Raymond Chen (ver mi respuesta). No downvoting, solo mencionando. –
La longitud máxima para CMD.EXE es de 8192 caracteres. Esta sería la cantidad máxima a cobrar por una aplicación de la consola Delphi debido a una limitación en CMD.EXE.
La longitud máxima del comando para CreateProcess es 32767 caracteres. Esto se debe a la estructura UNICODE_STRING.
ShellExecute/EX está limitado a INTERNET_MAX_URL_LENGTH, que como mencionó Gamecat tiene 2047 caracteres, a menos que esté ejecutándose en Win95; allí el límite es solo MAX_PATH.
Para obtener más información, ver Raymond Chen's blog post
+1 ¡Creo que OP aceptó la respuesta incorrecta! Las aplicaciones de la consola no necesitan iniciarse desde cmd.exe. –
Para '' gran cantidad de datos, utilizando ParamStr podría ser demasiado limitado. ¿Ha considerado usar un (anonymous) pipe? Aquí es un punto de partida:
- 1. Longitud máxima de línea de comandos de cadena
- 2. ¿Cómo acceder a los argumentos de línea de comando pasados a un programa Go?
- 3. Argumentos de la línea de comando en la aplicación C#
- 4. ¿Cuál es la longitud máxima del comando de la línea de comandos de una ventana (cmd.exe)?
- 5. Longitud máxima de ** parámetros de argv
- 6. Haskell: Análisis de los argumentos de la línea de comando
- 7. ¿Cómo probar los argumentos de la línea de comando?
- 8. Analizando los argumentos de la línea de comando en los scripts R
- 9. ¿Se puede ejecutar una aplicación de Adobe AIR a través de la salida de línea de comando a la consola?
- 10. Analizando los argumentos de línea de comando en una aplicación Unicode C++
- 11. Pasar parámetros de línea de comando a VB6 IDE en la aplicación de consola
- 12. ¿Cómo imponer la longitud máxima de línea en Emacs?
- 13. argumentos de la consola symfony2
- 14. ¿Cómo pasar los argumentos de la consola a la aplicación en eclipse?
- 15. Argumentos de línea de comando de autocompletado
- 16. C#: ¿Cómo detectar los argumentos escritos en la aplicación de la consola?
- 17. Pasar argumentos de línea de comando a la aplicación OOB Silverlight 4
- 18. Título del icono de la aplicación Apple IOS: ¿longitud máxima?
- 19. ¿Cómo capturar los argumentos pasados a un script de Groovy?
- 20. Argumentos de la aplicación de consola, cómo se pasan los argumentos al método principal
- 21. Redirigir argumentos pasados a un archivo por lotes de Windows
- 22. Argumentos de línea de comando en python.
- 23. longitud máxima de la solicitud HTTP GET?
- 24. ¿Cómo paso los argumentos de la línea de comandos a una aplicación WinForms?
- 25. función R para analizar los argumentos de línea de comando
- 26. Pasando matriz de argumentos en la línea de comando
- 27. MVC3: longitud máxima de la solicitud superó
- 28. lua interactivos: los argumentos de línea de comando
- 29. Argumentos de línea de comandos de Delphi Windows Services
- 30. Longitud máxima de la propiedad FormsAuthenticationTicket.UserData
Para más información consultar este enlace http://support.microsoft.com/kb/830473/en-us –