Yeah it's a much different world than corporate clients that's for sure. The precautionary steps required are ten-fold in order to prevent an avalanche of false positive bug reports and associated problems.
I say, bind 'em up and lock 'em down. If your product still runs then your user will have a pleasant experience and be grateful to you, otherwise barf early and often otherwise the user will falsely cuss you like they do Microsoft.
Ayende, not surprisingly, at the early stage of NDepend I wrote a similar post. But we try to go further by making sure all assemblies are here with all correct version in all correct location:
> Email-style angle brackets
> are used for blockquotes.
> > And, they can be nested.
> #### Headers in blockquotes
>
> * You can quote a list.
> * Etc.
Horizontal Rules
Three or more dashes or asterisks:
---
* * *
- - - -
Manual Line Breaks
End a line with two or more spaces:
Roses are red,
Violets are blue.
Fenced Code Blocks
Code blocks delimited by 3 or more backticks or tildas:
```
This is a preformatted
code block
```
Header IDs
Set the id of headings with {#<id>} at end of heading line:
## My Heading {#myheading}
Tables
Fruit |Color
---------|----------
Apples |Red
Pears |Green
Bananas |Yellow
Definition Lists
Term 1
: Definition 1
Term 2
: Definition 2
Footnotes
Body text with a footnote [^1]
[^1]: Footnote text here
Abbreviations
MDD <- will have title
*[MDD]: MarkdownDeep
FUTURE POSTS
Partial writes, IO_Uring and safety - 15 hours from now
Configuration values & Escape hatches - 4 days from now
What happens when a sparse file allocation fails? - 6 days from now
NTFS has an emergency stash of disk space - 8 days from now
Challenge: Giving file system developer ulcer - 11 days from now
And 4 more posts are pending...
There are posts all the way to Feb 17, 2025
RECENT SERIES
Challenge
(77): 20 Jan 2025 - What does this code do?
Answer
(13): 22 Jan 2025 - What does this code do?
Comments
Yeah it's a much different world than corporate clients that's for sure. The precautionary steps required are ten-fold in order to prevent an avalanche of false positive bug reports and associated problems.
I say, bind 'em up and lock 'em down. If your product still runs then your user will have a pleasant experience and be grateful to you, otherwise barf early and often otherwise the user will falsely cuss you like they do Microsoft.
I don't think you should do that - simply close the app without any notification for the user.
You should output a message telling a user why you are closing.
Krzysztof,
The Assert is also responsible for alerting the user
Ayende, not surprisingly, at the early stage of NDepend I wrote a similar post. But we try to go further by making sure all assemblies are here with all correct version in all correct location:
codebetter.com/.../...tallation-in-production.aspx
Yip, I've done similar assertions, as well as doing permission assertions.
e.g. Try running NHProf under Intranet/Internet Zone policies.
Hmm wouldn't reflector + deblector + reflexil make it trivial to bypass this? or i'm missing something?
Set,
Please read it.
Then guess about why I need it
Ahh nevermind i thought it was some kind of assert to "protect" your files in addition to your licensing scheme. I should go to sleep :x
I wouldn't bother at all to be honest. If someone is going to delete files I would let the app crash.
Maybe the unhandled exception dialog could suggest re-installing the file and if the problem persists they should send the bug report on to you.
Peter,
You do realize how many support calls a good error can save you?
Oren - yes I do realise how many support calls a good error can save :-)
mrpmorris.blogspot.com/.../...ance-of-clarity.html
So you realize why it is important to try to reduce them :-)
Comment preview