{"id":1282,"date":"2025-01-10T15:47:48","date_gmt":"2025-01-10T12:17:48","guid":{"rendered":"https:\/\/rezaalie.ir\/blog\/?p=1282"},"modified":"2025-01-10T15:47:48","modified_gmt":"2025-01-10T12:17:48","slug":"creating-and-using-a-custom-protocol-handler-in-windows","status":"publish","type":"post","link":"https:\/\/rezaalie.ir\/blog\/creating-and-using-a-custom-protocol-handler-in-windows\/","title":{"rendered":"Creating and Using a Custom Protocol Handler in Windows"},"content":{"rendered":"<p dir=\"ltr\">A protocol handler allows your computer to recognize and handle custom URL schemes, directing them to specific applications or services. For example, <code><a href=\"https:\/\/rezaalie.ir\/blog\/%d9%86%d9%87%d8%a7%d9%86-%d8%b3%d8%a7%d8%b2%db%8c\/\">http<\/a>:\/\/<\/code> is a protocol handler for web browsers, while <code>mailto:<\/code> is for email applications. By creating custom protocol handlers, you can create specialized workflows, such as triggering a specific program when a custom URL is accessed.<\/p>\n<p dir=\"ltr\">In this article, we&#8217;ll walk through the steps for creating a custom protocol handler in Windows, allowing you to open a specific application (such as <code>DNS Changer.exe<\/code>) by entering a URL like <code>dnschanger:\/\/<\/code> in your browser or command prompt.<\/p>\n<h3 dir=\"ltr\"><strong>Step-by-Step Guide<\/strong><\/h3>\n<h2 dir=\"ltr\"><strong>1. Understanding the Registry Structure<\/strong><\/h2>\n<p dir=\"ltr\">Windows uses the Registry to associate URL schemes with programs. The Registry keys for custom protocols are stored in <code>HKEY_CLASSES_ROOT<\/code>. By creating and modifying these keys, you can define your own protocols and tell Windows which application should handle them.<\/p>\n<p dir=\"ltr\">The basic structure you need to add for a custom protocol looks like this:<\/p>\n<ul dir=\"ltr\">\n<li><code>HKEY_CLASSES_ROOT\\[protocol_name]<\/code>: The main key for the protocol.<\/li>\n<li><code>URL Protocol<\/code>: A string value to define the protocol type.<\/li>\n<li><code>DefaultIcon<\/code>: Optionally, specify an icon that represents the protocol.<\/li>\n<li><code>shell\\open\\command<\/code>: Specifies the command to execute when the protocol is triggered.<\/li>\n<\/ul>\n<h2 dir=\"ltr\"><strong>2. Creating a Custom Protocol Handler<\/strong><\/h2>\n<p dir=\"ltr\">Let&#8217;s take a practical example where we create a custom protocol called <code>dnsfucker:\/\/<\/code>, which will run <code>DNS Changer.exe<\/code> from a predefined path when invoked.<\/p>\n<h5 dir=\"ltr\"><strong>Creating Registry Entries<\/strong><\/h5>\n<ol dir=\"ltr\">\n<li><strong>Open the Registry Editor<\/strong>:\n<ul>\n<li>Press <code>Windows + R<\/code>, type <code>regedit<\/code>, and hit Enter.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Navigate to <code>HKEY_CLASSES_ROOT<\/code><\/strong>:\n<ul>\n<li>This is where you will add the keys for your custom protocol.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Create the Custom Protocol<\/strong>:\n<ul>\n<li>Right-click on <code>HKEY_CLASSES_ROOT<\/code> and select <code>New &gt; Key<\/code>.<\/li>\n<li>Name the new key <code>dnsfucker<\/code>.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Add a URL Protocol<\/strong>:\n<ul>\n<li>In the <code>dnsfucker<\/code> key, right-click in the right pane and select <code>New &gt; String Value<\/code>.<\/li>\n<li>Name the value <code>URL Protocol<\/code> and leave it empty. This tells Windows that it\u2019s a protocol handler.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Define the Protocol\u2019s Icon<\/strong>:\n<ul>\n<li>Under the <code>dnsfucker<\/code> key, create a subkey called <code>DefaultIcon<\/code>.<\/li>\n<li>Set the default value to the path of your desired icon. For example, <code>\"C:\\\\dns.exe,1\"<\/code>.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Specify the Command to Execute<\/strong>:\n<ul>\n<li>Under the <code>dnsfucker<\/code> key, create a subkey <code>shell &gt; open &gt; command<\/code>.<\/li>\n<li>Set the default value of <code>command<\/code> to the full path of your application. For example:<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-bash\" data-lang=\"Bash\" dir=\"ltr\"><code><code class=\"!whitespace-pre hljs language-perl\"><span class=\"hljs-string\">\"C:\\\\dns.exe\"<\/span> -- <span class=\"hljs-string\">\"%1\"<\/span><\/code><\/code><\/pre>\n<\/div>\n<h2 dir=\"ltr\"><strong>Final Structure in the Registry<\/strong><\/h2>\n<p dir=\"ltr\">After the modifications, the structure in the Registry should look something like this:<\/p>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-bash\" data-lang=\"Bash\" dir=\"ltr\"><code>[HKEY_CLASSES_ROOT\\dnsfucker]\r\n\"URL Protocol\"=\"\"\r\n@=\"URL:Dnsfucker Link\"\r\n\r\n[HKEY_CLASSES_ROOT\\dnsfucker\\DefaultIcon]\r\n@=\"\\\"C:\\\\dns.exe,1\\\"\"\r\n\r\n[HKEY_CLASSES_ROOT\\dnsfucker\\shell]\r\n\r\n[HKEY_CLASSES_ROOT\\dnsfucker\\shell\\open]\r\n\r\n[HKEY_CLASSES_ROOT\\dnsfucker\\shell\\open\\command]\r\n@=\"\\\"C:\\\\dns.exe\\\" -- \\\"%1\\\"\"\r\n<\/code><\/pre>\n<\/div>\n<h4 dir=\"ltr\"><strong>3. Testing the Custom Protocol Handler<\/strong><\/h4>\n<p dir=\"ltr\">Once you&#8217;ve updated the Registry, the next step is testing the custom protocol handler.<\/p>\n<ul dir=\"ltr\">\n<li><strong>Test using a Browser<\/strong>:\n<ul>\n<li>Open any web browser and enter <code>dnsfucker:\/\/<\/code> in the address bar. If everything is set up correctly, it should trigger the <code>DNS Changer.exe<\/code> application.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Test using Command Prompt<\/strong>:\n<ul>\n<li>Open the Command Prompt and type:<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<div class=\"hcb_wrap\">\n<pre class=\"prism line-numbers lang-bash\" data-lang=\"Bash\" dir=\"ltr\"><code>start dnsfucker:\/\/<\/code><\/pre>\n<\/div>\n<ul>\n<li>\n<ul>\n<li dir=\"ltr\">This will also launch the specified program (in this case, <code>dns.exe<\/code>).<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h4 dir=\"ltr\"><strong>4. Troubleshooting<\/strong><\/h4>\n<p dir=\"ltr\">If the handler doesn\u2019t work, here are a few things to check:<\/p>\n<ul dir=\"ltr\">\n<li><strong>Verify the Registry Entries<\/strong>: Make sure the paths and commands are correctly set. Double-check that there are no typos.<\/li>\n<li><strong>Run the Command Manually<\/strong>: Ensure that the command itself works in Command Prompt. If it doesn\u2019t, there may be an issue with the program\u2019s path or execution.<\/li>\n<li><strong>Permissions<\/strong>: Ensure that you have the necessary permissions to modify the Registry and run programs from custom protocols.<\/li>\n<\/ul>\n<h4 dir=\"ltr\"><strong>5. Additional Uses for Custom Protocol Handlers<\/strong><\/h4>\n<p dir=\"ltr\">Custom protocol handlers can be used for a wide variety of purposes:<\/p>\n<ul dir=\"ltr\">\n<li><strong>Launching Applications<\/strong>: You can create a protocol handler that opens specific programs (e.g., <code>vpn:\/\/<\/code> to launch a VPN client).<\/li>\n<li><strong>Automation<\/strong>: Create workflows that trigger scripts or automation tasks with custom URLs.<\/li>\n<li><strong>Web Integration<\/strong>: For web-based applications, a custom protocol can be used to integrate with desktop software.<\/li>\n<\/ul>\n<h3 dir=\"ltr\"><strong>Conclusion<\/strong><\/h3>\n<p dir=\"ltr\">Creating and using custom protocol handlers in Windows can be an effective way to integrate your desktop applications with web-based workflows or streamline repetitive tasks. By modifying the Windows Registry, you can define your own protocol schemes and associate them with specific programs. Whether you&#8217;re trying to launch a particular app or automate a process, this method provides a seamless and customizable solution.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A protocol handler allows your computer to recognize and handle custom URL schemes, directing them to specific applications or services. For example, http:\/\/ is a&#8230;<\/p>\n","protected":false},"author":1,"featured_media":1283,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[],"class_list":["post-1282","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-6"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.6 (Yoast SEO v27.7) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Creating and Using a Custom Protocol Handler in Windows<\/title>\n<meta name=\"description\" content=\"Learn how to create and use custom protocol handlers in Windows by editing the registry. This guide covers step-by-step instructions to set up custom URL schemes for launching specific applications like DNS Changer.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/rezaalie.ir\/blog\/creating-and-using-a-custom-protocol-handler-in-windows\/\" \/>\n<meta property=\"og:locale\" content=\"fa_IR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Creating and Using a Custom Protocol Handler in Windows\" \/>\n<meta property=\"og:description\" content=\"Learn how to create and use custom protocol handlers in Windows by editing the registry. This guide covers step-by-step instructions to set up custom URL schemes for launching specific applications like DNS Changer.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/rezaalie.ir\/blog\/creating-and-using-a-custom-protocol-handler-in-windows\/\" \/>\n<meta property=\"og:site_name\" content=\"\u0648\u0628\u0644\u0627\u06af\" \/>\n<meta property=\"article:published_time\" content=\"2025-01-10T12:17:48+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/rezaalie.ir\/blog\/wp-content\/uploads\/2025\/01\/Custom-Protocol-Handler-Banner-scaled.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"890\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"\u0631\u0636\u0627 \u0639\u0644\u06cc\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u0646\u0648\u0634\u062a\u0647\u200c\u0634\u062f\u0647 \u0628\u062f\u0633\u062a\" \/>\n\t<meta name=\"twitter:data1\" content=\"\u0631\u0636\u0627 \u0639\u0644\u06cc\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u0632\u0645\u0627\u0646 \u062a\u0642\u0631\u06cc\u0628\u06cc \u0628\u0631\u0627\u06cc \u062e\u0648\u0627\u0646\u062f\u0646\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 \u062f\u0642\u06cc\u0642\u0647\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/creating-and-using-a-custom-protocol-handler-in-windows\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/creating-and-using-a-custom-protocol-handler-in-windows\\\/\"},\"author\":{\"name\":\"\u0631\u0636\u0627 \u0639\u0644\u06cc\",\"@id\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/#\\\/schema\\\/person\\\/28c7099feaa4da3f239b01b752878e6d\"},\"headline\":\"Creating and Using a Custom Protocol Handler in Windows\",\"datePublished\":\"2025-01-10T12:17:48+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/creating-and-using-a-custom-protocol-handler-in-windows\\\/\"},\"wordCount\":631,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/#\\\/schema\\\/person\\\/28c7099feaa4da3f239b01b752878e6d\"},\"image\":{\"@id\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/creating-and-using-a-custom-protocol-handler-in-windows\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/01\\\/Custom-Protocol-Handler-Banner-scaled.jpg\",\"articleSection\":[\"\u0645\u062a\u0641\u0631\u0642\u0647\"],\"inLanguage\":\"fa-IR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/creating-and-using-a-custom-protocol-handler-in-windows\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/creating-and-using-a-custom-protocol-handler-in-windows\\\/\",\"url\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/creating-and-using-a-custom-protocol-handler-in-windows\\\/\",\"name\":\"Creating and Using a Custom Protocol Handler in Windows\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/creating-and-using-a-custom-protocol-handler-in-windows\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/creating-and-using-a-custom-protocol-handler-in-windows\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/01\\\/Custom-Protocol-Handler-Banner-scaled.jpg\",\"datePublished\":\"2025-01-10T12:17:48+00:00\",\"description\":\"Learn how to create and use custom protocol handlers in Windows by editing the registry. This guide covers step-by-step instructions to set up custom URL schemes for launching specific applications like DNS Changer.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/creating-and-using-a-custom-protocol-handler-in-windows\\\/#breadcrumb\"},\"inLanguage\":\"fa-IR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/creating-and-using-a-custom-protocol-handler-in-windows\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"fa-IR\",\"@id\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/creating-and-using-a-custom-protocol-handler-in-windows\\\/#primaryimage\",\"url\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/01\\\/Custom-Protocol-Handler-Banner-scaled.jpg\",\"contentUrl\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/wp-content\\\/uploads\\\/2025\\\/01\\\/Custom-Protocol-Handler-Banner-scaled.jpg\",\"width\":2560,\"height\":890,\"caption\":\"Custom Protocol Handler Banner\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/creating-and-using-a-custom-protocol-handler-in-windows\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u062e\u0627\u0646\u0647\",\"item\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Creating and Using a Custom Protocol Handler in Windows\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/\",\"name\":\"\u0648\u0628\u0644\u0627\u06af\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/#\\\/schema\\\/person\\\/28c7099feaa4da3f239b01b752878e6d\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"fa-IR\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/#\\\/schema\\\/person\\\/28c7099feaa4da3f239b01b752878e6d\",\"name\":\"\u0631\u0636\u0627 \u0639\u0644\u06cc\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fa-IR\",\"@id\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/07\\\/dino-sword-chrome-dino-Copy.jpg\",\"url\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/07\\\/dino-sword-chrome-dino-Copy.jpg\",\"contentUrl\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/07\\\/dino-sword-chrome-dino-Copy.jpg\",\"width\":149,\"height\":143,\"caption\":\"\u0631\u0636\u0627 \u0639\u0644\u06cc\"},\"logo\":{\"@id\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/07\\\/dino-sword-chrome-dino-Copy.jpg\"},\"description\":\"\u062f\u0631\u0648\u062f ! \u0645\u0646 \u0631\u0636\u0627 \u0639\u0644\u06cc \u0647\u0633\u062a\u0645\u060c \u0639\u0644\u0627\u0642\u0645\u0646\u062f \u0628\u0647 \u062d\u0648\u0632\u0647 \u0646\u0631\u0645\u200c\u0627\u0641\u0632\u0627\u0631 \u062a\u0648 \u0627\u06cc\u0646 \u0633\u0627\u0644\u200c\u0647\u0627 \u0631\u0648\u06cc \u067e\u0631\u0648\u0698\u0647\u200c\u0647\u0627\u06cc \u0645\u062a\u0646\u0648\u0639\u06cc \u06a9\u0627\u0631 \u06a9\u0631\u062f\u0645\u060c \u0627\u0632 \u0627\u0628\u0632\u0627\u0631\u0647\u0627\u06cc \u06a9\u0648\u0686\u06cc\u06a9 \u06af\u0631\u0641\u062a\u0647 \u062a\u0627 \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646\u200c\u0647\u0627\u06cc \u06a9\u0627\u0645\u0644 \u0648 \u0628\u0632\u0631\u06af. \u0648\u0627\u0642\u0639\u0627\u064b \u0627\u0632 \u0647\u0645\u06a9\u0627\u0631\u06cc \u0628\u0627 \u062f\u06cc\u06af\u0631\u0627\u0646 \u0644\u0630\u062a \u0645\u06cc\u200c\u0628\u0631\u0645.\u0647\u0645\u06cc\u0634\u0647 \u0628\u0631\u0627\u06cc \u0686\u0627\u0644\u0634\u200c\u0647\u0627\u06cc \u062c\u062f\u06cc\u062f \u0622\u0645\u0627\u062f\u0647\u200c\u0627\u0645 \u0648 \u0627\u0632 \u0627\u06cc\u062f\u0647\u200c\u0647\u0627\u06cc \u0646\u0648 \u0647\u06cc\u062c\u0627\u0646\u200c\u0632\u062f\u0647 \u0645\u06cc\u200c\u0634\u0645. \u0627\u06af\u0647 \u0686\u06cc\u0632\u06cc \u062a\u0648 \u0630\u0647\u0646\u062a \u0647\u0633\u062a\u060c \u062e\u0648\u0634\u062d\u0627\u0644 \u0645\u06cc\u200c\u0634\u0645 \u062f\u0631 \u0645\u0648\u0631\u062f\u0634 \u0628\u0634\u0646\u0648\u0645 \u2014 \u0686\u0647 \u0641\u0642\u0637 \u06cc\u0647 \u0637\u0631\u062d \u06a9\u0644\u06cc \u0628\u0627\u0634\u0647 \u06cc\u0627 \u06cc\u0647 \u0628\u0631\u0646\u0627\u0645\u0647 \u06a9\u0627\u0645\u0644 \u0648 \u062f\u0642\u06cc\u0642\u060c \u062f\u0648\u0633\u062a \u062f\u0627\u0631\u0645 \u0628\u062f\u0648\u0646\u0645 \u0686\u06cc\u0647 \u0648 \u0628\u0628\u06cc\u0646\u0645 \u0645\u06cc\u200c\u062a\u0648\u0646\u06cc\u0645 \u0628\u0627 \u0647\u0645 \u0628\u0647 \u06a9\u062c\u0627 \u0628\u0631\u0633\u0648\u0646\u06cc\u0645\u0634.\",\"sameAs\":[\"https:\\\/\\\/rezaalie.ir\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/rezaalie\"],\"url\":\"https:\\\/\\\/rezaalie.ir\\\/blog\\\/author\\\/rezaalie\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Creating and Using a Custom Protocol Handler in Windows","description":"Learn how to create and use custom protocol handlers in Windows by editing the registry. This guide covers step-by-step instructions to set up custom URL schemes for launching specific applications like DNS Changer.","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:\/\/rezaalie.ir\/blog\/creating-and-using-a-custom-protocol-handler-in-windows\/","og_locale":"fa_IR","og_type":"article","og_title":"Creating and Using a Custom Protocol Handler in Windows","og_description":"Learn how to create and use custom protocol handlers in Windows by editing the registry. This guide covers step-by-step instructions to set up custom URL schemes for launching specific applications like DNS Changer.","og_url":"https:\/\/rezaalie.ir\/blog\/creating-and-using-a-custom-protocol-handler-in-windows\/","og_site_name":"\u0648\u0628\u0644\u0627\u06af","article_published_time":"2025-01-10T12:17:48+00:00","og_image":[{"width":2560,"height":890,"url":"https:\/\/rezaalie.ir\/blog\/wp-content\/uploads\/2025\/01\/Custom-Protocol-Handler-Banner-scaled.jpg","type":"image\/jpeg"}],"author":"\u0631\u0636\u0627 \u0639\u0644\u06cc","twitter_card":"summary_large_image","twitter_misc":{"\u0646\u0648\u0634\u062a\u0647\u200c\u0634\u062f\u0647 \u0628\u062f\u0633\u062a":"\u0631\u0636\u0627 \u0639\u0644\u06cc","\u0632\u0645\u0627\u0646 \u062a\u0642\u0631\u06cc\u0628\u06cc \u0628\u0631\u0627\u06cc \u062e\u0648\u0627\u0646\u062f\u0646":"4 \u062f\u0642\u06cc\u0642\u0647"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/rezaalie.ir\/blog\/creating-and-using-a-custom-protocol-handler-in-windows\/#article","isPartOf":{"@id":"https:\/\/rezaalie.ir\/blog\/creating-and-using-a-custom-protocol-handler-in-windows\/"},"author":{"name":"\u0631\u0636\u0627 \u0639\u0644\u06cc","@id":"https:\/\/rezaalie.ir\/blog\/#\/schema\/person\/28c7099feaa4da3f239b01b752878e6d"},"headline":"Creating and Using a Custom Protocol Handler in Windows","datePublished":"2025-01-10T12:17:48+00:00","mainEntityOfPage":{"@id":"https:\/\/rezaalie.ir\/blog\/creating-and-using-a-custom-protocol-handler-in-windows\/"},"wordCount":631,"commentCount":0,"publisher":{"@id":"https:\/\/rezaalie.ir\/blog\/#\/schema\/person\/28c7099feaa4da3f239b01b752878e6d"},"image":{"@id":"https:\/\/rezaalie.ir\/blog\/creating-and-using-a-custom-protocol-handler-in-windows\/#primaryimage"},"thumbnailUrl":"https:\/\/rezaalie.ir\/blog\/wp-content\/uploads\/2025\/01\/Custom-Protocol-Handler-Banner-scaled.jpg","articleSection":["\u0645\u062a\u0641\u0631\u0642\u0647"],"inLanguage":"fa-IR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/rezaalie.ir\/blog\/creating-and-using-a-custom-protocol-handler-in-windows\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/rezaalie.ir\/blog\/creating-and-using-a-custom-protocol-handler-in-windows\/","url":"https:\/\/rezaalie.ir\/blog\/creating-and-using-a-custom-protocol-handler-in-windows\/","name":"Creating and Using a Custom Protocol Handler in Windows","isPartOf":{"@id":"https:\/\/rezaalie.ir\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/rezaalie.ir\/blog\/creating-and-using-a-custom-protocol-handler-in-windows\/#primaryimage"},"image":{"@id":"https:\/\/rezaalie.ir\/blog\/creating-and-using-a-custom-protocol-handler-in-windows\/#primaryimage"},"thumbnailUrl":"https:\/\/rezaalie.ir\/blog\/wp-content\/uploads\/2025\/01\/Custom-Protocol-Handler-Banner-scaled.jpg","datePublished":"2025-01-10T12:17:48+00:00","description":"Learn how to create and use custom protocol handlers in Windows by editing the registry. This guide covers step-by-step instructions to set up custom URL schemes for launching specific applications like DNS Changer.","breadcrumb":{"@id":"https:\/\/rezaalie.ir\/blog\/creating-and-using-a-custom-protocol-handler-in-windows\/#breadcrumb"},"inLanguage":"fa-IR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/rezaalie.ir\/blog\/creating-and-using-a-custom-protocol-handler-in-windows\/"]}]},{"@type":"ImageObject","inLanguage":"fa-IR","@id":"https:\/\/rezaalie.ir\/blog\/creating-and-using-a-custom-protocol-handler-in-windows\/#primaryimage","url":"https:\/\/rezaalie.ir\/blog\/wp-content\/uploads\/2025\/01\/Custom-Protocol-Handler-Banner-scaled.jpg","contentUrl":"https:\/\/rezaalie.ir\/blog\/wp-content\/uploads\/2025\/01\/Custom-Protocol-Handler-Banner-scaled.jpg","width":2560,"height":890,"caption":"Custom Protocol Handler Banner"},{"@type":"BreadcrumbList","@id":"https:\/\/rezaalie.ir\/blog\/creating-and-using-a-custom-protocol-handler-in-windows\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u062e\u0627\u0646\u0647","item":"https:\/\/rezaalie.ir\/blog\/"},{"@type":"ListItem","position":2,"name":"Creating and Using a Custom Protocol Handler in Windows"}]},{"@type":"WebSite","@id":"https:\/\/rezaalie.ir\/blog\/#website","url":"https:\/\/rezaalie.ir\/blog\/","name":"\u0648\u0628\u0644\u0627\u06af","description":"","publisher":{"@id":"https:\/\/rezaalie.ir\/blog\/#\/schema\/person\/28c7099feaa4da3f239b01b752878e6d"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/rezaalie.ir\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"fa-IR"},{"@type":["Person","Organization"],"@id":"https:\/\/rezaalie.ir\/blog\/#\/schema\/person\/28c7099feaa4da3f239b01b752878e6d","name":"\u0631\u0636\u0627 \u0639\u0644\u06cc","image":{"@type":"ImageObject","inLanguage":"fa-IR","@id":"https:\/\/rezaalie.ir\/blog\/wp-content\/uploads\/2024\/07\/dino-sword-chrome-dino-Copy.jpg","url":"https:\/\/rezaalie.ir\/blog\/wp-content\/uploads\/2024\/07\/dino-sword-chrome-dino-Copy.jpg","contentUrl":"https:\/\/rezaalie.ir\/blog\/wp-content\/uploads\/2024\/07\/dino-sword-chrome-dino-Copy.jpg","width":149,"height":143,"caption":"\u0631\u0636\u0627 \u0639\u0644\u06cc"},"logo":{"@id":"https:\/\/rezaalie.ir\/blog\/wp-content\/uploads\/2024\/07\/dino-sword-chrome-dino-Copy.jpg"},"description":"\u062f\u0631\u0648\u062f ! \u0645\u0646 \u0631\u0636\u0627 \u0639\u0644\u06cc \u0647\u0633\u062a\u0645\u060c \u0639\u0644\u0627\u0642\u0645\u0646\u062f \u0628\u0647 \u062d\u0648\u0632\u0647 \u0646\u0631\u0645\u200c\u0627\u0641\u0632\u0627\u0631 \u062a\u0648 \u0627\u06cc\u0646 \u0633\u0627\u0644\u200c\u0647\u0627 \u0631\u0648\u06cc \u067e\u0631\u0648\u0698\u0647\u200c\u0647\u0627\u06cc \u0645\u062a\u0646\u0648\u0639\u06cc \u06a9\u0627\u0631 \u06a9\u0631\u062f\u0645\u060c \u0627\u0632 \u0627\u0628\u0632\u0627\u0631\u0647\u0627\u06cc \u06a9\u0648\u0686\u06cc\u06a9 \u06af\u0631\u0641\u062a\u0647 \u062a\u0627 \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646\u200c\u0647\u0627\u06cc \u06a9\u0627\u0645\u0644 \u0648 \u0628\u0632\u0631\u06af. \u0648\u0627\u0642\u0639\u0627\u064b \u0627\u0632 \u0647\u0645\u06a9\u0627\u0631\u06cc \u0628\u0627 \u062f\u06cc\u06af\u0631\u0627\u0646 \u0644\u0630\u062a \u0645\u06cc\u200c\u0628\u0631\u0645.\u0647\u0645\u06cc\u0634\u0647 \u0628\u0631\u0627\u06cc \u0686\u0627\u0644\u0634\u200c\u0647\u0627\u06cc \u062c\u062f\u06cc\u062f \u0622\u0645\u0627\u062f\u0647\u200c\u0627\u0645 \u0648 \u0627\u0632 \u0627\u06cc\u062f\u0647\u200c\u0647\u0627\u06cc \u0646\u0648 \u0647\u06cc\u062c\u0627\u0646\u200c\u0632\u062f\u0647 \u0645\u06cc\u200c\u0634\u0645. \u0627\u06af\u0647 \u0686\u06cc\u0632\u06cc \u062a\u0648 \u0630\u0647\u0646\u062a \u0647\u0633\u062a\u060c \u062e\u0648\u0634\u062d\u0627\u0644 \u0645\u06cc\u200c\u0634\u0645 \u062f\u0631 \u0645\u0648\u0631\u062f\u0634 \u0628\u0634\u0646\u0648\u0645 \u2014 \u0686\u0647 \u0641\u0642\u0637 \u06cc\u0647 \u0637\u0631\u062d \u06a9\u0644\u06cc \u0628\u0627\u0634\u0647 \u06cc\u0627 \u06cc\u0647 \u0628\u0631\u0646\u0627\u0645\u0647 \u06a9\u0627\u0645\u0644 \u0648 \u062f\u0642\u06cc\u0642\u060c \u062f\u0648\u0633\u062a \u062f\u0627\u0631\u0645 \u0628\u062f\u0648\u0646\u0645 \u0686\u06cc\u0647 \u0648 \u0628\u0628\u06cc\u0646\u0645 \u0645\u06cc\u200c\u062a\u0648\u0646\u06cc\u0645 \u0628\u0627 \u0647\u0645 \u0628\u0647 \u06a9\u062c\u0627 \u0628\u0631\u0633\u0648\u0646\u06cc\u0645\u0634.","sameAs":["https:\/\/rezaalie.ir","https:\/\/www.linkedin.com\/in\/rezaalie"],"url":"https:\/\/rezaalie.ir\/blog\/author\/rezaalie\/"}]}},"_links":{"self":[{"href":"https:\/\/rezaalie.ir\/blog\/wp-json\/wp\/v2\/posts\/1282","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rezaalie.ir\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rezaalie.ir\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rezaalie.ir\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rezaalie.ir\/blog\/wp-json\/wp\/v2\/comments?post=1282"}],"version-history":[{"count":1,"href":"https:\/\/rezaalie.ir\/blog\/wp-json\/wp\/v2\/posts\/1282\/revisions"}],"predecessor-version":[{"id":1284,"href":"https:\/\/rezaalie.ir\/blog\/wp-json\/wp\/v2\/posts\/1282\/revisions\/1284"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/rezaalie.ir\/blog\/wp-json\/wp\/v2\/media\/1283"}],"wp:attachment":[{"href":"https:\/\/rezaalie.ir\/blog\/wp-json\/wp\/v2\/media?parent=1282"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rezaalie.ir\/blog\/wp-json\/wp\/v2\/categories?post=1282"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rezaalie.ir\/blog\/wp-json\/wp\/v2\/tags?post=1282"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}