Skip to content

Commit d134533

Browse files
committed
Trying different approach
1 parent a70a040 commit d134533

File tree

1 file changed

+118
-88
lines changed

1 file changed

+118
-88
lines changed

eFormAPI/Installation/CustomActions/CustomAction.cs

Lines changed: 118 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -656,56 +656,80 @@ private static void AddImageHandlers(string siteName)
656656

657657
ConfigurationSection handlersSection = config.GetSection("system.webServer/handlers");
658658
ConfigurationElementCollection handlersCollection = handlersSection.GetCollection();
659-
//bool pngHandlerMissing = true;
660-
//bool jpgHandlerMissing = true;
661-
//bool jpegHandlerMissing = true;
662-
//ConfigurationElement toRemoveCe = null;
659+
bool pngHandlerMissing = true;
660+
bool jpgHandlerMissing = true;
661+
bool jpegHandlerMissing = true;
662+
ConfigurationElement toRemoveCe = null;
663663

664-
List<ConfigurationElement> toRemoveElements = new List<ConfigurationElement>();
664+
//List<ConfigurationElement> toRemoveElements = new List<ConfigurationElement>();
665665

666666
foreach (ConfigurationElement ce in handlersCollection)
667667
{
668-
toRemoveElements.Add(ce);
668+
if (ce.GetAttributeValue("name").ToString() == "get-image-png")
669+
{
670+
//MessageBox.Show("pngHandlerMissing");
671+
pngHandlerMissing = false;
672+
}
673+
if (ce.GetAttributeValue("name").ToString() == "get-image-jpg")
674+
{
675+
//MessageBox.Show("jpgHandlerMissing");
676+
jpgHandlerMissing = false;
677+
}
678+
if (ce.GetAttributeValue("name").ToString() == "get-image-jpeg")
679+
{
680+
//MessageBox.Show("jpegHandlerMissing");
681+
jpegHandlerMissing = false;
682+
}
683+
684+
if (ce.GetAttributeValue("name").ToString() == "ExtensionlessUrlHandler-Integrated-4.0")
685+
{
686+
toRemoveCe = ce;
687+
}
669688
}
670-
671-
foreach (ConfigurationElement ce in toRemoveElements)
672-
{
673-
handlersCollection.Remove(ce);
674-
}
675-
//handlersCollection.Clear();
676-
677689
try
678690
{
679-
ConfigurationElement ele = handlersCollection.CreateElement("remove");
680-
ele["name"] = "ExtensionlessUrlHandler-Integrated-4.0";
681-
handlersCollection.Add(ele);
682-
}
683-
catch (Exception ex)
684-
{
685-
MessageBox.Show("ExtensionlessUrlHandler ex is : " + ex.Message + "stacktrace : " + ex.StackTrace);
686-
}
691+
if (toRemoveCe != null)
692+
handlersCollection.Remove(toRemoveCe);
693+
} catch { }
694+
//foreach (ConfigurationElement ce in toRemoveElements)
695+
//{
696+
// handlersCollection.Remove(ce);
697+
//}
698+
//handlersCollection.Clear();
687699

688-
try
689-
{
690-
ConfigurationElement ele = handlersCollection.CreateElement("remove");
691-
ele["name"] = "OPTIONSVerbHandler";
692-
handlersCollection.Add(ele);
693-
}
694-
catch (Exception ex)
695-
{
696-
MessageBox.Show("OPTIONSVerbHandler ex is : " + ex.Message + "stacktrace : " + ex.StackTrace);
697-
}
698700

699-
try
700-
{
701-
ConfigurationElement ele = handlersCollection.CreateElement("remove");
702-
ele["name"] = "TRACEVerbHandler";
703-
handlersCollection.Add(ele);
704-
}
705-
catch (Exception ex)
706-
{
707-
MessageBox.Show("TRACEVerbHandler ex is : " + ex.Message + "stacktrace : " + ex.StackTrace);
708-
}
701+
//try
702+
//{
703+
// ConfigurationElement ele = handlersCollection.CreateElement("remove");
704+
// ele["name"] = "ExtensionlessUrlHandler-Integrated-4.0";
705+
// handlersCollection.Add(ele);
706+
//}
707+
//catch (Exception ex)
708+
//{
709+
// MessageBox.Show("ExtensionlessUrlHandler ex is : " + ex.Message + "stacktrace : " + ex.StackTrace);
710+
//}
711+
712+
//try
713+
//{
714+
// ConfigurationElement ele = handlersCollection.CreateElement("remove");
715+
// ele["name"] = "OPTIONSVerbHandler";
716+
// handlersCollection.Add(ele);
717+
//}
718+
//catch (Exception ex)
719+
//{
720+
// MessageBox.Show("OPTIONSVerbHandler ex is : " + ex.Message + "stacktrace : " + ex.StackTrace);
721+
//}
722+
723+
//try
724+
//{
725+
// ConfigurationElement ele = handlersCollection.CreateElement("remove");
726+
// ele["name"] = "TRACEVerbHandler";
727+
// handlersCollection.Add(ele);
728+
//}
729+
//catch (Exception ex)
730+
//{
731+
// MessageBox.Show("TRACEVerbHandler ex is : " + ex.Message + "stacktrace : " + ex.StackTrace);
732+
//}
709733

