html email outlook asks to download images - outlook

There may be absolutely no way to do this, and it might also be frowned upon. When I send a html email to outlook, the user is sometimes asked if they want to download the images and sometimes they just load. My first question is why is that? And my second question is, is there a way to prevent outlook from asking and have the images auto download, or is that something only the user can do?

If the images are embedded image attachments, there won't be a prompt.
If the HTML references external images, the message must be stamped with a special property that cannot be transmitted and can only be set locally, either by the end user or programmatically (PR_BLOCK_STATUS property - see an excerpt from [MS-OXOMSG].pdf below.
If you are using Redemption (I am its author), you can set set PR_BLOCK_STATUS property using RDOMail.DownloadPictures property: http://www.dimastr.com/redemption/RDOMail.htm
2.2.1.1 PidTagBlockStatus
Type: PtypInteger32 8
Indicates the user's preference for viewing external content (such as links
to images on an HTTP server) in the message body. A client MAY ignore this
value and always allow or block external content based on other factors
(such as whether the sender is on a safe list). If this property is used,
then the default action is to block the external content. However, if the
value of this property falls within a certain range, then viewing external
content is allowed. The allowed value is computed from
PidTagMessageDeliveryTime: since the sender of a message does not have
knowledge of this value, the sender cannot reliably set PidTagBlockStatus to
the allowed values.
To compute the allowed values, convert the value of
PidTagMessageDeliveryTime to a PtypDouble, floatdate, where the date is
represented as the number of days from midnight, December 30, 1899. Apply
the following formula: result = ((floatdate - floor(floatdate)) * 100000000)
3; where floor(x) returns the largest integer ? x. Convert the PtypDouble
value result to a 32-bit integer computedvalue. Clients SHOULD set
PidTagBlockStatus to computedvalue to allow external content. However, when
determining whether to accept external content, clients SHOULD allow
external content if the absolute value of the difference between
computedvalue and the value of PidTagBlockStatus is 1 or less.

Related

Is it valid to change lpstrFile on CDN_FILEOK via Hook on GetOpenFileName/GetSaveFileName?

Is it valid to change the contents of lpstrFile on CDN_FILEOK via Hook on GetOpenFileName()/GetSaveFileName()?
The reason is that I may need to append additional information to the file name for GetSaveFileName(). The user could enter a generic name like "my file" and the program handles adding information user wouldn't know to add (already part of filter). Then it would check for overwrite and put up a question if okay to overwrite. If not, I can just use the custom data field, but I couldn't find any reference if it's allowed to change the contents of lpstrFile
TIA!!
Depends on your definition of valid. The designers of this API did not intend for you to do this but if it works, it works™. These dialogs will probably not change their internal design ever again since Microsoft have a fair amount of application compatibility to worry about in this area and these dialogs were replaced by the COM based API in Vista+.
My recommendation would be to store the address of your buffer in lCustData as well before calling the Open/Save function and only modify that buffer. The dialog could in theory use its own buffer in some places and there might not be space for you to write anything in those and there is no way to figure out their size.
In practice, there seems to be no problem to play with the buffer behind Windows' back. In the past I have even replaced the actual buffer address with a new bigger memory block when implementing support for multi-file-select.

Signatures with Variables

I am sending a lot of emails based on a signature. There is some information in the signature that I modify manually every time. I am wondering if outlook offers some feature to make it easier.
I tried signatures, it saves a lot of time but it is time consuming to change all the text that is variable every time
What I am expecting is to find the best way to accomplish what I want. Which is having some kind of form where I enter all the variables that outlook would be able to position in the right place (Each field in the form would go to the right place in the message (I am using signatures for now)).
You would have to do that programmatically either when the signature is inserted or when a message is sent.

Returning strings from a PRTG custom sensor

I'm trying to develop a custom VBScript sensor for the PRTG monitoring tool and the interface seems fairly simple, returning just a 32-bit integral value and a status string such as with:
WScript.echo "0:January 23, 2015"
However, only the integer appears on the front screen, you have to go into the sensor detail screen itself to get the descriptive text.
Now I think you can generate textual data to be displayed as the result (rather than the descriptive text) since the SSL security check sensor displays Only Strong Protocols Possible:
I tried returning the date as an integer along the lines of 20150123 but that has two problems:
It displays it "nicely" so you get 20,150,123 which looks nothing like a date; and
Being an integer, it maintains minima, maxima, averages and alarm levels, which seems a little silly given it'll always be above twenty million (assuming it uses current dates).
So, my question is: how do you create and code up a custom sensor that can return a string rather than just an integer, float or counter, which seem to be the only three options available?
You should look at the SSH sensor and see if you can do something similar with the sensor you are trying to use. For the SSH sensor you return data in the format of returncode:value:message. Return code 0 is OK, 1-4 are errors, value is a 64-bit integer, and message can be a string. Take a look at this PRTG forum post
Since the value you are returning is a date, lookups won't help you much but I'm going to mention them anyways because if you look at some of the built-in sensor types that is how they get string messages. Specifically the SSL Security Rating channel. If you click on the gear for a Value channel one of the fields is Value Lookup. There are lots of preconfigured lookups, but you can also create your own. Here's a relevant PRTG forum post

