Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# tedFile.InputStream,文件名,“application/pdf”);谢谢你的意见,诺尼克。我仍然收到“Acrobat无法打开'filename',因为它不是受支持的文件类型,或者因为文件已损坏(例如,它作为电子邮件附件发送,未正确解码)。_C# - Fatal编程技术网

C# tedFile.InputStream,文件名,“application/pdf”);谢谢你的意见,诺尼克。我仍然收到“Acrobat无法打开'filename',因为它不是受支持的文件类型,或者因为文件已损坏(例如,它作为电子邮件附件发送,未正确解码)。

C# tedFile.InputStream,文件名,“application/pdf”);谢谢你的意见,诺尼克。我仍然收到“Acrobat无法打开'filename',因为它不是受支持的文件类型,或者因为文件已损坏(例如,它作为电子邮件附件发送,未正确解码)。,c#,C#,tedFile.InputStream,文件名,“application/pdf”);谢谢你的意见,诺尼克。我仍然收到“Acrobat无法打开'filename',因为它不是受支持的文件类型,或者因为文件已损坏(例如,它作为电子邮件附件发送,未正确解码)。”好的,收到了!你的建议行得通。非常感谢你!!如果你把它作为答案发布,我会把它标记为解决方案。再次感谢! protected void BtnSendAcctClientsEmail_Click(object sender, EventArgs


tedFile.InputStream,文件名,“application/pdf”);谢谢你的意见,诺尼克。我仍然收到“Acrobat无法打开'filename',因为它不是受支持的文件类型,或者因为文件已损坏(例如,它作为电子邮件附件发送,未正确解码)。”好的,收到了!你的建议行得通。非常感谢你!!如果你把它作为答案发布,我会把它标记为解决方案。再次感谢!
protected void BtnSendAcctClientsEmail_Click(object sender, EventArgs e)
    {
        if (uplAcctngAttachment.HasFile)
        {
            HttpPostedFile uploadedFile = uplAcctngAttachment.PostedFile;
            if (IsAcctngFileHeaderValid(uploadedFile))
            {
                var fileName = Path.GetFileName(uplAcctngAttachment.PostedFile.FileName);
                string strExtension = Path.GetExtension(fileName);
                if (strExtension != ".pdf")
                {
                    lblAcctngFileErr.Text = "Please attach pdf files only.";
                    return;
                }
                else
                {
                    lblAcctngFileErr.Text = "";
                }

                try
                {
                    DataSet ds_Emails = new DataSet();

                    constr = ConfigurationManager.ConnectionStrings["CS"].ConnectionString;
                    cn = new SqlConnection(constr);

                    cmd = new SqlCommand("getAcctClientsEmailAddresses", cn);
                    cmd.CommandType = CommandType.StoredProcedure;

                    SqlDataAdapter da_Emails = new SqlDataAdapter(cmd);

                    cn.Open();
                    da_Emails.Fill(ds_Emails);
                    cn.Close();

                    for (int vLoop = 0; vLoop < ds_Emails.Tables[0].Rows.Count; vLoop++)
                    {
                        string name_first = ds_Emails.Tables[0].Rows[vLoop]["contact_fname"].ToString();
                        email = ds_Emails.Tables[0].Rows[vLoop]["email"].ToString();
                        client_id = ds_Emails.Tables[0].Rows[vLoop]["id"].ToString();
                        clientType = "acctng";

                        // Build the Body of the message using name_first into a string and then send mail.

                        //send e-mail
                        string fromAddress = "associates@example.com";
                        string ccAddress = fromAddress;

                        string subject = txtAcctngSubject.Text;
                        string sendEmail = "Dear " + name_first + "," + Environment.NewLine + Environment.NewLine + txtAcctngMessage.Text;
                        sendEmail += Environment.NewLine + Environment.NewLine + "Go to https://www.example.com/crm_removal.aspx?id=" + client_id +
                        "&type=" + clientType + " to be removed from any future communications.";

                        MailAddress fromAdd = new MailAddress(fromAddress, "Associates");
                        MailAddress toAdd = new MailAddress(email);
                        MailMessage eMailmsg = new MailMessage(fromAdd, toAdd);
                        Attachment attachment;
                        attachment = new Attachment(uplAcctngAttachment.PostedFile.InputStream, fileName);

                        eMailmsg.Subject = subject;
                        eMailmsg.Attachments.Add(attachment);
                        eMailmsg.Body = sendEmail;

                        SmtpClient client = new SmtpClient();
                        client.Send(eMailmsg);
                    }
                }

                catch (Exception ex)
                {
                    Response.Write("<script>alert('" + ex.Message + "')</script>");
                    sendingErr = ex.Message;
                    SendErr();
                }
                Response.Redirect("default.aspx", false);
            }
        }
    }

    private bool IsAcctngFileHeaderValid(HttpPostedFile uploadedFile)
    {
        Stream s = uplAcctngAttachment.PostedFile.InputStream;
        StringBuilder buffer = new StringBuilder();
        int value;

        for (int i = 0; i < 2; i++)
        {
            value = s.ReadByte();
            if (value == -1)
            {
                throw new Exception("Invalid file data.");
            }

            buffer.Append(value.ToString());
        }

        /*extension code list for files  
     
         * 7780 = exe
         * 8075 = docx
         * 3780 = pdf
         * 7173 = gif   
         * 255216 = jpg  
         * 13780 = png  
         * 6677 = bmp  
         * 208207 =xls, doc, ppt  
         * 8075 = xlsx,zip,pptx,mmap,zip  
         * 8297 = rar     
         * 01 = accdb,mdb  
         */

        string[] input = { "208207", "8075", "3780", "255216", "13780", "6677" };
        List<string> headers = new List<string>(input);
        return headers.Contains(buffer.ToString());
    }