710734
try
711735
{
@@ -717,58 +741,64 @@ private static void AddImageHandlers(string siteName)
717741
ele["preCondition"] = "integratedMode,runtimeVersionv4.0";
718742
handlersCollection.Add(ele);
719743
}
720-
catch (Exception ex)
744+
catch
721745
{
722-
MessageBox.Show("pngHandlerMissing ex is : " + ex.Message + "stacktrace : " + ex.StackTrace);
746+
//MessageBox.Show("pngHandlerMissing ex is : " + ex.Message + "stacktrace : " + ex.StackTrace);
723747
}
724748

725-
try
726-
{
727-
ConfigurationElement ele = handlersCollection.CreateElement("add");
728-
ele["name"] = "get-image-png";
729-
ele["path"] = @"*.png";
730-
ele["verb"] = "GET";
731-
ele["type"] = @"System.Web.Handlers.TransferRequestHandler";
732-
ele["preCondition"] = "integratedMode,runtimeVersionv4.0";
733-
ele["responseBufferLimit"] = 0;
734-
handlersCollection.Add(ele);
749+
if (pngHandlerMissing) {
750+
try
751+
{
752+
ConfigurationElement ele = handlersCollection.CreateElement("add");
753+
ele["name"] = "get-image-png";
754+
ele["path"] = @"*.png";
755+
ele["verb"] = "GET";
756+
ele["type"] = @"System.Web.Handlers.TransferRequestHandler";
757+
ele["preCondition"] = "integratedMode,runtimeVersionv4.0";
758+
ele["responseBufferLimit"] = 0;
759+
handlersCollection.Add(ele);
760+
}
761+
catch (Exception ex)
762+
{
763+
MessageBox.Show("pngHandlerMissing ex is : " + ex.Message + "stacktrace : " + ex.StackTrace);
764+
}
735765
}
736-
catch (Exception ex)
737-
{
738-
MessageBox.Show("pngHandlerMissing ex is : " + ex.Message + "stacktrace : " + ex.StackTrace);
739-
}
740-
741-
try
742-
{
743-
ConfigurationElement ele = handlersCollection.CreateElement("add");
744-
ele["name"] = "get-image-jpg";
745-
ele["path"] = @"*.jpg";
746-
ele["verb"] = "GET";
747-
ele["type"] = @"System.Web.Handlers.TransferRequestHandler";
748-
ele["preCondition"] = "integratedMode,runtimeVersionv4.0";
749-
ele["responseBufferLimit"] = 0;
750-
handlersCollection.Add(ele);
766+
767+
if (jpgHandlerMissing) {
768+
try
769+
{
770+
ConfigurationElement ele = handlersCollection.CreateElement("add");
771+
ele["name"] = "get-image-jpg";
772+
ele["path"] = @"*.jpg";
773+
ele["verb"] = "GET";
774+
ele["type"] = @"System.Web.Handlers.TransferRequestHandler";
775+
ele["preCondition"] = "integratedMode,runtimeVersionv4.0";
776+
ele["responseBufferLimit"] = 0;
777+
handlersCollection.Add(ele);
778+
}
779+
catch (Exception ex)
780+
{
781+
MessageBox.Show("jpgHandlerMissing ex is : " + ex.Message + "stacktrace : " + ex.StackTrace);
782+
}
751783
}
752-
catch (Exception ex)
753-
{
754-
MessageBox.Show("jpgHandlerMissing ex is : " + ex.Message + "stacktrace : " + ex.StackTrace);
755-
}
756-
757-
try
758-
{
759-
ConfigurationElement ele = handlersCollection.CreateElement("add");
760-
ele["name"] = "get-image-jpeg";
761-
ele["path"] = @"*.jpeg";
762-
ele["verb"] = "GET";
763-
ele["type"] = @"System.Web.Handlers.TransferRequestHandler";
764-
ele["preCondition"] = "integratedMode,runtimeVersionv4.0";
765-
ele["responseBufferLimit"] = 0;
766-
767-
handlersCollection.Add(ele);
768-
}
769-
catch (Exception ex)
770-
{
771-
MessageBox.Show("jpegHandlerMissing ex is : " + ex.Message + "stacktrace : " + ex.StackTrace);
784+
785+
if (jpegHandlerMissing) {
786+
try
787+
{
788+
ConfigurationElement ele = handlersCollection.CreateElement("add");
789+
ele["name"] = "get-image-jpeg";
790+
ele["path"] = @"*.jpeg";
791+
ele["verb"] = "GET";
792+
ele["type"] = @"System.Web.Handlers.TransferRequestHandler";
793+
ele["preCondition"] = "integratedMode,runtimeVersionv4.0";
794+
ele["responseBufferLimit"] = 0;
795+
796+
handlersCollection.Add(ele);
797+
}
798+
catch (Exception ex)
799+
{
800+
MessageBox.Show("jpegHandlerMissing ex is : " + ex.Message + "stacktrace : " + ex.StackTrace);
801+
}
772802
}
773803

774804
serverManager.CommitChanges();

0 commit comments

Comments
 (0)