Hi - I have a function that uploads a .mpp file via http. Running on one test box, it functions perfectly. Running on another, MS Project cannot open the file. I've viewed the HTTP logs and the only difference I can see between the successful and the unsuccessful POST is that the successful one contains the Content-Length parameter. Why would the same exact code post the Content-Length on one box and not on another? Here are the POST requests. This one works:
POST http://192.168.1.20:58080/pce8/admin Referer: http://192.168.1.20:58080/pce8/admin Content-Length: 2464200 Content-Type: multipart/form-data; boundary=xYzZY --xYzZY Content-Disposition: form-data; name="op" scheduleOptionsFcn --xYzZY Content-Disposition: form-data; name="op2" submit --xYzZY Content-Disposition: form-data; name="schedName" proj2 --xYzZY Content-Disposition: form-data; name="projValue" 1 --xYzZY Content-Disposition: form-data; name="updatePolicy" 7 --xYzZY Content-Disposition: form-data; name="cleanPolicy" 6 --xYzZY Content-Disposition: form-data; name="maxUpdateAge" 365 --xYzZY Content-Disposition: form-data; name="deactivated" FALSE --xYzZY Content-Disposition: form-data; name="mppFileName" C:\Testbots\unit_test_data\1200task_A_Schedule.mpp --xYzZY Content-Disposition: form-data; name="deactivateDate" --xYzZY Content-Disposition: form-data; name="mppFile"; filename="1200task_A_S +chedule.mpp" Content-Length: 2463232 Content-Type: application/vnd.ms-project (begin binary content)
This one doesn't work:
POST http://192.168.1.20:58080/pce8/admin Referer: http://192.168.1.20:58080/pce8/admin Content-Length: 2464175 Content-Type: multipart/form-data; boundary=xYzZY --xYzZY Content-Disposition: form-data; name="op" scheduleOptionsFcn --xYzZY Content-Disposition: form-data; name="op2" submit --xYzZY Content-Disposition: form-data; name="schedName" proj1 --xYzZY Content-Disposition: form-data; name="projValue" 1 --xYzZY Content-Disposition: form-data; name="updatePolicy" 7 --xYzZY Content-Disposition: form-data; name="cleanPolicy" 6 --xYzZY Content-Disposition: form-data; name="maxUpdateAge" 365 --xYzZY Content-Disposition: form-data; name="deactivated" FALSE --xYzZY Content-Disposition: form-data; name="mppFileName" C:\Testbots\unit_test_data\1200task_A_Schedule.mpp --xYzZY Content-Disposition: form-data; name="deactivateDate" --xYzZY Content-Disposition: form-data; name="mppFile"; filename="1200task_A_S +chedule.mpp" Content-Type: application/vnd.ms-project (binary content)
The functioning box has Windows 2000 Server, the failing box runs Windows 2003 Server. They run identical installations of Perl, have the same libraries, etc. Does anyone know of this problem and have any solutions? My preference is to host my program on the 2003 Server box, but I can't with this issue in the way. Many thanks - PlugNPlay

In reply to file upload fails on some machines by plugNPlay

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.