{"id":5038,"date":"2024-01-18T12:30:59","date_gmt":"2024-01-18T11:30:59","guid":{"rendered":"https:\/\/gdksoftware.com\/knowledgebase\/exception-handling-in-delphi"},"modified":"2024-01-18T13:58:46","modified_gmt":"2024-01-18T12:58:46","slug":"tratamento-de-excecoes-no-delphi","status":"publish","type":"knowledge","link":"https:\/\/gdksoftware.com\/pt-br\/base-de-conhecimento\/tratamento-de-excecoes-no-delphi","title":{"rendered":"Tratamento de exce\u00e7\u00f5es no Delphi"},"content":{"rendered":"<h2>Introdu\u00e7\u00e3o<\/h2>\n<p>O Delphi vem com um excelente debbuger. Para o trabalho regular de desenvolvimento, voc\u00ea pode se virar com o debug integrado. Mas, \u00e0s vezes, voc\u00ea precisa de informa\u00e7\u00f5es adicionais para rastrear uma exce\u00e7\u00e3o. Felizmente, o ecossistema do Delphi oferece muitas ferramentas para adicionar funcionalidade ao Delphi. Neste artigo, examinaremos quatro ferramentas externas de tratamento de exce\u00e7\u00f5es.<\/p>\n<h2>As ferramentas<\/h2>\n<p>Para essa an\u00e1lise, selecionamos as seguintes ferramentas:<\/p>\n<ul>\n<li><a href=\"https:\/\/www.tmssoftware.com\/site\/tmsmeminsight.asp\" target=\"_blank\" rel=\"noopener\">TMS MemInsight<\/a><\/li>\n<li><a href=\"http:\/\/madshi.net\/\" target=\"_blank\" rel=\"noopener\">MadExcept<\/a><\/li>\n<li><a href=\"https:\/\/www.eurekalog.com\/\" target=\"_blank\" rel=\"noopener\">Eurekalog<\/a><\/li>\n<li>Jedi Debug &#8211; Dispon\u00edvel por meio do Gerenciador de Pacotes GetIt<\/li>\n<\/ul>\n<p>Somente a biblioteca Jedi \u00e9 gratuita se voc\u00ea quiser usar essas ferramentas em aplicativos comerciais. Voc\u00ea tamb\u00e9m pode usar o MadExcept para projetos n\u00e3o comerciais. O MemInsight, o MadExcept e o Eurekalog est\u00e3o todos na mesma faixa de pre\u00e7o, entre \u20ac 115 e \u20ac 149 por usu\u00e1rio.<\/p>\n<h2>Funcionalidade<\/h2>\n<p>Uma \u00f3tima ferramenta ajuda voc\u00ea, como desenvolvedor, a encontrar e corrigir bugs mais rapidamente. Um bom rastreamento de pilha \u00e9 essencial para isso. Um rastreamento de pilha \u00e9 uma vis\u00e3o geral das chamadas na ordem em que ocorreram at\u00e9 o ponto em que seu programa encontra uma exce\u00e7\u00e3o. Cada item desse rastreamento de pilha tem informa\u00e7\u00f5es como o nome do procedimento ou da fun\u00e7\u00e3o, sua localiza\u00e7\u00e3o no c\u00f3digo-fonte e o n\u00famero da linha. Isso torna muito f\u00e1cil encontrar o local exato em que ocorre uma exce\u00e7\u00e3o.<\/p>\n<p>Ent\u00e3o, vamos dar uma olhada nas ferramentas dispon\u00edveis.<\/p>\n<h3>TMS MemInsight<\/h3>\n<p>O TMS MemInsight \u00e9 uma ferramenta relativamente nova, lan\u00e7ada em 2022. \u00c9 uma ferramenta que o ajuda a visualizar a aloca\u00e7\u00e3o de mem\u00f3ria em tempo de execu\u00e7\u00e3o, a pilha de chamadas de exce\u00e7\u00e3o e a inspe\u00e7\u00e3o de thread.<\/p>\n<p><img decoding=\"async\" class=\"alignnone wp-image-5006 size-full\" src=\"https:\/\/gdksoftware.com\/wp-content\/uploads\/2024\/01\/meminsight.png\" alt=\"\" width=\"858\" height=\"515\" srcset=\"https:\/\/gdksoftware.com\/wp-content\/uploads\/2024\/01\/meminsight.png 858w, https:\/\/gdksoftware.com\/wp-content\/uploads\/2024\/01\/meminsight-300x180.png 300w, https:\/\/gdksoftware.com\/wp-content\/uploads\/2024\/01\/meminsight-768x461.png 768w\" sizes=\"(max-width: 858px) 100vw, 858px\" \/><\/p>\n<p>O MemInsight consiste em um componente: TTMSMemInsightProfiler. Voc\u00ea pode colocar esse componente em qualquer formul\u00e1rio ou m\u00f3dulo de dados. A principal diferen\u00e7a em rela\u00e7\u00e3o \u00e0s outras ferramentas desta vis\u00e3o geral \u00e9 que o MemInsight oferece uma vis\u00e3o geral imediata do tempo de execu\u00e7\u00e3o das estat\u00edsticas, das exce\u00e7\u00f5es e do status da mem\u00f3ria do seu aplicativo, e n\u00e3o apenas ap\u00f3s a ocorr\u00eancia de uma exce\u00e7\u00e3o. Isso o torna uma ferramenta \u00fatil durante o desenvolvimento.<\/p>\n<p>N\u00e3o \u00e9 poss\u00edvel enviar os rastreamentos de pilha automaticamente para um rastreador de bugs ou servi\u00e7os da Web, o que o torna adequado principalmente para voc\u00ea como desenvolvedor e menos para sistemas de produ\u00e7\u00e3o.<\/p>\n<h3>MadExcept<\/h3>\n<p>Ao contr\u00e1rio do MemInsight, a MadExcept n\u00e3o tem componentes visuais que voc\u00ea precise colocar em um formul\u00e1rio ou m\u00f3dulo de dados. Em vez disso, voc\u00ea pode ativar a MadExcept por projeto.<\/p>\n<p><img decoding=\"async\" class=\"alignnone wp-image-5009 size-full\" src=\"https:\/\/gdksoftware.com\/wp-content\/uploads\/2024\/01\/Madexcept.gif\" alt=\"\" width=\"387\" height=\"119\" \/><\/p>\n<p>O MadExcept captura exce\u00e7\u00f5es depois que elas ocorrem em seu aplicativo. Voc\u00ea pode usar a MadExcept para ocultar quaisquer viola\u00e7\u00f5es de acesso ou exce\u00e7\u00f5es, encaminhar o rastreamento de pilha para ftp, e-mail ou servi\u00e7o da Web ou exibir um formul\u00e1rio que d\u00ea aos usu\u00e1rios a op\u00e7\u00e3o de continuar o relat\u00f3rio, enviar ou salvar o relat\u00f3rio de bug. Al\u00e9m disso, arquivos de registro extensos ou relat\u00f3rios de bugs podem ser armazenados e visualizados com um visualizador separado. N\u00e3o \u00e9 poss\u00edvel obter uma vis\u00e3o geral do tempo de execu\u00e7\u00e3o do uso da mem\u00f3ria ou das exce\u00e7\u00f5es que ocorreram anteriormente, como no MemInsight.<\/p>\n<h3>Eurekalog<\/h3>\n<p>O Eurekalog tamb\u00e9m se concentra em tornar mais f\u00e1ceis de usar as mensagens de erro ou exce\u00e7\u00f5es que possam ocorrer em seu aplicativo. Embora n\u00e3o exista uma vers\u00e3o gratuita e n\u00e3o comercial dispon\u00edvel, o pre\u00e7o \u00e9 semelhante ao do MadExcept. O MadExcept e o Eurekalog tamb\u00e9m s\u00e3o muito semelhantes em termos de funcionalidade. No entanto, o Eurekalog tem recursos mais abrangentes para enviar tra\u00e7os de pilha e arquivos de registro para rastreadores de bugs, como Mantis, Jira ou GitHub.<\/p>\n<p><img decoding=\"async\" class=\"alignnone wp-image-5012 size-full\" src=\"https:\/\/gdksoftware.com\/wp-content\/uploads\/2024\/01\/Eurekalog.png\" alt=\"\" width=\"1187\" height=\"970\" srcset=\"https:\/\/gdksoftware.com\/wp-content\/uploads\/2024\/01\/Eurekalog.png 1187w, https:\/\/gdksoftware.com\/wp-content\/uploads\/2024\/01\/Eurekalog-300x245.png 300w, https:\/\/gdksoftware.com\/wp-content\/uploads\/2024\/01\/Eurekalog-768x628.png 768w\" sizes=\"(max-width: 1187px) 100vw, 1187px\" \/><\/p>\n<p>O Eurekalog tem op\u00e7\u00f5es mais abrangentes que o MadExcept, embora os dois produtos sejam semelhantes em seus componentes principais. Em detalhes, como localiza\u00e7\u00e3o, o Eurekalog tem mais a oferecer. Por outro lado, para projetos maiores, o MadExcept oferece menos sobrecarga e \u00e9 mais r\u00e1pido de compilar.<\/p>\n<h3>Jedi Debug<\/h3>\n<p>Voc\u00ea pode instalar o Jedi Debug, ou jclDebug, por meio do gerenciador de pacotes GetIt ou por meio de uma instala\u00e7\u00e3o manual em https:\/\/www.delphi-jedi.org\/<\/p>\n<p><img decoding=\"async\" class=\"alignnone size-full wp-image-5015\" src=\"https:\/\/gdksoftware.com\/wp-content\/uploads\/2024\/01\/jcl.png\" alt=\"\" width=\"380\" height=\"500\" srcset=\"https:\/\/gdksoftware.com\/wp-content\/uploads\/2024\/01\/jcl.png 380w, https:\/\/gdksoftware.com\/wp-content\/uploads\/2024\/01\/jcl-228x300.png 228w\" sizes=\"(max-width: 380px) 100vw, 380px\" \/><\/p>\n<p>O jclDebug n\u00e3o tem, como o MadExcept ou o Eurekalog, um instalador conveniente ou uma maneira f\u00e1cil de configurar o tratamento de exce\u00e7\u00f5es. Em vez disso, \u00e9 necess\u00e1rio criar e configurar o manipulador de depura\u00e7\u00e3o manualmente, por exemplo, na se\u00e7\u00e3o de inicializa\u00e7\u00e3o e finaliza\u00e7\u00e3o do aplicativo.<\/p>\n<p>Como o jclDebug pertence ao projeto de c\u00f3digo aberto Jedi, seu uso \u00e9 gratuito. No entanto, voc\u00ea sacrifica algumas funcionalidades aqui, como a f\u00e1cil configura\u00e7\u00e3o de op\u00e7\u00f5es e o encaminhamento autom\u00e1tico de relat\u00f3rios de bugs, incluindo o rastreamento de pilha. Se voc\u00ea quiser flexibilidade total no tratamento de exce\u00e7\u00f5es, vale a pena considerar o jclDebug.<\/p>\n<h4>Outras ferramentas<\/h4>\n<p>Existem outras ferramentas (de c\u00f3digo aberto) no mercado, incluindo o DebugEngine. Infelizmente, o DebugEngine n\u00e3o est\u00e1 atualizado e n\u00e3o \u00e9 mais mantido ativamente. Isso torna arriscado o seu uso em sistemas de produ\u00e7\u00e3o. Al\u00e9m disso, o FastMM5, por exemplo, s\u00f3 tem suporte para JCL, madExcept e EurekaLog, portanto, eu pessoalmente usaria um desses tr\u00eas para o tratamento de exce\u00e7\u00f5es (pronto para produ\u00e7\u00e3o).<\/p>\n<p>Por fim, algumas ferramentas se concentram mais na detec\u00e7\u00e3o de vazamentos de mem\u00f3ria, como o Delphi LeakCheck e o FastMM. Essas ferramentas n\u00e3o oferecem suporte ao tratamento de exce\u00e7\u00f5es, o que as coloca fora do escopo deste artigo.<\/p>\n<h2>Conclus\u00e3o<\/h2>\n<p>A escolha da ferramenta depende de seu objetivo com essas ferramentas. Se quiser ter uma vis\u00e3o direta durante o desenvolvimento do seu aplicativo como desenvolvedor, o TMS Meminsight \u00e9 muito \u00fatil. Com um \u00fanico componente e sem muita configura\u00e7\u00e3o, voc\u00ea pode ter uma vis\u00e3o instant\u00e2nea das estat\u00edsticas, do uso da mem\u00f3ria e dos rastreamentos de pilha para exce\u00e7\u00f5es.<\/p>\n<p>Se voc\u00ea quiser usar o tratamento de exce\u00e7\u00f5es em sistemas de produ\u00e7\u00e3o, n\u00e3o poder\u00e1 ignorar o MadExcept e o Eurekalog. Ambos os produtos t\u00eam um hist\u00f3rico longo e comprovado, s\u00e3o est\u00e1veis e oferecem muitas funcionalidades. A escolha entre o MadExcept e o Eurekalog \u00e9 pessoal, pois ambos os produtos s\u00e3o uma extens\u00e3o muito valiosa para obter uma vis\u00e3o melhor de qualquer problema em tempo de execu\u00e7\u00e3o.<\/p>\n<p>E se voc\u00ea n\u00e3o quiser gastar dinheiro com essas ferramentas, h\u00e1 uma alternativa gratuita e de c\u00f3digo aberto, embora voc\u00ea mesmo tenha de desenvolver muitas funcionalidades.<\/p>\n<p>Como voc\u00ea pode ver, h\u00e1 uma solu\u00e7\u00e3o para cada situa\u00e7\u00e3o, o que mostra novamente que o ecossistema em torno do Delphi \u00e9 muito valioso para voc\u00ea como desenvolvedor.<\/p>\n","protected":false},"featured_media":0,"parent":0,"template":"","class_list":["post-5038","knowledge","type-knowledge","status-publish","hentry","knowledge-category-arquivo-delphi"],"acf":{"author":1398,"type_hero":"compact","hero_image":5003,"hero_image_position":"","hero_title":"Tratamento de exce\u00e7\u00f5es no Delphi","hero_content":"","hero_link":null,"hero_show_h1":false},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.8 (Yoast SEO v27.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Tratamento de exce\u00e7\u00f5es no Delphi - GDK Software<\/title>\n<meta name=\"description\" content=\"O Delphi vem com um excelente debbuger. Para o trabalho regular de desenvolvimento, voc\u00ea pode se virar com o debug integrado.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/gdksoftware.com\/pt-br\/base-de-conhecimento\/tratamento-de-excecoes-no-delphi\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Tratamento de exce\u00e7\u00f5es no Delphi\" \/>\n<meta property=\"og:description\" content=\"O Delphi vem com um excelente debbuger. Para o trabalho regular de desenvolvimento, voc\u00ea pode se virar com o debug integrado.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/gdksoftware.com\/pt-br\/base-de-conhecimento\/tratamento-de-excecoes-no-delphi\" \/>\n<meta property=\"og:site_name\" content=\"GDK Software\" \/>\n<meta property=\"article:modified_time\" content=\"2024-01-18T12:58:46+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/gdksoftware.com\/wp-content\/uploads\/2024\/01\/meminsight.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data1\" content=\"7 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/gdksoftware.com\\\/pt-br\\\/base-de-conhecimento\\\/tratamento-de-excecoes-no-delphi\",\"url\":\"https:\\\/\\\/gdksoftware.com\\\/pt-br\\\/base-de-conhecimento\\\/tratamento-de-excecoes-no-delphi\",\"name\":\"Tratamento de exce\u00e7\u00f5es no Delphi - GDK Software\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/gdksoftware.com\\\/pt-br#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/gdksoftware.com\\\/pt-br\\\/base-de-conhecimento\\\/tratamento-de-excecoes-no-delphi#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/gdksoftware.com\\\/pt-br\\\/base-de-conhecimento\\\/tratamento-de-excecoes-no-delphi#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/gdksoftware.com\\\/wp-content\\\/uploads\\\/2024\\\/01\\\/meminsight.png\",\"datePublished\":\"2024-01-18T11:30:59+00:00\",\"dateModified\":\"2024-01-18T12:58:46+00:00\",\"description\":\"O Delphi vem com um excelente debbuger. Para o trabalho regular de desenvolvimento, voc\u00ea pode se virar com o debug integrado.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/gdksoftware.com\\\/pt-br\\\/base-de-conhecimento\\\/tratamento-de-excecoes-no-delphi#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/gdksoftware.com\\\/pt-br\\\/base-de-conhecimento\\\/tratamento-de-excecoes-no-delphi\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/gdksoftware.com\\\/pt-br\\\/base-de-conhecimento\\\/tratamento-de-excecoes-no-delphi#primaryimage\",\"url\":\"https:\\\/\\\/gdksoftware.com\\\/wp-content\\\/uploads\\\/2024\\\/01\\\/meminsight.png\",\"contentUrl\":\"https:\\\/\\\/gdksoftware.com\\\/wp-content\\\/uploads\\\/2024\\\/01\\\/meminsight.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/gdksoftware.com\\\/pt-br\\\/base-de-conhecimento\\\/tratamento-de-excecoes-no-delphi#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/gdksoftware.com\\\/pt-br\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Knowledgebase\",\"item\":\"https:\\\/\\\/gdksoftware.com\\\/pt-br\\\/base-de-conhecimento\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Delphi\",\"item\":\"https:\\\/\\\/gdksoftware.com\\\/pt-br\\\/knowledgebase-category\\\/arquivo-delphi\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"Tratamento de exce\u00e7\u00f5es no Delphi\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/gdksoftware.com\\\/pt-br#website\",\"url\":\"https:\\\/\\\/gdksoftware.com\\\/pt-br\",\"name\":\"GDK Software\",\"description\":\"Zet de stip op je horizon\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/gdksoftware.com\\\/pt-br?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Tratamento de exce\u00e7\u00f5es no Delphi - GDK Software","description":"O Delphi vem com um excelente debbuger. Para o trabalho regular de desenvolvimento, voc\u00ea pode se virar com o debug integrado.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/gdksoftware.com\/pt-br\/base-de-conhecimento\/tratamento-de-excecoes-no-delphi","og_locale":"pt_BR","og_type":"article","og_title":"Tratamento de exce\u00e7\u00f5es no Delphi","og_description":"O Delphi vem com um excelente debbuger. Para o trabalho regular de desenvolvimento, voc\u00ea pode se virar com o debug integrado.","og_url":"https:\/\/gdksoftware.com\/pt-br\/base-de-conhecimento\/tratamento-de-excecoes-no-delphi","og_site_name":"GDK Software","article_modified_time":"2024-01-18T12:58:46+00:00","og_image":[{"url":"https:\/\/gdksoftware.com\/wp-content\/uploads\/2024\/01\/meminsight.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_misc":{"Est. tempo de leitura":"7 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/gdksoftware.com\/pt-br\/base-de-conhecimento\/tratamento-de-excecoes-no-delphi","url":"https:\/\/gdksoftware.com\/pt-br\/base-de-conhecimento\/tratamento-de-excecoes-no-delphi","name":"Tratamento de exce\u00e7\u00f5es no Delphi - GDK Software","isPartOf":{"@id":"https:\/\/gdksoftware.com\/pt-br#website"},"primaryImageOfPage":{"@id":"https:\/\/gdksoftware.com\/pt-br\/base-de-conhecimento\/tratamento-de-excecoes-no-delphi#primaryimage"},"image":{"@id":"https:\/\/gdksoftware.com\/pt-br\/base-de-conhecimento\/tratamento-de-excecoes-no-delphi#primaryimage"},"thumbnailUrl":"https:\/\/gdksoftware.com\/wp-content\/uploads\/2024\/01\/meminsight.png","datePublished":"2024-01-18T11:30:59+00:00","dateModified":"2024-01-18T12:58:46+00:00","description":"O Delphi vem com um excelente debbuger. Para o trabalho regular de desenvolvimento, voc\u00ea pode se virar com o debug integrado.","breadcrumb":{"@id":"https:\/\/gdksoftware.com\/pt-br\/base-de-conhecimento\/tratamento-de-excecoes-no-delphi#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/gdksoftware.com\/pt-br\/base-de-conhecimento\/tratamento-de-excecoes-no-delphi"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/gdksoftware.com\/pt-br\/base-de-conhecimento\/tratamento-de-excecoes-no-delphi#primaryimage","url":"https:\/\/gdksoftware.com\/wp-content\/uploads\/2024\/01\/meminsight.png","contentUrl":"https:\/\/gdksoftware.com\/wp-content\/uploads\/2024\/01\/meminsight.png"},{"@type":"BreadcrumbList","@id":"https:\/\/gdksoftware.com\/pt-br\/base-de-conhecimento\/tratamento-de-excecoes-no-delphi#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/gdksoftware.com\/pt-br"},{"@type":"ListItem","position":2,"name":"Knowledgebase","item":"https:\/\/gdksoftware.com\/pt-br\/base-de-conhecimento"},{"@type":"ListItem","position":3,"name":"Delphi","item":"https:\/\/gdksoftware.com\/pt-br\/knowledgebase-category\/arquivo-delphi"},{"@type":"ListItem","position":4,"name":"Tratamento de exce\u00e7\u00f5es no Delphi"}]},{"@type":"WebSite","@id":"https:\/\/gdksoftware.com\/pt-br#website","url":"https:\/\/gdksoftware.com\/pt-br","name":"GDK Software","description":"Zet de stip op je horizon","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/gdksoftware.com\/pt-br?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"}]}},"_links":{"self":[{"href":"https:\/\/gdksoftware.com\/pt-br\/wp-json\/wp\/v2\/knowledge\/5038","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gdksoftware.com\/pt-br\/wp-json\/wp\/v2\/knowledge"}],"about":[{"href":"https:\/\/gdksoftware.com\/pt-br\/wp-json\/wp\/v2\/types\/knowledge"}],"acf:post":[{"embeddable":true,"href":"https:\/\/gdksoftware.com\/pt-br\/wp-json\/wp\/v2\/team\/1398"}],"wp:attachment":[{"href":"https:\/\/gdksoftware.com\/pt-br\/wp-json\/wp\/v2\/media?parent=5038"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}