尝试在Xcode中验证我的应用存档(尝试过多个应用,多个存档等)时,我不断收到此错误消息.到底是怎么回事?我已经尝试了一切,包括重新启动计算机,检查互联网连接,重建档案,尝试以前工作过的旧档案,一起尝试不同的应用程序...... Apple方面有什么问题吗?
编辑从Application Loader添加了相同错误消息的类似屏幕截图


更新 Apple必须修复一些东西,因为一切都在几个小时前开始工作.我认为,因为它没有立即修复所有人的情况,它必须是他们正在为不同帐户批量修复的东西?除了等待的时间之外,我没有提供任何解决方案 - 我没有做任何不同的事情,它只是开始工作(我每隔一小时都会继续尝试超过2天),直到它起作用.

我已经根据我之前的问题中的答案构建了一个解决方案.Rails 3 for Rails 3中的特定控制器的重定向记录器输出.它工作得很好但是现在我尝试将相同的基于中间件的解决方案应用于Rails 4项目但是那里是一些差异保持相同的解决方案工作.
Rails 3解决方案:
module MyApp
class LoggerMiddleware
REPORTS_API_CONTROLLER_PATH = %r|\A/api/v.*/reports.*|
REPORTS_API_CONTROLLER_LOGFILE = "reports_controller.log"
def initialize(app)
@app = app
@logger = Rails::logger
.instance_variable_get(:@logger)
.instance_variable_get(:@log)
@reports_api_controller_logger = Logger.new(
Rails.root.join('log', REPORTS_API_CONTROLLER_LOGFILE),
10, 1000000)
end
def call(env)
Rails::logger
.instance_variable_get(:@logger)
.instance_variable_set(:@log,
case env['PATH_INFO']
when REPORTS_API_CONTROLLER_PATH then
@reports_api_controller_logger
else
@logger
end
)
@app.call(env)
end
end
end
Rails.application.middleware.insert_before Rails::Rack::Logger, MyApp::LoggerMiddleware
Run Code Online (Sandbox Code Playgroud)
在上面:
Rails.getger = Rails 3 getterRails::logger.instance_variable_get(:@logger).instance_variable_get(:@log)
用于Rails.logger的Rails 3 setter(设置为@my_logger)=Rails::logger.instance_variable_get(:@logger).instance_variable_set(:@log,@my_logger)
我立即注意到的一件事是,在Rails 4中,上面的Rails::logger.instance_variable_get(:@logger).instance_variable_get(:@log)回报为零.
检查Rails 4控制台,我确实看到了Rails.instance_variable_get(:@logger) …
我们有一个.NET C#应用程序,它使用Adobe ActiveX控件.对于Adobe Acrobat和Adobe Reader的版本7-10,要使用此控件,您需要打开"在浏览器中显示PDF"设置.您可以使用GUI从GUI手动执行此操作
Preferences > Internet > Display PDFs in browser
Run Code Online (Sandbox Code Playgroud)
或通过直接设置注册表设置以编程方式
HKEY_CURRENT_USER\Software\Adobe\(Product Name)\(Version)\Originals
"bBrowserIntegration"=dword:00000001
Run Code Online (Sandbox Code Playgroud)
其中包含SDK参考http://www.adobe.com/devnet-docs/acrobatetk/tools/PrefRef/Windows/Originals.html#BrowserIntegration.当我们的客户拥有Adobe Reader或Adobe Acrobat的7-10版本时,我们的应用程序一直在以编程方式设置此注册表值.上面的链接还表明bBrowserIntegration在XI(11)中不推荐使用此注册表项.旧版注册表路径仍然存在于新版本中,即:
HKEY_CURRENT_USER\Software\Adobe\(Product Name)\(Version)\Originals
Run Code Online (Sandbox Code Playgroud)
但是,bBrowserIntegration正如文档所示,不再有密钥,它已被弃用.
只要启用了"在浏览器中显示PDF",Adobe ActiveX Control似乎仍可以正常工作,就像它一直有效一样.
对于版本XI(11)和DC,有两个已发布的链接,清楚地显示如何手动实现此目的:
XI (11): https://helpx.adobe.com/acrobat/11/using/display-pdf-browser-acrobat-xi.html
DC (current): https://helpx.adobe.com/acrobat/using/display-pdf-in-browser.html
Run Code Online (Sandbox Code Playgroud)
在测试Adobe Reader DC时,如果我们没有完成在浏览器中为新客户安装启用显示PDF的步骤,那么我们的应用程序将抛出一个COM error,然后如果我们按照上面链接中的说明启用设置,一切正常正如我们的应用程序预期的那样,它使用Adobe ActiveX控件呈现PDF,这与我们期望在未设置注册表设置时在旧版本(7-10)中看到的类似(请参阅我之前的旧帖子和我自己的解决方案)如何逐步诊断原因,修复或解决与Adobe ActiveX/COM相关的错误0x80004005?).
因此,问题仍然是,通过相应地设置注册表设置bBrowserIntegration,对于今天的XI或DC中的手动过程或等同于7-10中的手动过程,预期的程序等效是什么.我们希望能够打开它,然后在我们的应用程序结束时将其重置为之前的设置(因此我们的应用程序不会因为我们的应用程序需要而强制用户保留设置)这就是我们今天所做的7 -10.
我似乎无法在线找到任何从开发人员角度启用/禁用浏览器集成的参考资料,因此我们的应用程序可以继续使用ActiveX控件而不会显示COM错误,从而强制用户手动更改此错误.
首要任务是了解DC的解决方案,因为这代表了Adobe Acrobat/Reader的新范例.
我已经构建了一个C#.NET应用程序,它使用Adobe ActiveX控件来显示PDF.
它依赖于随应用程序一起提供的几个DLL.这些DLL与计算机上安装的本地安装的Adobe Acrobat或Adobe Acrobat Reader交互.
这个应用程序已被一些客户使用,并且几乎适用于所有用户(我检查本地计算机是否至少运行了Acrobat或Reader的版本9).
我发现在尝试加载时(当加载activex控件时)应用程序返回错误消息"错误HRESULT E_FAIL已从调用COM组件返回"的3种情况.
我已经检查了这些用户的其中一台机器,并且安装了Acrobat 9并且经常使用它没有任何问题.看来Acrobat 7和8一次安装,因为它们与Acrobat 9一起在注册表中有条目.
我不能在本地重现这个问题,所以我不确定到底要走哪个方向.
堆栈跟踪顶部的错误是:System.Runtime.InteropServices.COMException(0x80004005):错误HRESULT E_FAIL已从对COM组件的调用返回.
对此错误的一些研究表明它是一个注册表问题.
有没有人知道如何修复或解决这个问题,或者确定如何找到问题的核心根?
错误消息的完整内容如下:
System.Runtime.InteropServices.COMException(0x80004005):错误HRESULT E_FAIL已从对COM组件的调用返回.System.Windows.Forms.AxHost.CreateWithLicense的System.Windows.Forms.AxHost.CreateWithoutLicense(Guid clsid)上的System.Windows.Forms.UnsafeNativeMethods.CoCreateInstance(Guid&clsid,Object punkOuter,Int32 context,Guid&iid)(字符串许可证) System.Windows.Forx.AxHost上的System.Windows.Forms.AxHost.GetOcxCreate()处的System.Windows.Forms.AxHost.CreateInstance()处的System.Windows.Forms.AxHost.CreateInstanceCore(Guid clsid)中的Guid clsid) System.Windows上System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)的System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)上的System.Windows.Forms.AxHost.CreateHandle()处的.TransitionUpTo(Int32状态) .Asms.AxHost.EndInit()在AcrobatChecker.InitializeComponent()AcrobatChecker.Viewer..ctor()在AcrobatChecker.Form1.btnViewer_Click(Object sender,EventArgs e)的System.Windows.Forms.Control.OnClick(EventArgs) e)System.Wind上的System.Windows.Forms.Button.OnClick(EventArgs e)在System.Windows的System.Windows.Forms.Control.WndProc(Message&m)处的System.Windows.Forms.Control.WmMouseUp(Message&m,MouseButtons按钮,Int32单击)处的ows.Forms.Button.OnMouseUp(MouseEventArgs mevent). System.Windows.Fornd.WandProc(Message&m)位于System.Windows.Fornd.Bandton.WndProc(Message&m)的System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message&m)at System.Windows.Forms.Control.ControlNativeWindow. System.Windows.Forms.NativeWindow.Callback的WndProc(Message&m)(IntPtr hWnd,Int32 msg,IntPtr wparam,IntPtr lparam)
我们有一个rails应用程序设置,它使用devise&omniauth允许通过facebook身份验证登录.我们还有一个移动应用程序,当前使用http身份验证通过传递用户名和密码或传入http身份验证令牌来登录rails应用程序.到目前为止,这一切都很有效.
移动应用程序还具有与Facebook本身进行身份验证的能力,并直接在自己和Facebook之间接收用户facebook令牌.
我想弥合这个差距,以便如果用户通过Facebook从移动应用程序登录并拥有他们的facebook令牌,允许将facebook令牌用作rails app上的身份验证,就好像他们已经从facebook通过浏览器.
最终结果是移动应用程序可以通过以下方式登录用户:
1)用户名/密码或2)http认证令牌或3)omniauth(facebook)令牌
此外,在3)的情况下,如果用户尚未存在于rails应用程序中,则需要创建用户 - 现在已经使用浏览器端身份验证执行此操作,因此可能无需执行任何操作.
如何在设计构造中最好地实现这一目标?
我有一个rails应用程序,我将created_at存储为datetime(标准).我正在构建一个搜索表单,我发现我必须使用find_by_sql来执行一些复杂的子查询.表单有一个日期范围(没有时间)来搜索items_at字段的项目.
我发现的问题是,如果我只传入范围的日期字符串来查询...
... status_changes.created_at between '2009-01-24' and '2009-03-12' ...
Run Code Online (Sandbox Code Playgroud)
我收回了创建日期为2009-01-23 17:10:39 -0800的记录,因为它存储在数据库中,如2009-01-24 01:10:39(UTC)
我如何解决这个问题,以便结果不会返回有问题的记录?
我似乎需要将日期范围转换为UTC特定的,或者告诉find_by_sql根据当前时区进行搜索,而不是将列读取为utc ...
任何接受者?
约翰
我们希望有一组控制器,我们将记录器输出从所有操作和下游方法路由到单独的日志文件.这是一个Rails 3项目.在Rails 2中,我们通过重新定义"logger"方法来实现这一点,但在Rails 3中,记录的方式是使用"Rails.logger".我尝试过
Rails::logger = Logger.new(File.join(Rails.root, 'log', "reports_controller.log"), 10, 1000000)
Run Code Online (Sandbox Code Playgroud)
在控制器的顶部,但只有在操作中专门使用Rails.logger的特定情况才会发送到指定的日志文件,控制器的所有默认日志输出仍然路由到主日志文件.
我们如何将特定控制器的所有日志输出路由到特定日志文件以包含所有默认控制器输出?
默认情况下,控制器输出,我指的是从入站请求的最开始处开始的所有消息
Started POST "/api/v1/reports.json" for 10.XXX.XX.XX at 2015-03-07 01:30:22 +0000
Processing by Api::V1::ReportsController#create as JSON
Parameters: {"report"=>{"cloud_file_path"=>"report.zip", "company_id"=>nil, "created_at"=>"2015-03-07T01:30:17Z", "type_id"=>"2", "updated_at"=>"2015-03-07T01:30:17Z", "master"=>"1"}}
Run Code Online (Sandbox Code Playgroud)
以及控制器中的入站请求和出站响应可能跟随的所有日志输出.
基本上我希望报告控制器的所有日志记录都在reports_controller.log中,我不希望报告控制器的任何消息显示在主日志中(即生产中的production.log)
更新:
感谢@ mudasobwa对他的回答和聊天的帮助,我能够使用中间件解决这个问题,因为他的答案描述了(尽管我必须将我的insert_before更改为Rails :: Rack :: Logger之前)
他为我解决了这个问题的修改后的答案就在下面而且它还存在 config/initializers/logger_middleware.rb
module MyApp
class LoggerMiddleware
REPORTS_API_CONTROLLER_PATH = %r|\A/api/v.*/reports/.*|
REPORTS_API_CONTROLLER_LOGFILE = "reports_controller.log"
def initialize(app)
@app, @logger = app, Rails::logger.instance_variable_get(:@logger).instance_variable_get(:@log)
@reports_api_controller_logger = Logger.new(Rails.root.join('log', REPORTS_API_CONTROLLER_LOGFILE), 10, 1000000)
end
def call(env)
Rails::logger
.instance_variable_get(:@logger)
.instance_variable_set(:@log,
case env['PATH_INFO']
when REPORTS_API_CONTROLLER_PATH then …Run Code Online (Sandbox Code Playgroud) 在从选择结果中创建具有动态创建和定义的列的表时,如何像在创建具有列定义的表时一样指定排序规则?
IE
CREATE TABLE IF NOT EXISTS my_table (
SELECT * FROM (
SELECT ....
) )
Run Code Online (Sandbox Code Playgroud)
上面创建了带有动态列的表就好了,但它没有使用我想要的排序规则。它使用的是 utf8_general_ci,我希望它是 utf8_unicode_ci。
这下面不起作用
CREATE TABLE IF NOT EXISTS my_table (
SELECT * FROM (
SELECT ....
) ) DEFAULT CHARSET=utf8 DEFAULT COLLATE utf8_unicode_ci;
Run Code Online (Sandbox Code Playgroud)
它给出错误消息,指示命令在此位置无效。
我意识到上述建议无效,那么实现这一目标的方法是什么?我试过设置数据库排序规则,认为这是为所有创建的表设置数据库的默认值,但它的行为似乎并非如此 - 或者我在进行ALTER数据库排序规则时实际上并没有设置数据库的默认值。有没有办法为表设置默认值,以便上面的第一个代码块使用所需的排序规则创建表?
SELECT...上述代码块中的结果是指使用case/when语句、字符串解析和函数结果进行的各种条件/逻辑值设置——它不仅仅是从另一个已定义列的表中一对一地选择列,因此它不像就像定义其他表的列一样简单。
我已经尝试使用提前设置数据库排序规则,ALTER DATABASE my_db DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_unicode_ci但这不会改变结果。utf8_general_ci从选择(从选择结果动态定义的列)创建表时,仍会使用创建表(以及表中的列)
我们正在使用正式的MediaWiki Docker映像,并希望能够添加其他MediaWiki扩展。
问题:
LocalSettings.php?docker网站上的此链接是指添加PHP扩展名和库,但是如果要添加MediaWiki特定的扩展名是相同的答案,这对我来说还是不清楚的,因为它确实说了“ PHP扩展名”。还是该文档页面实际上应该说“ MediaWiki Extensions”,即使这意味着它们是用PHP编写的?
这是我们当前用于mediawiki的docker-compose文件条目:
mediawiki:
image: mediawiki
container_name: mediawiki_production
mem_limit: 4g
volumes:
- /var/www/mediawiki/uploads:/var/www/html/uploads
- /var/www/mediawiki/LocalSettings.php:/var/www/html/LocalSettings.php
environment:
- MEDIAWIKI_DB_NAME=
- MEDIAWIKI_DB_HOST=
- MEDIAWIKI_DB_USER=
- MEDIAWIKI_DB_PASSWORD=
- VIRTUAL_HOST=wiki.exmaple.com
- TERM=xterm
restart: always
network_mode: bridge
Run Code Online (Sandbox Code Playgroud)
我们正在考虑的扩展并不是最初的官方映像的一部分(但希望在以后提供可扩展的解决方案):
使用官方mediawiki映像作为其“ FROM”以包含mediawiki扩展和更新的docker-compose(如果需要两者)以添加mediawiki扩展的下游docker映像的任何示例都将有所帮助。如果mediawiki扩展本身依赖于基本图像中尚未包含的php扩展或库,或者添加不依赖任何其他php扩展或库的mediawiki扩展,则最好解释一下需要更改的内容。
对于默认(未指定)的此设置search_data:
class Item < ActiveRecord::Base
searchkick
has_many :quantities, dependent: :destroy
scope :search_import, -> { includes(:quantities) }
end
Run Code Online (Sandbox Code Playgroud)
通过运行导入所有数据库记录时Item.reindex,每个"批处理"急切按预期加载所有项目ID的数量.
但是,如果我想使用search_data包含相关模型数据的方法指定索引模型文档的方式与默认属性不同,如下所示:
class Item < ActiveRecord::Base
searchkick
has_many :quantities, dependent: :destroy
def search_data
{
part_number: standard_part_number,
category_id: category_id.to_i,
content_source_name: content_source_name,
standard_price: standard_price.to_i,
locations: quantities.map {|q| [q.location_code,
quantity: q.value.to_i,
bins: q.location_bins]
}.to_h
}
end
scope :search_import, -> { includes(:quantities) }
end
Run Code Online (Sandbox Code Playgroud)
我在quantities使用map来定义一个locations属性的操作,返回导入使用Item.reindex我看到它不仅渴望加载所有相关的quantities每个批次,但它也会再次加载所有quantities每次item点击数据库为每个item记录它是索引. …