Standards for software functional testing [closed]

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
What documented standards for functional testing exists?
I know about the "Standard for Software Component Testing" (BS 7925-2), which is a unit testing standard.
I need something similar but for functional testing.
Maybe you should search through the huge amount of IEEE standards. Also, check if the ISO/IEC 9126-1:2001 standard will work for you.
functinal testing standards makes life easier for use, because these standards can be converted into checklist and application can be tested easily against the checklist.
LINKS
Check that the link takes you to the page it said it would.
Ensure to have no orphan pages (a page that has no links to it)
Check all of your links to other websites
Are all referenced web sites or email addresses hyper-linked?
If we have removed some of the pages from our own site, set up a custom 404 page that redirects your visitors to your home page (or a search page) when the user try to access a page that no longer exists.
Check all mailto links and whether it reaches properly
FORMS
Acceptance of invalid input
Optional versus mandatory fields
Input longer than field allows
Radio buttons
Default values on page load/reload(Also terms and conditions should be disabled)
Is Command Button can be used for HyperLinks and Continue Links ?
Is all the datas inside combo/list box are arranged in chronolgical order?
Are all of the parts of a table or form present? Correctly laid out? Can you confirm that selected texts are in the "right place?
Does a scrollbar appear if required?
DATA VERIFICATION AND VALIDATION
Is the Privacy Policy clearly defined and available for user access?
At no point of time the system should behave awkwardly when an invalid data is fed
Check to see what happens if a user deletes cookies while in site
Check to see what happens if a user deletes cookies after visiting a site
DATA INTEGRATION
Check the maximum field lengths to ensure that there are no truncated characters?
If numeric fields accept negative values can these be stored correctly on the database and does it make sense for the field to accept negative numbers?
If a particular set of data is saved to the database check that each value gets saved fully to the database. (i.e.) Beware of truncation (of strings) and rounding of numeric values.
DATE FIELD CHECKS
Assure that leap years are validated correctly & do not cause errors/miscalculations.
Assure that Feb. 28, 29, 30 are validated correctly & do not cause errors/ miscalculations.
Is copyright for all the sites includes Yahoo co-branded sites are updated
NUMERIC FIELDS
Assure that lowest and highest values are handled correctly.
Assure that numeric fields with a blank in position 1 are processed or reported as an error.
Assure that fields with a blank in the last position are processed or reported as an error an error.
Assure that both + and - values are correctly processed.
Assure that division by zero does not occur.
Include value zero in all calculations.
Assure that upper and lower values in ranges are handled correctly. (Using BVA)
ALPHANUMERIC FIELD CHECKS
Use blank and non-blank data.
Include lowest and highest values.
Include invalid characters & symbols.
Include valid characters.
Include data items with first position blank.
Include data items with last position blank.

Text difference patch

Am trying to write a piece of code which will allows the user to type text into a textbox which then gets saved on the server. When the user types some more text in the textbox, I want only the difference to be sent to the server.
Is there a difference algorithm for JS which I can use to send only information about the difference. So it should be able to tell the difference between two text boxes essentially.
It could also be language agnostic and I can port it.
Thank you for your time.
UPDATE
In simple words. I have a text area which keeps saving the text in the box every X seconds. Now to save bandwidth I only want it to send the difference from the last saved revision (which I can say put in a variable. Initially this will be empty). Now the JS has to check the difference between the last revision and the current state of the textbox and generate a change list to send to the server.
UPDATE 2
Something like www.etherpad.com
Google DiffMatchPatch has a Javascript implementation, I've used it with much success.
http://code.google.com/p/google-diff-match-patch/
The Python difflib module does this and more. It's very flexible but might be challenging to port to Javascript.
Regarding your update, I'm first wondering why you need to worry about bandwidth. Unless your users are typing a lot of text into an edit box (which has its own usability issues) then there just aren't that many bytes to send. Send the whole text box each time you autosave. Users can't type fast enough to really notice the use of bandwidth.
Or, you could meet halfway. Every time you autosave, check to see whether the user has only added new text to the end compared to the last time. If so, send an "append" type update with just the new text. If the user has gone back and edited anything else, then send a "replace" type update where you send the whole text. This takes care of the common append-only case without severely complicating your implementation.
Instead of calculating a diff between 2 texts, which is difficult,
you could always, while people are editting, record the keystrokes and the caret position in the textbox. If you send this over every now and then (and clean the buffer), the server can playback the exact same sequence.
This code-smells of premature optimization. Perhaps you should implement your solution first and then see about optimizing your transfer rates using diffs. How much text are you looking at? Because the request and response packets are going to be more or less the same size with only a few bytes difference for your message, so the savings could be very minimal.
At the very least, complete your solution without optimization and profile your network traffic using tools like Firebug and then test to see how much worse the performance is with what you would consider to be the maximum text block that could be sent.
Finally, you could always use the TypeWatch JQuery plugin to listen for change events in the textbox. You can set a delay so that once the user finishes typing and the delay elapses, the callback function is triggered. This means that the text will only be sent when the user types something, and only when they are finished typing. This will be significantly more efficient than repeatedly polling the server.
Depends on how far you are ready to go.
You would like to check deltav algorithm, it is used by svn in particular: http://svn.apache.org/repos/asf/subversion/trunk/notes/svndiff

Resources