我在16位的x86汇编工作.我有三个文件需要共享'它们之间的变量' - 基本上,数据段.当我编译它们时,如下所示:
ml file1.asm,file2.asm,file3.asm io.lib
Run Code Online (Sandbox Code Playgroud)
他们无法访问彼此的变量如何共享数据段,从而共享文件之间的变量?谢谢!
我构建了一个ActionFilter来在我的MVC站点上托管一个页面命中记录器,并且需要将一些值保存到cookie中.我使用以下代码编写cookie:
public class LogRequestAttribute : ActionFilterAttribute, IActionFilter
{
void IActionFilter.OnActionExecuting(ActionExecutingContext filterContext)
{
if(filterContext.HttpContext.Request.UserHostAddress != "127.0.0.1")
ThreadPool.QueueUserWorkItem(delegate
{
string adid = filterContext.HttpContext.Request.QueryString["adid"] != null
? (string)filterContext.HttpContext.Request.QueryString["adid"] : string.Empty;
if (!String.IsNullOrEmpty(adid))
{
HttpCookie cookie = new HttpCookie("adid", adid);
cookie.Expires = DateTime.Now.AddDays(30);
filterContext.HttpContext.Response.Cookies.Add(cookie);
}
DomainModel.Concrete.SqlPageHitActivity logger
= new DomainModel.Concrete.SqlPageHitActivity(
System.Configuration.ConfigurationManager.ConnectionStrings["TrackingConnectionString"].ConnectionString);
DomainModel.Entities.PageHitActivity hit = new DomainModel.Entities.PageHitActivity
{
AdIdentifier = filterContext.HttpContext.Response.Cookies["adid"].Value == null ? string.Empty : filterContext.HttpContext.Response.Cookies["adid"].Value,
Authenticated = filterContext.HttpContext.Request.IsAuthenticated,
Browser = filterContext.HttpContext.Request.UserAgent,
CookieId = string.Empty,
Parameters = string.Empty,
Referer = filterContext.HttpContext.Request.UrlReferrer == null ? …Run Code Online (Sandbox Code Playgroud) 对我来说,为方法做出方便的重载是很常见的.这是我可能会做的一个例子:
public void Encode(string value) {
Encode(value, DefaultEncoding);
}
public void Encode(string value, Encoding encoding) {
// ...
}
Run Code Online (Sandbox Code Playgroud)
我开始更加关注单元测试,这样的测试方法引入了一些障碍,我不确定我是否相信自己单独进行测试.第一个也是最重要的问题是我是否应该重复两个重载的测试.例如,如果value为null ,则两个方法都应该抛出ArgumentNullException ; 是否更正确地认识到可能存在不同的逻辑并编写两个测试,或者更好地假设方便过载没有自己的逻辑?
我也遇到了次要问题.我的命名方案与Roy Osherove的相同:"MemberName_State_ExpectedResult".如果我复制测试,那么我会在没有引入一些古怪的命名约定的情况下发生冲突.如果复制测试,你如何处理?
我有一个工作线程,我想做一点任务,然后暂停并等待来自另一个线程的"ok,continue"命令,然后暂停和等待等.
用例是:控制对象是一个视图,我想显示有关工作线程内部发生的事情的信息,并允许我通过工作人员"单步"完成它的工作.
我工作中相当丑陋和沉重的事情是:
NSLog(@"paused");
paused = YES;
while (paused)
{
[NSThread sleepForTimeInterval:0.25];
}
NSLog(@".. continuing");
Run Code Online (Sandbox Code Playgroud)
......但我不禁想到必须有一个更好的方式,可能涉及NSLocks,或者其他一些.
评论,提示建议?
谢谢!
我需要找到jpeg(jfif)图像的大小.图像不会保存为独立文件,因此我无法使用GetFileSize或任何其他此类API(图像放置在流中,除了通常的jpeg/jfif标头之外不存在其他标头(s) ).
我做了一些研究,发现JPEG图像由不同的部分组成,每个部分以帧标记(0xFF; XX)开始,以及该帧的大小.使用此信息,我能够从文件中解析大量信息.
问题是我无法找到压缩数据的大小,因为似乎压缩数据没有帧标记.此外,似乎压缩数据遵循SOS(FF; DA)标记,并且图像以图像结束(EOI)(FF; D9)标记结束.
实现这一目标的一种方法是从一个字节到另一个字节搜索EOI标记,但我认为压缩数据可能包含这个字节组合,对吧?
您是否知道一种简单而正确的方法来查找图像的总大小?(我非常喜欢一些没有任何外部库的代码/想法:))?
基本上,我需要图像开始(SOI-FFE0)和图像结束(EOI-FFD9)之间的距离(以字节为单位).
所有其他的mutator都在JDK 1.1中被弃用了,那么为什么还原来setTime()呢?当然java.util.Calendar- 操作日期的正确方法 - 可以java.util.Date使用java.util.Date(long)构造函数根据需要创建新实例吗?
可能重复:
程序员友好的搜索引擎?
Google对使用$和#等字符搜索逐字字符串不友好.是否有搜索引擎支持搜索逐字字符串?
假设您希望Greasemonkey脚本与Safari和Chrome兼容.
而在Firefox中,Greasemonkey脚本仅在DOM准备就绪时运行.Chrome,Safari和Opera似乎在DOM准备好之前运行Greasemonkey脚本.
所以我要找的是一个解决方案,它只会在页面上运行一个监听器,等待DOM加载/就绪事件,然后接收该事件,然后运行脚本的其余部分.如果他们使用的浏览器是Chrome,Safari或Opera.如果他们使用的是Firefox,只需立即运行脚本,而不必担心事件监听器.
如何编码?
@NV
感谢NV,您知道该脚本是否也与Google Chrome兼容?
请问代码
(function(){
// Code here run after 'load' event in all browsers.
})();
Run Code Online (Sandbox Code Playgroud)
还可以在Google Chrome上运行DOM吗?
每当我尝试将列表设置为在IN表达式中使用的参数时,我都会得到一个Illegal参数异常.互联网上的各种帖子似乎表明这是可能的,但它肯定不适合我.我正在使用Glassfish V2.1和Toplink.
有没有其他人能够让这个工作,如果是这样的话怎么样?
这是一些示例代码:
List<String> logins = em.createQuery("SELECT a.accountManager.loginName " +
"FROM Account a " +
"WHERE a.id IN (:ids)")
.setParameter("ids",Arrays.asList(new Long(1000100), new Long(1000110)))
.getResultList();
Run Code Online (Sandbox Code Playgroud)
以及堆栈跟踪的相关部分:
java.lang.IllegalArgumentException: You have attempted to set a value of type class java.util.Arrays$ArrayList for parameter accountIds with expected type of class java.lang.Long from query string SELECT a.accountManager.loginName FROM Account a WHERE a.id IN (:accountIds). at oracle.toplink.essentials.internal.ejb.cmp3.base.EJBQueryImpl.setParameterInternal(EJBQueryImpl.java:663) at oracle.toplink.essentials.internal.ejb.cmp3.EJBQueryImpl.setParameter(EJBQueryImpl.java:202) at com.corenap.newtDAO.ContactDaoBean.getNotificationAddresses(ContactDaoBean.java:437) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.sun.enterprise.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1011) at com.sun.enterprise.security.SecurityUtil.invoke(SecurityUtil.java:175) at com.sun.ejb.containers.BaseContainer.invokeTargetBeanMethod(BaseContainer.java:2920) …
我试图用这样的mingw调用popen():
#define RUN_COMMAND "\"C:\\Program Files\\CA\\BrightStor ARCserve Backup\\ca_qmgr.exe\" \"-list\""
int main() {
outputPointer = popen(RUN_COMMAND, "r");
...
}
Run Code Online (Sandbox Code Playgroud)
但我无法让它发挥作用.我认为这是一个引用噩梦...