#8317
djfield
Participant

    Hi,

    Just so you know we hacked around the attachment checker example and came up with the code below. Its quick and dirty but it appears to do the job:

     
    '1000000 = 1mb, 20000000 = 20mb
    
    Const miWarnSize = 20000000
    
    sub Main(Client, GWEvent)
    
      Dim Msg
    
      Set Msg = GroupWise.ComposingItem
      if Msg is Nothing then
        on error resume next
        Set Msg = Client.ClientState.CommandMessage
        if not Msg is Nothing then
          CheckAttachments(Msg.MessageID)
        end if
      else
        CheckAttachments(Msg.MessageID)
      end if
      Set Msg = nothing
    
    end Sub
    
    Sub CheckAttachments(MessageID)
    
       Dim msName
       Dim msSize
    
       for x = 0 to groupwise.ItemAttachmentGetCount("X00") -1
          msName = groupwise.ItemAttachmentGetName("X00", x)
          if msName <> "" then
             Do Until InStr(1, msName, "") = 0
                  msName = Mid(msName, InStr(1, msName, "") + 1)
              Loop
          end if
          miSize = Utilities.FileSystem.GetSizeOfFile(groupwise.ItemAttachmentGetName("X00", x))
          msSize = cstr(round(miSize/1000000))
          if Utilities.FileSystem.GetSizeOfFile(groupwise.ItemAttachmentGetName("X00", x)) > miWarnSize then
             CancelSendDlg.CancelSendDlgLabel1.Caption = "The size of attachment " + msName + " is really large @ " + msSize + "mb are you sure you want to send it?"
             GroupWise.CancelGroupWiseEvent = CancelSend
          end if
       next
    
    end sub
    
    ' Ask the user if they want to cancel the sending of the item.  Return a boolean
    ' indicating if they wish to cancel or not.
    function CancelSend
      CancelSend = CancelSendDlg.ShowModal = MRCancel
    end function